ven - cómo obtener errores de php para mostrar en syslog
php error log (4)
Tengo un script que está programado para ejecutarse en crontab. Noté que no podía ver los errores de php en ningún lado. Quería poder ver los errores de php conectados en / var / log / syslog o en otro lugar. Intenté configurar mi php.ini para registrar los errores en /var/log/php-errors.log, verifiqué los permisos y reinicié el servicio de apache, todavía no hay registros.
En Ubuntu 16.04, el / dev / log es propiedad del grupo mysyslog (como lo define systemd). Entonces, para que apache2 / php pueda escribir en syslog, debe agregar el usuario www-data al grupo mysyslog: addgroup www-data mysyslog
Hay dos cuestiones a considerar:
Primero, PHP CLI usa un php.ini diferente que la versión de PHP que se ejecuta a través de Apache. Asegúrese de editar el error_log
en la versión CLI.
Segundo, asegúrese de que su archivo de registro sea editable por el usuario que ejecuta cron. Por lo general, su cuenta de usuario no puede escribir en el archivo de registro, por lo que puede necesitar editar los permisos.
Pruebe error_log = syslog
en su php.ini.
Tengo esto en mi /etc/php5/cli/php.ini
archivo (yo uso Debian, estoy suponiendo que es el mismo para lo que sea que esté usando) y escribe todos los errores cron a / var / log / messages:
error_reporting = E_ALL & ~E_NOTICE
display_errors = Off
display_startup_errors = Off
log_errors = On
log_errors_max_len = 0
ignore_repeated_errors = Off
ignore_repeated_source = Off
report_memleaks = On
track_errors = Off
error_log = syslog