PHP程式設計師必須知道的兩種日誌
阿新 • • 發佈:2018-11-18
前言
作為一名程式設計師,比碼程式碼還重要那麼一點點的東西就是日誌的分析和查詢。下面列出常見日誌及設定方法。
php-fpm 慢日誌
php慢日誌需要在php-fpm.conf設定,如果使用原始碼包安裝預設請執行下面命令
cp php-fpm.conf.default php-fpm.conf
預設通過原始碼包編譯安裝php目錄應在
/usr/local/php
目錄下,如果你通過yum或者其他方式安裝,不清楚或不知道php具體安裝目錄,可以使用
find / -name php-fpm.conf
or
php -i | grep Path
------------------------------------------
[ [email protected] etc]# php -i | grep Path
Configuration File (php.ini) Path => /usr/local/php/etc
XPath Support => enabled
Path to sendmail => /usr/sbin/sendmail -t -i
[[email protected] etc]#
開啟慢查詢日誌
舊的版本是在php-fpm.conf設定 (實際是我忘記了哪個版本),php7.x版本原始碼包編譯後需要www.conf修改慢查詢配置
vim /usr/local/php/etc/php-fpm.d/www.conf
不過配置項都一樣的,如果你在php-fpm.conf找不到,就去他的同級目錄php-fpm.d下面找下吧。
; The log file for slow requests ; Default Value: not set ; Note: slowlog is mandatory if request_slowlog_timeout is set ;slowlog = log/$pool.log.slow ; The timeout for serving a single request after which a PHP backtrace will be ; dumped to the 'slowlog' file. A value of '0s' means 'off'. ; Available units: s(econds)(default), m(inutes), h(ours), or d(ays) ; Default Value: 0 ;request_slowlog_timeout = 0
- slowlog 設定慢查詢日誌的生成目錄
- request_slowlog_timeout 設定慢查詢的標準時間(開啟此配置就相當於開啟了慢查詢日誌),配置以秒為單位,一般設定3s。
php-error 錯誤日誌
在生產環境中是不允許php報錯的,就算報錯也是白屏或者500,所以在生產環境中的日誌收集是非常重要的。
開啟錯誤日誌
一般情況下,php錯誤日誌的配置都在php.ini檔案中
/usr/local/php/etc/php.ini
---------------------------
error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT
display_errors = Off
log_errors = On
; Log errors to specified file. PHP's default behavior is to leave this value
; empty.
; http://php.net/error-log
; Example:
;error_log = php_errors.log
; Log errors to syslog (Event Log on Windows).
;error_log = syslog
- error_log 錯誤日誌的生成目錄
- error_reporting 生產環境錯誤級別應全開
- display_errors 在頁面上不顯示錯誤
- log_errors 開啟錯誤日誌
最終的結果是
error_log = /var/log/php_error.log
display_errors = Off
error_reporting = E_ALL
log_errors = On
致謝
感謝你看到這裡,日誌操作與分析的相關文章後面我還會寫一些,希望可以幫助到你。謝謝
程式碼多變,初心不變
原文地址:https://segmentfault.com/a/1190000015664206