习惯使用gdb分析的朋友,在研究ceph后,都希望同样能通过gdb分析下ceph dameon,哪如何操作呢?下面介绍下步骤;
设置linux core dump
1 | # echo "ulimit -c 1024" >> /etc/profile |
通过上述方法设置了core dump的限制和规则后,就可以生成linux程序的core dump了
通过ceph-run运行ceph命令
1 | ceph-run /usr/bin/ceph-osd --cluster=ceph -i 0 -f & |
注意:ceph安装包最好自己编译,指定--with-debug
通过kill触发ceph daemon的core dump
1 | kill -3 96306 / kill -4 96306 |
然后在之前配置的core dump目录下就能看到生成的core dump file
比如:/home/openstack/ceph/core-ceph-osd-96306-1450097306
通过gdb来分析core dump
1 | gdb /usr/bin/ceph-osd /home/openstack/ceph/core-ceph-osd-96306-1450097306 |