1.gdb exe coreFile加载core文件。2. bt命令查看函数调用堆栈。3.多线程程序则t a a b t查看全部线程的堆栈信息。4.结合core dump生成的时间点业务日志分析。
设置core路径,ulimit -c unlimited,echo /tmp/core_test /proc/sys/kernel/core_pattern,查看sysctl -a |grep core。终端mobaxterm.
gdb --pid 可以挂住某个进程调试。全局对象或static对象是在卸载动态库时被析构,多线程场景容易core dump, 修改方法是改成堆上创建的对象。定位问题收集信息有日志,stack,lsof,pmap,netstat。
网友评论