2016-12-09 2 views
0

Ich habe eine Rails 3.2-Anwendung, die Rubin 1.9.3Wie erhalte ich Cron-Jobs in container_commands auf aws läuft

Wir einen cron-Job durch container_commands laufen haben müssen, verwendet.

Zur Zeit habe ich eine common.config Datei im .ebextensions Verzeichnis mit den folgenden darin

container_commands: 
    04_clear_old_epubs: 
    command: "cat .ebextensions/clear_old_epubs_cron.txt > /etc/cron.d/clear_old_epubs_cron && chmod 644 /etc/cron.d/clear_old_epubs_cron" 
    leader_only: true 

Dann in der clear_old_epubs_cron.txt Datei Ich habe

*/5 * * * * root /usr/bin/php rm -rf /var/app/current/public/epub-download-1/* > /dev/null 

# 

Ich habe diese von der akzeptierte Antwort in AWS Elastic Beanstalk, running a cronjob

Der Cron löscht den Ordner nicht wie er es beabsichtigt. Ich bin mir nicht sicher, was den Cron davon abhält zu laufen oder ob er läuft, aber etwas anderes ist falsch.

Kann jemand etwas sehen, das falsch oder fehlend ist?

Antwort

1

Wie bereits erwähnt, kann es sein, dass der Cron-Job überhaupt nicht ausgeführt wird oder aufgrund eines Fehlers fehlschlägt.

Eine Sache, die helfen wird, ist [email protected] in der Crontab vorübergehend einzustellen. Auf diese Weise wird dir cron eine Nachricht per E-Mail schicken.

Hoffentlich erzeugt das einige Fehlermeldungen von Ihrem Cronjob, die Ihnen helfen werden, das Problem zu diagnostizieren.

Wenn Sie keine E-Mail erhalten, wird der Cron-Job überhaupt nicht ausgeführt (oder Ihr System kann keine E-Mails senden ...). An diesem Punkt müssen Sie sich über Ihren Betrieb informieren System Cron System und sehen, ob es einen Schritt, den Sie verpasst haben.

Eine weitere nützliche Art und Weise zu debuggen Cronjobs interaktiv über sudo sein kann, laufen, mit dem Sie die gleiche Art von Umgebung geben sollte als cron verwenden, wenn es um die Arbeitsplätze in Bezug auf Pfade, Variablen laufen usw.

Verwandte Themen