溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

分析PHP程序員兩種日志

發(fā)布時(shí)間:2021-03-08 15:45:08 來源:億速云 閱讀:173 作者:TREX 欄目:開發(fā)技術(shù)

本篇內(nèi)容介紹了“分析PHP程序員兩種日志”的有關(guān)知識,在實(shí)際案例的操作過程中,不少人都會(huì)遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

分析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 Path
Configuration File (php.ini) Path => /usr/local/php/etc
XPath Support => enabled
Path to sendmail => /usr/sbin/sendmail -t -i
[root@xxxx etc]#

開啟慢查詢?nèi)罩?/h4>

舊的版本是在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找不到,就去他的同級目錄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)罩镜纳赡夸?/p>

  • request_slowlog_timeout 設(shè)置慢查詢的標(biāo)準(zhǔn)時(shí)間(打開此配置就相當(dāng)于開啟了慢查詢?nèi)罩荆?,配置以秒為單位,一般設(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_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ò)誤級別應(yīng)全開

  • display_errors 在頁面上不顯示錯(cuò)誤

  • log_errors 開啟錯(cuò)誤日志

最終的結(jié)果是

error_log = /var/log/php_error.log
display_errors = Off
error_reporting = E_ALL
log_errors = On

“分析PHP程序員兩種日志”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI