這篇文章主要介紹了php效能分析之php-fpm慢執行日誌slow log用法,結合實例形式分析了php慢執行日誌的功能與相關使用技巧,需要的朋友可以參考下
眾所周知,mysql有slow query log,根據慢查詢日誌,我們可以知道那些sql語句有效能問題。身為mysql的好搭檔,php也有這樣的功能。如果你使用php-fpm來管理php的話,你可以透過以下選項開啟。
PHP 5.3.3 先前設定如下:
<value name="request_slowlog_timeout">5s</value> <value name="slowlog">logs/php-fpm-slowlog.log</value>
PHP 5.3.3 之後設定以下如下:
request_slowlog_timeout = 5s slowlog = /usr/local/php/log/php-fpm-slowlog.log
#說明:
request_slowlog_timeout是腳本超過多久就可以記錄到日誌檔案
slowlog 是日誌檔案的路徑
開啟後,如果有腳本執行超過指定的時間,就會在指定的日誌檔案中寫入類似如下的資訊:
[19-Dec-2013 16:54:49] [pool www] pid 18575
script_filename = /home/admin/web/htdocs/sandbox_canglong/test/tt.php
#[0x0000000003a0008 () /home/admin/web/htdocs/sandbox_canglong/test/tt.php:2
[0x0000000003a00cd0] exfilter_curl_get() /home/admin/web/htdocs/sandbox_canglong/test/
#日誌說明:
script_filename 是入口檔案curl_exec() : 說明是執行這個方法的時候超過執行時間的。
exfilter_curl_get() :說明呼叫curl_exec()的方法是exfilter_curl_get() 。
[19-Dec-2013 15:55:37] WARNING: [pool www] child 18575, script '/home/admin/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
總結:以上就是這篇文章的全部內容,希望能對大家的學習有所幫助。
相關建議:
PHP函數curl請求-抓取頁面/介面測試 PHP函數將任意數字轉換成對應的漢字數字PHP基礎函數總結################# ####
以上是php效能分析之php-fpm慢執行日誌slow log的用法的詳細內容。更多資訊請關注PHP中文網其他相關文章!