开启请求慢日志。启用后Manager
进程会设置一个时钟信号,定时侦测所有Task
和Worker
进程,一旦进程阻塞导致请求超过规定的时间,将自动打印进程的PHP
函数调用栈。
底层基于ptrace
系统调用实现,某些系统可能关闭了ptrace
,无法跟踪慢请求。请确认kernel.yama.ptrace_scope
内核参数是否0
。
array(
'request_slowlog_file' => '/tmp/trace.log',
)
与trace_event_worker
和request_slowlog_timeout
配置项配合使用。
1.10.0
或更高版本Task
进程,通过增加trace_event_worker => true
来开启对Worker
进程的跟踪通过request_slowlog_timeout
来设置请求超时时间,单位为秒。
array(
'request_slowlog_timeout' => 2, //2秒
'request_slowlog_file' => '/tmp/trace.log',
'trace_event_worker' => true, //跟踪 Task 和 Worker 进程
)