Heim >类库下载 >PHP类库 >Nutzen Sie das langsame Ausführungsprotokoll von php-fpm, um PHP-Leistungsprobleme zu analysieren

Nutzen Sie das langsame Ausführungsprotokoll von php-fpm, um PHP-Leistungsprobleme zu analysieren

高洛峰
高洛峰Original
2016-10-14 10:51:131247Durchsuche

Wie wir alle wissen, verfügt MySQL über ein langsames Abfrageprotokoll. Anhand des langsamen Abfrageprotokolls können wir erkennen, welche SQL-Anweisungen Leistungsprobleme haben. Als guter Partner von MySQL verfügt PHP auch über eine solche Funktion. Wenn Sie PHP-FPM zum Verwalten von PHP verwenden, können Sie es über die folgenden Optionen aktivieren.
Vor PHP 5.3.3 lauten die Einstellungen wie folgt:
5s
logs/php-fpm-slowlog.log

Nach PHP 5.3.3 Legen Sie die folgenden Einstellungen fest:
request_slowlog_timeout = 5s
slowlog = /usr/local/php/log/php-fpm-slowlog.log

Erklärung:
request_slowlog_timeout gibt an, wie lange Das Skript überschreitet die Zeit. Kann in der Protokolldatei aufgezeichnet werden
slowlog ist der Pfad der Protokolldatei

Nach dem Einschalten werden Informationen ähnlich der folgenden angezeigt, wenn ein Skript länger als die angegebene Zeit ausgeführt wird wird in die angegebene Protokolldatei geschrieben:

[19-Dec-2013 16:54:49] [pool www] pid 18575
script_filename = /home/web/htdocs/sandbox_canglong/test/tt.php
[0x0000000003a00dc8] curl_exec() /home/web/htdocs/sandbox_canglong/test/tt.php:2
[0x0000000003a00cd0] exfilter_curl_get() /home/web/htdocs/sandbox_canglong/test/tt.php:6

Protokollbeschreibung:
script_filename ist die Eintragsdatei
curl_exec(): Dies bedeutet, dass die Ausführungszeit beim Ausführen dieser Methode überschritten wird.
exfilter_curl_get(): Gibt an, dass die Methode zum Aufrufen von curl_exec() exfilter_curl_get() ist.
Die Zahl nach dem Doppelpunkt in jeder Zeile ist die Zeilennummer.

Nach dem Einschalten gibt es auch relevante Datensätze in der Fehlerprotokolldatei. Wie folgt:

[19-Dec-2013 15:55:37] WARNING: [pool www] child 18575, script '/home/web/htdocs/sandbox_canglong/test/tt.php' (request: "GET /test/tt.php") executing too slow (1.006222 sec), logging
[19-Dec-2013 15:55:37] NOTICE: child 18575 stopped for tracing
[19-Dec-2013 15:55:37] NOTICE: about to trace 18575
[19-Dec-2013 15:55:37] NOTICE: finished trace of 18575


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

In Verbindung stehende Artikel

Mehr sehen