PHP error_log() не записывает на диск в задании cron

При запуске сценариев PHP в качестве заданий cron обработчик ошибок работает, но функция error_log() не записывает данные на диск. Я включил эти строки в сценарий, запускаемый через cron, на случай, если это произошло из-за того, что значения php.ini не были получены, но все еще не выводятся в журнал ошибок.

ini_set('display_startup_errors', 0);
ini_set('display_errors', 0);
ini_set('error_log', LOG_FOLDER . 'error_log.txt'); 

Обработка ошибок в целом работает, как и ожидалось, и сообщения об ошибках появляются в выходном электронном письме cron, которое я получаю.

В качестве обходного пути я мог обнаружить, что скрипт работает как задание cron, проверив $_SERVER, а затем записав в журнал ошибок, используя fopen() и т. д. Но я надеялся, что смогу правильно настроить его и просто использовать error_log( ).


person Kevin    schedule 20.05.2010    source источник
comment
Вы уверены, что LOG_FOLDER определен правильно? Что производит echo LOG_FOLDER . 'error_log.txt'?   -  person Josh    schedule 20.05.2010
comment
Вы можете просто перенаправить вывод cron. В crontab: php yourcommand.php &› /path/to/error_log.txt   -  person Cfreak    schedule 20.05.2010
comment
Я распечатал LOG_FOLDER, и он повторяет правильный путь, да.   -  person Kevin    schedule 20.05.2010


Ответы (1)


Ну, я только что понял, что это была просто моя ошибка, и LOG_FOLDER на самом деле был неправильным, папка отсутствовала. :)

person Kevin    schedule 20.05.2010