PHP程序員必須知道的兩種日志實(shí)例分析
本文實(shí)例講述了PHP程序員必須知道的兩種日志。分享給大家供大家參考,具體如下:
作為一名程序員,比碼代碼還重要那么一點(diǎn)點(diǎn)的東西就是日志的分析和查詢。下面列出常見日志及設(shè)置方法。
php-fpm 慢日志php慢日志需要在php-fpm.conf設(shè)置,如果使用源碼包安裝默認(rèn)請執(zhí)行下面命令
cp php-fpm.conf.default php-fpm.conf
默認(rèn)通過源碼包編譯安裝php目錄應(yīng)在
/usr/local/php
目錄下,如果你通過yum或者其他方式安裝,不清楚或不知道php具體安裝目錄,可以使用
find / -name php-fpm.conf
or
php -i | grep Path------------------------------------------[root@xxxx etc]# php -i | grep PathConfiguration File (php.ini) Path => /usr/local/php/etcXPath Support => enabledPath to sendmail => /usr/sbin/sendmail -t -i[root@xxxx etc]#開啟慢查詢?nèi)罩?p>舊的版本是在php-fpm.conf設(shè)置 (實(shí)際是我忘記了哪個(gè)版本),php7.x版本源碼包編譯后需要www.conf修改慢查詢配置
vim /usr/local/php/etc/php-fpm.d/www.conf
不過配置項(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)罩镜纳赡夸? request_slowlog_timeout 設(shè)置慢查詢的標(biāo)準(zhǔn)時(shí)間(打開此配置就相當(dāng)于開啟了慢查詢?nèi)罩荆渲靡悦霝閱挝唬话阍O(shè)置3s。php-error 錯(cuò)誤日志
在生產(chǎn)環(huán)境中是不允許php報(bào)錯(cuò)的,就算報(bào)錯(cuò)也是白屏或者500,所以在生產(chǎn)環(huán)境中的日志收集是非常重要的。
開啟錯(cuò)誤日志一般情況下,php錯(cuò)誤日志的配置都在php.ini文件中
/usr/local/php/etc/php.ini---------------------------error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICTdisplay_errors = Offlog_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)全開 display_errors 在頁面上不顯示錯(cuò)誤 log_errors 開啟錯(cuò)誤日志
最終的結(jié)果是
error_log = /var/log/php_error.logdisplay_errors = Offerror_reporting = E_ALLlog_errors = On
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《PHP日志操作技巧總結(jié)》、《php文件操作總結(jié)》、《PHP數(shù)組(Array)操作技巧大全》、《PHP基本語法入門教程》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家PHP程序設(shè)計(jì)有所幫助。
相關(guān)文章:
1. PHP設(shè)計(jì)模式中工廠模式深入詳解2. asp(vbs)Rs.Open和Conn.Execute的詳解和區(qū)別及&H0001的說明3. Ajax實(shí)現(xiàn)表格中信息不刷新頁面進(jìn)行更新數(shù)據(jù)4. JSP數(shù)據(jù)交互實(shí)現(xiàn)過程解析5. ThinkPHP5實(shí)現(xiàn)JWT Token認(rèn)證的過程(親測可用)6. .NET中l(wèi)ambda表達(dá)式合并問題及解決方法7. ASP.NET MVC遍歷驗(yàn)證ModelState的錯(cuò)誤信息8. 解決AJAX返回狀態(tài)200沒有調(diào)用success的問題9. ASP 信息提示函數(shù)并作返回或者轉(zhuǎn)向10. CSS hack用法案例詳解
