MAC/IOS app crash日志符号表还原方法调用

本文详细介绍了如何在Mac上使用 Bugsplat 平台收集的crash日志,通过symbolicatecrash工具手动还原符号表,帮助开发者定位代码错误。步骤包括创建文件夹、导出SymbolicateCrash、设置环境变量并执行命令,最终输出对应代码行的详细信息。
摘要由CSDN通过智能技术生成

MAC/IOS app crash日志符号表还原方法调用

1. Crash日志收集平台简介

2. 手动还原符号表

2.1 准备资料

我们开发经常通过一些crash日志平台收集到一些crash日志,有时候这些日志并没有通过符号表来还原成我们想看到的具体是哪一行代码出错了,这个时候我们需要手动去还原符号表。

下面我以bugsplat平台为例,来讲解手动还原的过程:

首先我通过bugsplat平台日志分析到有一个crash问题,https://app.bugsplat.com/v2/crash?database=Wondershare_VideoEditor_Mac&id=807244 但是这个crash我能够看到的只有那些符号表,没有还原成对应的代码。我可以在网站上看到这么一行:

Explanation:
SIGABRT #0 at 0x7fff9b375f06 Application Specific Information: *** Terminating app due to uncaught exception ‘NSInvalidArgumentException’, reason: ‘-[NSTextView setAutomaticTextCompletionEnabled:]: unrecognized selector sent to instance 0x7fe8b929d420’

2.2 还原步骤

  1. 创建一个新的文件夹,mac下终端输入命令:
mkdir testcrash
  1. 导出symbolicatecrash 可执行文件:

执行下面这句命令后,可以打印出多个对应的文件路径:

find /Applications/Xcode.app -name symbolicatecrash -type f

输入命令的后的结果如下:

 Crash find /Applications/Xcode.app -name symbolicatecrash -type f
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/iOSSupport/Library/PrivateFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash
/Applications/Xcode.app/Contents/Developer/Platforms/WatchSimulator.platform/Developer/Library/PrivateFrameworks/DVTFoundation.framework/symbolicatecrash
/Applications/Xcode.app/Contents/Developer/Platforms/AppleTVSimulator.platform/Developer/Library/PrivateFrameworks/DVTFoundation.framework/symbolicatecrash
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Library/PrivateFrameworks/DVTFoundation.framework/symbolicatecrash
/Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash

选择一个对应的平台即可,我这里是macos 选择第一个即可。

然后,再执行下面的命令,把symbolicatecrash文件拷贝到当前目录

 cp /Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash ./
  1. 把对应的.dSYM, .app, .crash, symbolicatecrash 文件放置在第一步创建的文件夹同一目录中。

  2. 设置环境变量
    终端输入:

export DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer
  1. 还原符号表,导出崩溃日志
./symbolicatecrash plCrashReporter.crashlog  test.dSYM > app.log

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值