php-fpm 如何 core dump

提醒:本文最后更新于 3051 天前,文中所描述的信息可能已发生改变,请仔细核实。

简单介绍下,如何对php-fpm进行调试。也可以看官方说明

首先一点,需要打开debug参数,如果编译的时候没有打开,需要重新编译,编译时添加参数:

--enable-debug

设置内核core dump出来的存放路径(注意目录要有权限给php写):

echo "/tmp/core.%e.%p.%t" > /proc/sys/kernel/core_pattern

设置core dump出来的文件大小不做限制:

ulimit -c unlimited

关闭core dump只需要将大小限制为0就不会输出了:

ulimit -c 0

获得core dump文件,用gdb进行调试,比如:

gdb /usr/local/php/sbin/php-fpm /tmp/core.php-fpm.10253.1451404800

即可看到信息,找到错误原因,提交bug,或自行修复。

目前PHP 7处于Debug模式,性能下降了100%。。。

以上方法适用其他程序,不局限于php-fpm。

转载请注明转自:kn007的个人博客的《php-fpm 如何 core dump