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


Posted in PHP onMay 14, 2020

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

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

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

PHP 相关文章推荐
PHP开发环境配置(MySQL数据库安装图文教程)
Apr 28 PHP
php中将网址转换为超链接的函数
Sep 02 PHP
PHP ? EasyUI DataGrid 资料取的方式介绍
Nov 07 PHP
基于Discuz security.inc.php代码的深入分析
Jun 03 PHP
基于simple_html_dom的使用小结
Jul 01 PHP
PHP实现检测客户端是否使用代理服务器及其匿名级别
Jan 07 PHP
ThinkPHP文件缓存类代码分享
Apr 22 PHP
PHP的Yii框架中行为的定义与绑定方法讲解
Mar 18 PHP
CI框架实现框架前后端分离的方法详解
Dec 30 PHP
PHP房贷计算器实例代码,等额本息,等额本金
Apr 01 PHP
PHP程序员学习使用Swoole的理由
Jun 24 PHP
如何在PHP环境中使用ProtoBuf数据格式
Jun 19 PHP
Laravel框架集合用法实例浅析
May 14 #PHP
Laravel框架源码解析之模型Model原理与用法解析
May 14 #PHP
Laravel框架源码解析之入口文件原理分析
May 14 #PHP
Laravel框架源码解析之反射的使用详解
May 14 #PHP
PHP 数组操作详解【遍历、指针、函数等】
May 13 #PHP
ThinkPHP5 框架引入 Go AOP,PHP AOP编程项目详解
May 12 #PHP
php中用unset销毁变量并释放内存
May 10 #PHP
You might like
PHP计划任务、定时执行任务的实现代码
2011/04/23 PHP
php模板函数 正则实现代码
2012/10/15 PHP
PHP如何使用Memcached
2016/04/05 PHP
php打包压缩文件之ZipArchive方法用法分析
2016/04/30 PHP
在PHP语言中使用JSON和将json还原成数组的方法
2016/07/19 PHP
[原创]php实现数组按拼音顺序排序的方法
2017/05/03 PHP
js 设置选中行的样式的实现代码
2010/05/24 Javascript
js arguments,jcallee caller用法总结
2013/11/30 Javascript
jquery购物车结算功能实现方法
2020/10/29 Javascript
使用ionic播放轮询广告的实现方法(必看)
2017/04/24 Javascript
基于Vue.js实现tab滑块效果
2017/07/23 Javascript
ztree实现左边动态生成树右边为内容详情功能
2017/11/03 Javascript
nest.js 使用express需要提供多个静态目录的操作方法
2019/10/24 Javascript
解决Vue项目打包后打开index.html页面显示空白以及图片路径错误的问题
2019/10/25 Javascript
vue新建项目并配置标准路由过程解析
2019/12/09 Javascript
微信小程序转化为uni-app项目的方法示例
2020/05/22 Javascript
Python字符串中查找子串小技巧
2015/04/10 Python
Python模拟脉冲星伪信号频率实例代码
2018/01/03 Python
Django中ajax发送post请求 报403错误CSRF验证失败解决方案
2019/08/13 Python
pandas抽取行列数据的几种方法
2020/12/13 Python
Python爬虫开发与项目实战
2020/12/16 Python
法国亚马逊官方网站:Amazon.fr
2020/12/19 全球购物
weblogic面试题
2016/03/07 面试题
WEB控件及HTML服务端控件能否调用客户端方法?如果能,请解释如何调用?
2015/08/25 面试题
软件测试面试题
2015/10/21 面试题
销售心得体会
2014/01/02 职场文书
办理退休介绍信
2014/01/09 职场文书
详细的大学生创业计划书模板
2014/01/27 职场文书
住宅使用说明书
2014/05/09 职场文书
学习保证书100字
2015/02/26 职场文书
我们的节日中秋节活动总结
2015/03/23 职场文书
公司禁烟通知
2015/04/23 职场文书
2015年公司国庆放假通知
2015/07/30 职场文书
教你使用Python获取QQ音乐某个歌手的歌单
2022/04/03 Python
分析SQL窗口函数之取值窗口函数
2022/04/21 Oracle
详解ZABBIX监控ESXI主机的问题
2022/06/21 Servers