PHP-FPM-Protokollierung
Grundmodell von PHP-FPM
- Master-Prozess — verwaltet den PHP-FPM-Pool und führt das zentrale
error_log. - Worker-Prozesse — verarbeiten Passwork-FastCGI-Anfragen und erzeugen PHP-Fehler oder -Warnungen.
catch_workers_output
Leitet die Worker-Ausgabe (stdout und stderr) an den Stream des Master-Prozesses oder an eine Logdatei um. Das Ziel wird über den Parameter error_log in der Konfigurationsdatei php-fpm.conf festgelegt.
Mögliche Werte:
yes—stdoutundstderrdes Workers werden an den inerror_logdefinierten Stream oder die Datei umgeleitet;no(Standard) — die Worker-Ausgabe wird nach/dev/nullumgeleitet (gemäß FastCGI-Spezifikation).
Diese Einstellung wird häufig in containerisierten Umgebungen verwendet, um Ereignisse über stdout/stderr mittels error_log zu erfassen und weiterzuleiten.
error_log
Der Wert des Parameters error_log (in php-fpm.conf) legt fest, wohin PHP-FPM Protokolle schreibt:
- Datei (zum Beispiel
/var/log/php-fpm.log); syslogzur Weiterleitung ansyslogd;- Stream (zum Beispiel
/dev/stderr).
Wenn error_log auf einen Stream zeigt (zum Beispiel /dev/stderr oder /proc/self/fd/2), wird die erfasste Worker-Ausgabe ebenfalls in den Container-Logstream geschrieben.
Aktionsverlauf in Passwork
Für den Aktionsverlauf legt der Parameter ACTIVITY_LOG_OUTPUT den Ausgabekanal fest:
syslog— schreibt Aktionsereignisse über syslog;stdout— schreibt Aktionsereignisse in den PHP-FPM-Stream.