【使用说明】:
1 得到core的全部信息: ./get_core_info.sh application_name core_file
eg: ./get_core_info.sh /etc/houyi/snapshot_tool core.122如果执行成功会在当前目录下产生一个core.snapshot_tool.122.txt 文件
2 ./pstack.sh process_id 会在当前目录下生成对应进程名的堆栈信息并分析生成线程堆栈信息.txt文件
3 ./gcore.sh process_id 得到对应进程号的堆栈信息并生成core文件
【gcore.sh】
command=tmp.command;
echo "generate-core-file" > ${command};
process_id=$1;
gdb -p ${process_id} < tmp.command > & /dev/null;
rm ${command};
【pstack.sh】
command=tmp.command;
process_id=$1;
echo "attach $process_id" > ${command}
echo "thread apply all where" >> ${command}
echo "detach" >> ${command}
echo "quit" >> ${command}
gdb < tmp.command > ${process_id}.txt 2> /dev/null;
rm ${command};