【发布时间】:2010-10-26 23:53:06
【问题描述】:
在一些 linux (Ubuntu) 系统上工作,运行一些内部 C 和 C++ 应用程序 (gcc)。
处理的信号很长,例如SIGSEGV 和SIGINT。在信号上,调用堆栈是使用backtrace(3) 和backgrace_symbols(3) 获得的。对于 C++,函数名称甚至使用 abi::__cxa_demangle() 进行了分解。
我的问题是:当这些信号出现时,还有哪些其他 C/C++ API 可以为我们提供更多有用的信息来记录以进行事后调试?还是回溯是唯一“性感”的事情?
【问题讨论】:
-
您确定交互式调试不是更好的选择吗?还是我没有抓住重点?
-
这些设备在客户站点运行。其中一些不是直接可用的,但我们可以尽可能多地记录并将日志文件发送回给我们。
标签: linux gcc segmentation-fault signal-handling