php慢查询日志和错误日志使用详解


Posted in PHP onFebruary 27, 2021

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

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

到此这篇关于php慢查询日志和错误日志使用详解的文章就介绍到这了,更多相关php慢查询日志和错误日志内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

PHP 相关文章推荐
用PHP实现多级树型菜单
Oct 09 PHP
分页详解 从此分页无忧(PHP+mysql)
Nov 23 PHP
PHP备份/还原MySQL数据库的代码
Jan 06 PHP
ThinkPHP与PHPExcel冲突解决方法
Aug 08 PHP
php ci框架中加载css和js文件失败的解决方法
Mar 03 PHP
PHP 面向对象程序设计(oop)学习笔记 (五) - PHP 命名空间
Jun 12 PHP
PDO防注入原理分析以及注意事项
Feb 25 PHP
php里array_work用法实例分析
Jul 13 PHP
ThinkPHP整合datatables实现服务端分页的示例代码
Feb 10 PHP
php swoole多进程/多线程用法示例【基于php7nts版】
Aug 12 PHP
laravel5表单唯一验证的实例代码
Sep 30 PHP
Laravel 连接(Join)示例
Oct 16 PHP
php的单例模式及应用场景详解
Feb 27 #PHP
PHP+Mysql分布式事务与解决方案深入理解
Feb 27 #PHP
PHP并发场景的三种解决方案代码实例
Feb 27 #PHP
常见的5个PHP编码小陋习以及优化实例讲解
Feb 27 #PHP
laravel数据库查询结果自动转数组修改实例
Feb 27 #PHP
PHP的垃圾回收机制代码实例讲解
Feb 27 #PHP
php命令行模式代码实例详解
Feb 26 #PHP
You might like
PHP pathinfo()获得文件的路径、名称等信息说明
2011/09/13 PHP
discuz加密解密函数使用方法和中文注释
2014/01/21 PHP
PHP获取浏览器信息类和客户端地理位置的2个方法
2014/04/24 PHP
非常有用的9个PHP代码片段
2016/04/06 PHP
php输出含有“#”字符串的方法
2017/01/18 PHP
php使用redis的有序集合zset实现延迟队列应用示例
2020/02/20 PHP
小议Javascript中的this指针
2010/03/18 Javascript
利用JS进行图片的切换即特效展示图片
2013/12/03 Javascript
js图片延迟技术一般的思路与示例
2014/03/20 Javascript
javascript实现支持移动设备画廊
2015/08/24 Javascript
基于JQuery实现仿网易邮箱全屏动感滚动插件fullPage
2015/09/20 Javascript
基于jquery实现百度新闻导航菜单滑动动画
2016/03/15 Javascript
Node.js与MySQL交互操作及其注意事项
2016/10/05 Javascript
js实现登录注册框手机号和验证码校验(前端部分)
2017/09/28 Javascript
详解vue 组件之间使用eventbus传值
2017/10/25 Javascript
实例分析编写vue组件方法
2019/02/12 Javascript
跟老齐学Python之Python文档
2014/10/10 Python
Python的Flask开发框架简单上手笔记
2015/11/16 Python
Python中将dataframe转换为字典的实例
2018/04/13 Python
Python爬取数据保存为Json格式的代码示例
2019/04/09 Python
基于python二叉树的构造和打印例子
2019/08/09 Python
python实现画出e指数函数的图像
2019/11/21 Python
python不使用for计算两组、多个矩形两两间的iou方式
2020/01/18 Python
python字符串判断密码强弱
2020/03/18 Python
python脚本监控logstash进程并邮件告警实例
2020/04/28 Python
Python根据指定文件生成XML的方法
2020/06/29 Python
在django中查询获取数据,get, filter,all(),values()操作
2020/08/09 Python
Python批量获取并保存手机号归属地和运营商的示例
2020/10/09 Python
pandas针对excel处理的实现
2021/01/15 Python
大学生自我评价范文分享
2014/02/21 职场文书
建筑设计专业求职自我评价
2014/03/02 职场文书
党的群众路线教育实践活动实施方案
2014/10/31 职场文书
公司承诺函范文
2015/01/21 职场文书
幼儿园六一儿童节演讲稿
2015/03/19 职场文书
2016抗战胜利71周年红领巾广播稿
2015/12/18 职场文书
2019学子的答谢词范本!
2019/07/05 职场文书