PHP程式設計師必須知道的兩種日誌
前言
作為一名程式設計師,比碼程式碼還重要那麼一點點的東西就是日誌的分析和查詢。下面列出常見日誌及設定方法。
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
------------------------------------------
[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修改慢查詢配置
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
致謝
感謝你看到這裡,日誌操作與分析的相關文章後面我還會寫一些,希望可以幫助到你。謝謝
程式碼多變,初心不變
相關文章
- 有理想的程式設計師必須知道的15件事程式設計師
- 每個Java程式設計師必須知道的5個JVM命令列標誌Java程式設計師JVM命令列
- iOS程式設計師必須知道的Android要點iOS程式設計師Android
- 程式設計師必須知道的幾個國外IT網站程式設計師網站
- 程式設計師生存指南:你必須要掌握的兩點!程式設計師
- 作為程式設計師必須知道的程式語言編年史程式設計師
- 每個Java程式設計師都必須知道的四種負載均衡演算法Java程式設計師負載演算法
- 程式設計師必須知道的幾個Git程式碼託管平臺程式設計師Git
- 網頁設計師必須知道的6個小技巧網頁
- 成為更好的程式設計師必須學習的 4 種程式設計結構程式設計師
- 設計師升職加薪必須知道的10個設計網站網站
- 前端設計師必須知道的10個重要的CSS技巧前端CSS
- 程式設計師必須知道的字符集與字元編碼詳解程式設計師字元
- 作為程式設計師,這些實用工具你必須要知道!程式設計師
- 程式設計師必須要了解的web安全程式設計師Web
- 程式設計師必須克服的十大程式設計禁忌程式設計師
- Java程式設計師須知的七個日誌管理工具Java程式設計師
- 程式設計師必須走向專業化程式設計師
- 每個程式設計師都必須遵守的程式設計原則程式設計師
- 每個 Python 程式設計師都要知道的日誌實踐Python程式設計師
- iOS 程式設計師必須收藏的資源大全iOS程式設計師
- Java 程式設計師必須掌握的 Linux 命令Java程式設計師Linux
- 程式設計師必須進行的10項投資程式設計師
- 15個IT程式設計師必須思考的問題程式設計師
- Java程式設計師必須瞭解的7個效能指標,你都知道嗎?Java程式設計師指標
- 程式設計師必須知道的10大基礎實用演算法及其講解程式設計師演算法
- 程式設計師都應該知道的福利【必知必懂】程式設計師
- @程式設計師,安全問題必須重視!程式設計師
- 程式設計師必須掌握哪些演算法?程式設計師演算法
- Android 程式設計師必須掌握的三種自動化測試方法Android程式設計師
- 程式設計師必須掌握的資料結構 1程式設計師資料結構
- 程式設計師必須掌握的資料結構 2程式設計師資料結構
- 聊聊程式設計師面試時,那些必須注意的事情程式設計師面試
- Java程式設計師必須掌握的5個註解!Java程式設計師
- Java程式設計師面試必須要掌握的面試題Java程式設計師面試題
- Java程式設計師必須熟知的十項技術Java程式設計師
- 程式設計師必須掌握的五個seo知識程式設計師
- Java程式設計師必須要掌握這10種工具,缺一不可!Java程式設計師