Esto me sigue sucediendo todo el tiempo: 1) Escribo un script (ruby, shell, etc.). 2) ejecutarlo, funciona. 3) ponerlo en crontab para que se ejecute en unos minutos, así que sé que se ejecuta desde allí. 4) No lo hace, no hay rastro de error, vuelve al paso 2 o 3 a 1000 veces.Cómo probar cosas en crontab
Cuando Ruby guión falla en el crontab, en realidad no puedo saber por qué se produce un error porque cuando la salida de tubo de esta manera:
ruby script.rb >& /path/to/output
sorta obtener la salida de la secuencia de comandos, pero no lo hago obtener cualquiera de los errores y no obtengo los errores de bash (como si no se encuentra Ruby o el archivo no está allí)
No tengo idea de qué variables ambientales se establecen y si es o no un problema. Resulta que para ejecutar un script de ruby desde crontab, debe exportar una tonelada de variables de entorno.
¿Hay alguna manera para que yo solo tenga crontab ejecute un script como si lo ejecutara yo mismo desde mi terminal?
Al depurar, tengo que reiniciar el temporizador y volver a esperar. Consume mucho tiempo.
¿Cómo probar cosas en crontab mejor o evitar estos problemas?
¿Dónde está el rubí? ¿Está en una ruta del sistema como/usr/bin? Eche un vistazo a: http://ubuntuforums.org/showthread.php?t=190671 y vea si hay mensajes similares a lo que ve. Este fue un caso de ruby fuera del camino que cron vería. – maxwellb
Los errores (cualquier salida en realidad) de trabajos en mi crontab me son enviados por correo electrónico, el propietario del crontab. No recuerdo que necesitaba cambiar las configuraciones para que eso suceda ... ¿Verificó si tiene algún correo electrónico en el sistema en el que se ejecuta su cronjob? –
¿Qué hay de dirigir su salida al syslog? http://angryruby.blogspot.com/2007/08/ruby-and-syslog.html – shuckster