本篇文章給大家介紹一下PHP程序員必須知道的兩種日志。有一定的參考價(jià)值,有需要的朋友可以參考一下,希望對(duì)大家有所幫助。
作為一名程序員,比碼代碼還重要那么一點(diǎn)點(diǎn)的東西就是日志的分析和查詢。下面列出常見(jiàn)日志及設(shè)置方法。
php-fpm 慢日志
php慢日志需要在php-fpm.conf設(shè)置,如果使用源碼包安裝默認(rèn)請(qǐng)執(zhí)行下面命令
cp php-fpm.conf.default php-fpm.conf
默認(rèn)通過(guò)源碼包編譯安裝php目錄應(yīng)在
/usr/local/php
目錄下,如果你通過(guò)yum或者其他方式安裝,不清楚或不知道php具體安裝目錄,可以使用
find / -name php-fpm.conf
or
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]#
開(kāi)啟慢查詢?nèi)罩?/strong>
舊的版本是在php-fpm.conf設(shè)置 (實(shí)際是我忘記了哪個(gè)版本),php7.x版本源碼包編譯后需要www.conf修改慢查詢配置
vim /usr/local/php/etc/php-fpm.d/www.conf
不過(guò)配置項(xiàng)都一樣的,如果你在php-fpm.conf找不到,就去他的同級(jí)目錄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 設(shè)置慢查詢?nèi)罩镜纳赡夸?/li>
- request_slowlog_timeout 設(shè)置慢查詢的標(biāo)準(zhǔn)時(shí)間(打開(kāi)此配置就相當(dāng)于開(kāi)啟了慢查詢?nèi)罩荆?,配置以秒為單位,一般設(shè)置3s。
推薦學(xué)習(xí):《PHP視頻教程》
php-error 錯(cuò)誤日志
在生產(chǎn)環(huán)境中是不允許php報(bào)錯(cuò)的,就算報(bào)錯(cuò)也是白屏或者500,所以在生產(chǎn)環(huán)境中的日志收集是非常重要的。
開(kāi)啟錯(cuò)誤日志
一般情況下,php錯(cuò)誤日志的配置都在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 錯(cuò)誤日志的生成目錄
- error_reporting 生產(chǎn)環(huán)境錯(cuò)誤級(jí)別應(yīng)全開(kāi)
- display_errors 在頁(yè)面上不顯示錯(cuò)誤
- log_errors 開(kāi)啟錯(cuò)誤日志
最終的結(jié)果是
error_log = /var/log/php_error.log display_errors = Off error_reporting = E_ALL log_errors = On
致謝
感謝你看到這里,日志操作與分析的相關(guān)文章后面我還會(huì)寫(xiě)一些,希望可以幫助到你。謝謝
代碼多變,初心不變