Как написать файл журнала ошибок в PHP

Я хочу написать сообщение в файл журнала ошибок при выполнении PHP-кода.

Я пытаюсь использовать функцию PHP error_log() Docs.

Но он не работает должным образом для меня.

Ответ 1

Если вы не хотите ничего менять в файле php.ini, в соответствии с документацией по PHP, вы можете это сделать.

error_log("Error message\n", 3, "/mypath/php.log");

Первый параметр - строка, которая должна быть отправлена ​​в журнал. Второй параметр 3 означает ожидание назначения файла. Третий параметр - путь к файлу журнала.

Ответ 2

вы можете просто использовать:

error_log("your message");

По умолчанию сообщение будет отправлено в системный регистратор php.

Ответ 3

Мы все знаем, что PHP сохраняет ошибки в файле php_errors.log.

Но этот файл содержит много данных.

Если мы хотим зарегистрировать данные наших приложений, нам нужно сохранить их в произвольном месте.

Для достижения этой цели мы можем использовать два параметра в функции error_log.

http://php.net/manual/en/function.error-log.php

Мы можем сделать это, используя:

error_log(print_r($v, TRUE), 3, '/var/tmp/errors.log');

Где

print_r($v, TRUE) : записывает в файл журнала файл $v (array/string/object). 3: поместить сообщение журнала в пользовательский файл журнала, указанный в третьем параметре.

'/var/tmp/errors.log': Пользовательский файл журнала (этот путь для Linux, мы можем указать другие в зависимости от ОС).

ИЛИ, вы можете использовать file_put_contents()

file_put_contents('/var/tmp/e.log', print_r($v, true), FILE_APPEND);

Где:

'/var/tmp/errors.log': Пользовательский файл журнала (этот путь для Linux, мы можем указать другое в зависимости от ОС). print_r($v, TRUE) : записывает в файл журнала файл $v (array/string/object). FILE_APPEND: параметр константы, указывающий, следует ли добавлять к файлу, если он существует, если файл не существует, будет создан новый файл.

Ответ 4

Просто удалите код, указанный в php.ini

Он задается следующим образом:

;error_log = "c:/wamp/logs/php_error.log"

Измените его так:

error_log = "c:/wamp/logs/php_error.log"

Это указано для пользователей Wamp.

Проверьте свои журналы в аналогичном виде, как я упоминаю здесь:

c:/wamp/logs/php_error.log

Также убедитесь, что в php.ini:

log_errors = On

Ответ 5

Вы можете использовать обычную операцию с файлами для создания журнала ошибок. Просто напишите эту ссылку и введите эту ссылку: Обработка файлов PHP