Ho un compito quotidiano crontab:
50 1 * * * sh /my_path/daily_task.sh > /tmp/zen_log 2>&1
Questo script shell daily_task eseguirà alcuni script Python e produrrà un file di dati.
E fallisce per due notti. Ma quando sono arrivato la mattina, ho eseguito manualmente gli script Python, ho ottenuto il file di dati. Oppure ho impostato un nuovo crontab che ha impostato solo la data 0 10 * * *
e anche questo crontab ha successo.
Quindi ieri ho inserito > /tmp/zen_log 2>&1
l'attività cron per ottenere un messaggio di errore.
E questa mattina, ho ricevuto questo messaggio di errore in zen_log:
/my_path/daily_task.sh: line 19: 12364 Killed /usr/local/bin/python2.7 my_python_script.py 2 mix > mix_hc_$datestamp 2>&1
Sembra che qualche processo sia stato ucciso? Ma cosa significa esattamente line 19: 12364 Killed
?
PS:
Oggi, un minuto fa, quando eseguo manualmente lo script Python, ho ottenuto:
/usr/local/bin/python2.7 my_python_script.py 2 mix > mix_hc_$datestamp 2>&1
Killed
line 19
è/usr/local/bin/python2.7 my_python_script.py 2 mix > mix_hc_$datestamp 2>&1
daily_task.sh
? È difficile capire perché fallisce 1:50 am
ma riesce a ottenere 10 am
le informazioni finora.
/var/log/messages
Mi chiedo se il tuo script stia creando un errore di memoria esaurita (OOM) e venga ucciso. Il tuo sistema tende ad eseguire altri script / applicazioni / lavori affamati di risorse di sistema durante le ore notturne rispetto alle ore AM?
line 19
nella sceneggiatura? Forse pubblicare il tuo script ci aiuterà a fornirti una risposta.