Próbuję dowiedzieć się, dokąd idą błędy PHP w mojej konfiguracji. Używam nginx jako odwrotnego proxy do PHP-FPM, ale nie widzę różnych komunikatów E_NOTICE lub E_WARNING, które generuje moja aplikacja. Jedynym powodem, dla którego wiem, że się zdarzają, są nieudane odpowiedzi i ślady stosu NewRelic.
Oto konfiguracja logowania:
nginx.conf
proxy_intercept_errors on;
fastcgi_intercept_errors on;
php.ini
error_reporting = E_ALL
display_errors = Off
display_startup_errors = Off
log_errors = On
log_errors_max_len = 1024
ignore_repeated_errors = Off
ignore_repeated_source = Off
report_memleaks = On
track_errors = On
error_log = syslog
php-fpm.conf
[global]
error_log = /var/log/php-fpm/fpm-error.log
[www]
access.log = /var/log/php-fpm/access.log
access.format = "%t \"%m %r%Q%q\" %s %{mili}dms %{kilo}Mkb %C%%"
catch_workers_output = yes
php_flag[display_errors] = on
php_admin_flag[log_errors] = true
rsyslog.conf
:syslogtag, contains, "php" /var/log/php-fpm/error.log
Skonfigurowałem PHP do logowania do syslog, jednak FPM nie ma funkcji syslog, więc loguje się do pliku. Naprawdę nie dbam o to, gdzie błędy się kończą, tylko o to, że gdzieś się kończą.
Jakieś wskazówki, jak mogę to uruchomić?