56

有dYMs文件解析日志,和umeng日志分析 bugly解析失败

 4 years ago
source link: https://www.tuicool.com/articles/VZJvEjQ
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

dYMs文件解析

EFbiQfj.png!web 1.首先查找 dYMs文件,Xcode - Window - Organizer 找到 对应的项目 上传的那个版本号,然后show in finder 然后copy出来到桌面 改后缀为 xxx.zip 然后打开 dYMs copy出来到一个新的文件夹(名字aaa)

2.查找xxx.crash可以从在Organizer下载,如果是审核反馈的crash那就在网页点开,会出现一个页面显示一堆log,然后command+s 导出到桌面,改后缀名为 xxx.crash 并放到aaa文件夹里

3.查找symbolicatecrash,find /Applications/Xcode.app -name symbolicatecrash -type f 然后出现好几个 查找iPhone OS的 如果没有的话那就是最后一个,我的是这样的/Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash

4.在终端中进入到aaa文件夹,运行 /Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash XXX.crash XXX.app.dSYM >log.crash 在当前文件解出 log.crash

如果有Error: “DEVELOPER_DIR” is not defined at /usr/bin/symbolicatecrash xxxxxx 执行下 export DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer

附 未解决和解决完后的对比图 Rn6Fnqi.png!web

Qjeei2V.png!web

umeng的错误分析

第一步 下载错误分析工具 并解压zip得到umcrashtool文件,可将umcrashtool与已下载的xxx.csv文件放入同一目录下。

第二步 在terminal中运行umcrashtool命令,参数为错误分析的.csv文件绝对路径,如下: sanzhang$ ./umcrashtool [absolutely_path_of_csv_file] 将umcrashtool与错误分析.csv文件放入同一目录下

第三步 在terminal中运行umcrashtool,提示如下: Usage: umcrashtool [export-file-path],定位后的代码及行数会写入错误分析-symbol.csv文件,与原文件在同一目录下。用工具打开新生成的xxx-symbol.csv文件,便可查看错误发生的源码文件及行数。

注:如果错误分析没有成功,请先确保对应的 xxx.dSYM 文件在 ~/Library/Developer/Xcode/ 或该路径的子目录下。(对于每一个产品发布时archive操作会将dsym文件存放到~/Library/Developer/Xcode/Archives路径下,因此建议保留该路径下的文件,以便后续用工具分析错误。) (摘自umeng官网)

fUNzUvb.png!web 打开终端 复制第一组箭头指向的内容,会出来一个地址, 然后复制出后面的dwarfdump --arch=arm64 --lookup 0x10014b86c "上面的地址" 然后结果中会有 Line table file: 'PermissionsController.m' line 88, column 23 with start address 0x000000010014b86c 是这个文件的第几行

Bugly解析失败

针对Buglycrash,用符号表没有解析出来的,使用系统命令解析

1.先获取dYMs文件-显示包内容-contents-Resources-DWARF ,将里面文件copy到外部文件夹,终端进入该文件

2.bugly复制日志基地址 日志详情 - 其他信息 - App base addr: 复制后面的地址0x00000001042bc000

3.复制要解析的地址- 出错堆栈 - 原始 - 前面地址附图

4.使用终端命令 xcrun atos -o 拷贝出来的文件名称 -l 基地址 (回车后进入调试模式)

5.将复制的 原始地址 输入 回车 解析完毕 结果如下

EFZRZzJ.png!web

Q7vABrv.png!web

fUNRVv7.png!web


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK