分析崩溃日志

ARCS系统运行由于软件存在缺陷,可能会致使控制器软件aubo_control或者示教器软件aubo_scope崩溃。为了方便定位到软件崩溃的问题并解决。我们在两个可执行程序(aubo_controlaubo_scope)中集成了崩溃日志生成库backwardbreakpad,前者可以生成崩溃线程的简单堆栈信息(纯文本格式,可以直接阅读),而后者可以将崩溃时所有线程的对战信息以minidump的格式保存,需要通过专门的工具minidump_stackwalk查看

  • aubo_control崩溃日志保存目录: ~/arcs_ws/.crash/aubo_control_xxxxxx~/arcs_ws/.crash/aubo_control/xxxxx.dmp
  • aubo_scope崩溃日志保存目录: ~/arcs_ws/.crash/aubo_scope/aubo_scope_xxxxxx~/arcs_ws/.crash/aubo_scope/xxxxx.dmp

  • 拷贝 minidump_stackwalk/usr/bin ,如果不想污染系统目录也可以拷贝到其他目录,只有执行的时候能够索引到即可

  • 执行脚本
Usage: minidump_stackwalk [options] <minidump-file> [symbol-path ...]

Output a stack trace for the provided minidump

Options:

  -m         Output in machine-readable format
  -s         Output stack contents
  -c         Output thread that causes crash or dump only
  -b         Brief of the thread that causes crash or dump

cd ~/arcs_ws/log/.crash
minidump_stackwalk -c -s -b aubo_control/390c31bb-526c-4791-9247b68c-efff7da2.dmp /opt/arcs/0.28.0-alpha.29/.symbols

要注意替换 .dmp 文件(从aubo_control的崩溃文件中提取)和.symbols目录(替换ARCS版本)

results matching ""

    No results matching ""