; 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 = 5
; The log file for slow requests
; Default Value: not set
; Note: slowlog is mandatory if request_slowlog_timeout is set
slowlog = /var/log/php-fpm/www-slow.log其中,request_slowlog_timeout = 5 这条配置表示,将执行时间超过5秒的php进程记录进入慢日志,为什么要设置为5秒呢?这是因为我查看了我网页的请求时间,响应时间大概在13秒左右;
slowlog = /var/log/php-fpm/www-slow.log 这条配置指定慢日志的位置。
开启慢日志后,使用命令tail -F /var/log/php-fpm/www-slow.log来实时动态的查看日志内容,同时再继续访问该服务器,然后发现,在慢日志的输出中,有多个函数的执行时间超过了5秒,看来问题就出在这里了。然后我找了开发人员,反映了这个执行较慢的脚本和函数,经过他们的查找,发现是代码中有一个配置没有更新导致的,修改代码后问题解决。
从这个运维事件中,我又积累到了一些实际生产环境中的运维经验,这一点是我值得记录的地方,可能这篇文章在许多大牛的眼里就是渣渣,但解决这个问题的过程与经验对于我来说是真正的宝贵财富,我也相信,只要我一点一滴的记录、积累,我也会变成一只大牛的。