Algunas (solo algunas) tareas del Cron no se ejecutan

Algunas (solo algunas) tareas del Cron no se ejecutan

de Javier Galindo -
Número de respuestas: 3

Hola a tod@s,

La versión de Moodle que uso es la 2.7.2.

Vengo arrastrando un problema desde hace tiempo que no consigo solucionar. Lo que sucede es que no se envían las notificaciones de email de ningún tipo: ni las de nuevas publicaciones en los foros, ni las de la mensajería interna ni las contraseñas de los nuevos usuarios etc...

He comprobado que el cron está correctamente configurado para ejecutarse, los datos del servidor para el envío de emails están en blanco desde que empezó a funcionar el aula virtual y siempre se han enviado las alertas de emails mediante el PHP del Servidor correctamente. Además he comprobado mediante un programita que el servidor envía emails sin problemas.

He accedido a las Scheduled Tasks y he observado que determinadas tareas, y solo algunas, como por ejemplo la del envío de emails llevan meses sin ejecutarse mientras que otras sí se ejecutan cada vez que ejecuto el Cron.

He accedido también a la configuración de dichas tareas programadas y su programación está correcta, de modo que deberían ejecutarse cada vez que se ejecute el cron. 

La verdad es que no se que puede estar pasando, si es un problema con la versión de Moodle que uso, con el Cron, con el Servidor....

Sabría alguien que puede estar pasando, o por dónde empezar a investigar? (Adjunto pantallazo de las Scheduled Tasks)

Muchas gracias de antemano

Adjunto Screenshot_1.png
Promedio de valoraciones: -
En respuesta a Javier Galindo

Re: Algunas (solo algunas) tareas del Cron no se ejecutan

de Juan Pablo Miranda Aguayo -
Imagen de Moodlers de gran ayuda

Hola Javier,

También tienes las 'Copias de seguridad automáticas' sin actualizarse mediante 'cron' y debe ser porque no las tengas habilitadas.

El mismo ejemplo con 'Insignias del premio'...

Lo que me hace pensar que, aunque el envío de e-mail mediante PHP haya sido positivo con el programita que dices haber utilizado para comprobarlo y que efectivamente PHP haga el envío, es probable que no esté funcionando.

A mí me ha pasado algo similar con plataformas de la misma rama 2.7.x que la tuya. Los envíos de e-mail mediante PHP funcionaron correctamente durante mucho tiempo hasta que, un buen día, dejaron de funcionar. Resulta que eran los servidores de correo (Gmail, Yahoo, Hotmail, etc.) que ya dejaron de recibir correo mediante PHP desde mis servidores (que además, son dedicados). Probé a utilizar una dirección de correo verdadera con un servidor SMTP y todo volvió a la normalidad. Quizá por temas de seguridad han puesto más restricciones.

Igualmente, tenía unos formularios asociados a las plataformas pero no pertenecientes a ellas que me enviaban datos de usuarios por email mediante PHP y también dejaron de funcionar, hasta que actualicé los archivos PHP (phpmailer) que generaban los mensajes y que , además, ahora lo debían hacer a través de un servidor SMTP.

Como la versión 2.7 es ya algo antigua, es posible que sus scripts para envío de correo por PHP hayan quedado desactualizados y por este motivo no funcionan.

Yo probaría a utilizar un servidor SMTP con una dirección de correo válida.

Un saludo.

JP

En respuesta a Juan Pablo Miranda Aguayo

Re: Algunas (solo algunas) tareas del Cron no se ejecutan

de Javier Galindo -

Hola Juan Pablo,

Gracias por tu respuesta. Comprobé que todas las tareas programadas estuviesen correctamente activadas y configuradas. Entonces estuve investigando sobre el tema y una cosa me llevó a otra hasta que descubrí lo siguiente: Me fuí a Administración del sitio/Desarrollo/Depurando y allí, en el apartado Mensajes de depuración activé para que se mostrasen Todos los mensajes de depuración PHP . Con ello se activan todos los posibles mensajes de error. Una vez hecho esto intenté enviar de nuevo un mensaje que implicara el envío de una notificación de email (ya que las  notificaciones por email eran una de las tareas programadas que no se ejecutaban)  por parte de Moodle y me apareció el siguiente mensaje (extracto): 

failed to open stream: No such file or directory in /usr/home/dirección de mi sitio/web/lib/phpmailer/moodle_phpmailer.php on line 32.

De este modo comprendí que se había corrompido-perdido-borrado algún archivo en el directorio de instalación de Moodle en el servidor. Contacté con el técnico responsable del servidor el cuál con estas orientaciones lo pudo arreglar, restaurando los archivos perdidos-corrompidos. De modo que fué un problema del servidor y en concreto de php ajeno al funcionamiento de Moodle en sí.

Lo más interesante es que mediante la activación de estos mensajes de depuración se pueden encontrar bastantes pistas cuando haya un problema de funcionamiento de Moodls.

Un cordial saludo y gracias por tomarte el tiempo de responder a mi consulta.

Javier.