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 相关文章推荐
在任意字符集下正常显示网页的方法二(续)
Apr 01 PHP
php中取得文件的后缀名?
Feb 20 PHP
php无限遍历文件夹示例分享
Mar 04 PHP
destoon复制新模块的方法
Jun 21 PHP
php缓冲输出实例分析
Jan 05 PHP
PHP中大于2038年时间戳的问题处理方案
Mar 03 PHP
php对数组内元素进行随机调换的方法
May 12 PHP
php远程下载类分享
Apr 13 PHP
php文件上传类完整实例
May 14 PHP
WordPress过滤垃圾评论的几种主要方法小结
Jul 11 PHP
php依赖注入知识点详解
Sep 23 PHP
详解Laravel设置多态关系模型别名的方式
Oct 17 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
MVC模式的PHP实现
2006/10/09 PHP
php制作中间带自己定义图片二维码的方法
2014/01/27 PHP
PHP开源开发框架ZendFramework使用中常见问题说明及解决方案
2014/06/12 PHP
PHP封装的一个支持HTML、JS、PHP重定向的多功能跳转函数
2014/06/19 PHP
PHP设置头信息及取得返回头信息的方法
2016/01/25 PHP
jquery实现图片等比例缩放以及max-width在ie中不兼容解决
2013/03/21 Javascript
用JavaScript获取DOM元素位置和尺寸大小的方法
2013/04/12 Javascript
JQuery操作三大控件(下拉,单选,复选)的方法
2013/08/06 Javascript
根据身份证号自动输出相关信息(籍贯,出身日期,性别)
2013/11/15 Javascript
js 与 php 通过json数据进行通讯示例
2014/03/26 Javascript
Js实现手机发送验证码时按钮延迟操作
2014/06/20 Javascript
jquery处理页面弹出层查询数据等待操作实例
2015/03/25 Javascript
有关JavaScript中call()和apply() 的一些理解
2016/05/20 Javascript
AngularJS验证信息框架的封装插件用法【w5cValidator扩展插件】
2016/11/03 Javascript
AngularJs表单验证实例代码解析
2016/11/29 Javascript
jQuery无刷新上传之uploadify简单代码
2017/01/17 Javascript
jQuery实现菜单栏导航效果
2017/08/15 jQuery
10分钟彻底搞懂Http的强制缓存和协商缓存(小结)
2018/08/30 Javascript
bootstrap自定义样式之bootstrap实现侧边导航栏功能
2018/09/10 Javascript
node.js调用C++函数的方法示例
2018/09/21 Javascript
BootStrap table实现表格行拖拽效果
2018/12/01 Javascript
通过JS深度判断两个对象字段相同
2019/06/14 Javascript
Vue中添加滚动事件设置的方法详解
2020/09/14 Javascript
对于Python中线程问题的简单讲解
2015/04/03 Python
Python实现读写sqlite3数据库并将统计数据写入Excel的方法示例
2017/08/07 Python
python中join()方法介绍
2018/10/11 Python
python mysql 字段与关键字冲突的解决方式
2020/03/02 Python
一款恶搞头像特效的制作过程 利用css3和jquery
2014/11/21 HTML / CSS
体育比赛口号
2014/06/09 职场文书
处级干部考察材料
2014/12/24 职场文书
联谊会开场白
2015/06/01 职场文书
结婚主持人致辞
2015/07/28 职场文书
小学班级管理心得体会
2016/01/07 职场文书
教师实习自我鉴定总结
2019/08/20 职场文书
Go Gin实现文件上传下载的示例代码
2021/04/02 Golang
梳理总结Python开发中需要摒弃的18个坏习惯
2022/01/22 Python