gelöst Debuggen eines PHP cronjobs
Hallo,
seit kurzem beschäftige ich mich mit Webservern und habe mir auf einen Testserver (Debian Lenny amd64) das OpenSource Tool SysCP installiert.
Alles läuft soweit, jedoch brauche ich Hilfe beim Finden eines Fehlers und hoffe, dass ihr mir weiterhelfen könnt.
SysCP startet regelmäßig cronjobs um verschiedene Aufgaben zu erfüllen.
Leider scheinen die Scripte jedoch einen Fehler zu haben und einige Cronjobs bleiben willkürlich hängen.
D.h. ps aux | grep CRON gibt mir mehrere nicht beendete /USR/SBIN/CRON aus .
Wie kann ich einen etwaigen Fehler mitloggen?
Das Entfernen des -q Switches hilft leider nicht, da CLI Scripte stets im Silent-Mode ausgeführt werden.
Auch folgende Änderungen in der /etc/php5/cli/php.ini loggen keine Fehler mit:
Ich hoffe jemand kann mir helfen, den Grund für die nicht terminierenden cronjobs zu finden.
Vielen Dank im Voraus!
#
# Regular cron jobs for the syscp package
#
*/5 * * * * root /usr/bin/php5 -q /var/syscp/web/scripts/cron_tasks.php
0 0 * * * root /usr/bin/php5 -q /var/syscp/web/scripts/cron_traffic.php
30 0 * * * root /usr/bin/php5 -q /var/syscp/web/scripts/cron_ticketarchive.php
0 1 * * * root /usr/bin/php5 -q /var/syscp/web/scripts/cron_used_tickets_reset.php
*/5 * * * * root /usr/bin/php5 -q /var/syscp/web/scripts/cron_autoresponder.php
D.h. ps aux | grep CRON gibt mir mehrere nicht beendete /USR/SBIN/CRON aus .
Wie kann ich einen etwaigen Fehler mitloggen?
Das Entfernen des -q Switches hilft leider nicht, da CLI Scripte stets im Silent-Mode ausgeführt werden.
CLI wird standardmäßig im stillen Modus gestartet, dennoch gibt es die Optionen -q und --no-header aus Kompatibilitätsgründen noch, so dass Sie auch ältere CGI-Skripte noch benutzen können. 2
Auch folgende Änderungen in der /etc/php5/cli/php.ini loggen keine Fehler mit:
error_reporting = E_ALL
log_errors = On
error_log = /var/log/phpcli.log
Vielen Dank im Voraus!
2 Antworten
- LÖSUNG godlie schreibt am 01.04.2009 um 12:57:05 Uhr
- LÖSUNG phil333 schreibt am 02.04.2009 um 13:58:01 Uhr
LÖSUNG 01.04.2009 um 12:57 Uhr
probier mal:
oder diesen hier dann hast stdout und sterr dabei:
dann sollte eigentlich alles was ausgegeben wird dorthin geleitet werden.
01.
/usr/bin/php5 -q /var/syscp/web/scripts/cron_tasks.php >> /var/log/foobar
01.
/usr/bin/php5 -q /var/syscp/web/scripts/cron_tasks.php &> /var/log/foobar
LÖSUNG 02.04.2009 um 13:58 Uhr
Habs mit folgenden Varianten versucht
Trotz hängender cronjobs wurde leider keine Fehlermeldung hinterlegt
Kann man diesen Silent Modus nicht irgendwie abschalten?
01.
/usr/bin/php5 -q /var/syscp/web/scripts/cron_tasks.php >> /var/log/foobar
02.
/usr/bin/php5 -q /var/syscp/web/scripts/cron_tasks.php 1>> /var/log/foobar
03.
/usr/bin/php5 -q /var/syscp/web/scripts/cron_tasks.php 2>> /var/log/foobar
04.
/usr/bin/php5 -q /var/syscp/web/scripts/cron_tasks.php &> /var/log/foobar
Kann man diesen Silent Modus nicht irgendwie abschalten?
Ähnliche Inhalte
Neue Wissensbeiträge
Heiß diskutierte Inhalte