PHP程序员必须知道的两种日志实例分析

吾爱主题 阅读:168 2021-10-14 15:19:00 评论:0

本文实例讲述了php程序员必须知道的两种日志。分享给大家供大家参考,具体如下:

前言

作为一名程序员,比码代码还重要那么一点点的东西就是日志的分析和查询。下面列出常见日志及设置方法。

php-fpm 慢日志

php慢日志需要在php-fpm.conf设置,如果使用源码包安装默认请执行下面命令

?
1 cp php-fpm.conf. default php-fpm.conf

默认通过源码包编译安装php目录应在

?
1 /usr/local/php

目录下,如果你通过yum或者其他方式安装,不清楚或不知道php具体安装目录,可以使用

?
1 find / -name php-fpm.conf

or

?
1 2 3 4 5 6 7 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修改慢查询配置

?
1 vim /usr/local/php/etc/php-fpm.d/www.conf

不过配置项都一样的,如果你在php-fpm.conf找不到,就去他的同级目录php-fpm.d下面找下吧。

?
1 2 3 4 5 6 7 8 9 10 ; 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文件中

?
1 2 3 4 5 6 7 8 9 10 11 12 /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 开启错误日志

最终的结果是

?
1 2 3 4 error_log = / var /log/php_error.log display_errors = off error_reporting = e_all log_errors = on

希望本文所述对大家PHP程序设计有所帮助。

原文链接:https://segmentfault.com/a/1190000015664206

可以去百度分享获取分享代码输入这里。
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

【腾讯云】云服务器产品特惠热卖中
搜索
标签列表
    关注我们

    了解等多精彩内容