Home > Backend Development > PHP Tutorial > How to enable slow log configuration in php-fpm?

How to enable slow log configuration in php-fpm?

不言
Release: 2023-04-03 14:20:02
Original
1925 people have browsed it

This article introduces to you how to enable the slow log configuration in php-fpm? It has certain reference value. Friends in need can refer to it. I hope it will be helpful to you.

Although nginx accesslog can record the time spent by users accessing a certain interface or web page, it cannot clearly track which location or function is slow, so through php-fpm slow log, slowlog settings can allow We can easily see which php processes are too slow and cause website problems

There is a parameter request_slowlog_timeout in the configuration file of php-fpm.conf which is described like this

; 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
Copy after login

When request_slowlog_timeout is set to a specific second, request_slowlog_timeout =1 means that if any script execution time is greater than 1 second, the script will be recorded in the slow log file

request_slowlog_timeout =0 means closed Slow log output.

The slow log file location is in the log folder under the PHP installation directory by default, and can be specified by modifying the slowlog = log/$pool.log.slow parameter.

; 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
Copy after login

Example of php-fpm slow log, the slow log will record the process number, script name, specific file and line of code, which function execution time has expired long.

[27-May-2016 13:20:37] NOTICE: child 16683 stopped for tracing
[27-May-2016 13:20:37] NOTICE: about to trace 16683[27-May-2016 13:20:37] NOTICE: finished trace of 16683[27-May-2016 13:20:37] WARNING: [pool www] child 16720, script '/Data/webapps/test/public/index.php' (request: "POST /index.php/test/test/") executing too slow (1.204894 sec), logging
Copy after login

request_slowlog_timeout and slowlog need to be set at the same time. When request_slowlog_timeout is turned on, slowlog needs to be turned on at the same time. The slow log path needs to be created manually.

Specifically enable php- fpm slow log steps:

cd /apps/phpvi /apps/php/etc/php-fpm.conf
去掉request_slowlog_timeout 、slowlog的前缀分号';',设置request_slowlog_timeout =1;
:wq
保存退出
创建慢日志目录mkdir -p /apps/php/etc/log
重启php-fpmkillall php-fpm/apps/php/sbin/php-fpm
Copy after login

Recommended related articles:

Code implementation of constructor and destructor methods in php

Summary of commonly used functions and global variables in PHP (recommended)

The above is the detailed content of How to enable slow log configuration in php-fpm?. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template