做爲一名程序員,比碼代碼還重要那麼一點點的東西就是日誌的分析和查詢。下面列出常見日誌及設置方法。php
php慢日誌須要在php-fpm.conf設置,若是使用源碼包安裝默認請執行下面命令程序員
cp php-fpm.conf.default php-fpm.conf
默認經過源碼包編譯安裝php目錄應在vim
/usr/local/php
目錄下,若是你經過yum或者其餘方式安裝,不清楚或不知道php具體安裝目錄,能夠使用php7
find / -name php-fpm.conf
orphp-fpm
php -i | grep Path ------------------------------------------ [root@xxxx 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 [root@xxxx etc]#
舊的版本是在php-fpm.conf設置 (實際是我忘記了哪一個版本),php7.x版本源碼包編譯後須要www.conf修改慢查詢配置this
vim /usr/local/php/etc/php-fpm.d/www.conf
不過配置項都同樣的,若是你在php-fpm.conf找不到,就去他的同級目錄php-fpm.d下面找下吧。spa
; 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
在生產環境中是不容許php報錯的,就算報錯也是白屏或者500,因此在生產環境中的日誌收集是很是重要的。.net
通常狀況下,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
最終的結果是code
error_log = /var/log/php_error.log display_errors = Off error_reporting = E_ALL log_errors = On
感謝你看到這裏,日誌操做與分析的相關文章後面我還會寫一些,但願能夠幫助到你。謝謝
代碼多變,初心不變