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扩展介绍与开发教程
Aug 19 PHP
PHP 命令行参数详解及应用
May 18 PHP
php 团购折扣计算公式
Nov 24 PHP
ThinkPHP3.1查询语言详解
Jun 19 PHP
php精确的统计在线人数的方法
Oct 21 PHP
学习php设计模式 php实现工厂模式(factory)
Dec 07 PHP
解析WordPress中的post_class与get_post_class函数
Jan 04 PHP
PHP魔术方法使用方法汇总
Feb 14 PHP
PHP实现适用于文件内容操作的分页类
Jun 15 PHP
Yii数据模型中rules类验证器用法分析
Jul 15 PHP
Yii2框架控制器、路由、Url生成操作示例
May 27 PHP
Laravel 实现数据软删除功能
Aug 21 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
第十二节--类的自动加载
2006/11/16 PHP
php 移除数组重复元素的一点说明
2008/11/27 PHP
探讨:如何使用PhpDocumentor生成文档
2013/06/25 PHP
编写PHP脚本清除WordPress头部冗余代码的方法讲解
2016/03/01 PHP
微信支付开发发货通知实例
2016/07/12 PHP
JavaScript TO HTML 转换
2006/06/26 Javascript
javaScript 读取和设置文档元素的样式属性
2009/04/14 Javascript
纯JavaScript代码实现移动设备绘图解锁
2015/10/16 Javascript
js多功能分页组件layPage使用方法详解
2016/05/19 Javascript
NodeJs的优势和适合开发的程序
2016/08/14 NodeJs
jQuery插件实现可输入和自动匹配的下拉框
2016/10/24 Javascript
jquery实现图片平滑滚动详解
2017/03/22 jQuery
如何编写一个完整的Angular4 FormText 组件
2017/11/18 Javascript
原生JS实现动态加载js文件并在加载成功后执行回调函数的方法
2020/12/30 Javascript
使用jquery的cookie实现登录页记住用户名和密码的方法
2019/03/13 jQuery
vue简单封装axios插件和接口的统一管理操作示例
2020/02/02 Javascript
vue2路由方式--嵌套路由实现方法分析
2020/03/06 Javascript
[00:34]DOTA2上海特级锦标赛 VG战队宣传片
2016/03/04 DOTA
Python中的rjust()方法使用详解
2015/05/19 Python
Python使用matplotlib绘制随机漫步图
2018/08/27 Python
python 列表递归求和、计数、求最大元素的实例
2018/11/28 Python
Python3.6实现带有简单界面的有道翻译小程序
2019/04/16 Python
Python实现字典按key或者value进行排序操作示例【sorted】
2019/05/03 Python
Python中typing模块与类型注解的使用方法
2019/08/05 Python
Python学习笔记之列表推导式实例分析
2019/08/13 Python
python中wx模块的具体使用方法
2020/05/15 Python
越南电子产品购物网站:FPT Shop
2017/12/02 全球购物
面料业务员岗位职责
2013/12/26 职场文书
母亲节感恩寄语
2014/02/21 职场文书
小学优秀教育工作者事迹材料
2014/05/09 职场文书
2014年党的群众路线活动个人整改措施
2014/10/28 职场文书
董事长秘书岗位职责
2015/02/13 职场文书
军训后的感想
2015/08/07 职场文书
nginx 多个location转发任意请求或访问静态资源文件的实现
2021/03/31 Servers
MySQL REVOKE实现删除用户权限
2021/06/18 MySQL
nginx日志格式分析和修改
2022/04/28 Servers