要分析奔溃日志需要三个文件:crash日志,symbolicatecrash分析工具,.dSYM符号集

0. 在桌面创建一个crash文件夹

1. 需要Xcode自带的崩溃分析工具symbolicatecrash,这个文件的位置参考:/Applications/Xcode.app/Contents/SharedFrameworks/DTDeviceKitBase.framework/Versions/A/Resources/symbolicatecrash

快速找到的方法:打开finder后右键code.app 显示包内容然后   /Contents/SharedFrameworks/DTDeviceKitBase.framework/Versions/A/Resources/symbolicatecrash

将symbolicatecrash 拷贝到桌面的crash文件夹中

2. 找到崩溃程序对应的.dSYM文件,这个文件是每个打包的程序都唯一对应的,所以每次打测试包的时候就要注意提前保存

寻找.dSYM文件的位置:Xcode->window->organizer 选择Archives(打测试包的时候就在这个位置,可以直接操作)右键show in finder 可以看到你的程序文件,再右键这个文件显示包内容有一个dSYMS文件夹,点击进去,将.dSYM文件拷贝到桌面上的crash文件夹

3.找到你崩溃时的crash文件,位置:Xcode->window->Devices->选中测试手机,点击views Devices Logs,根据时间点找到你的崩溃日志,右键Export 到桌面,再将这个crash文件放入桌面的crash文件夹

4.打开终端,进入你的crash文件夹:/Desktops/crash 然后使用命令:./symbolicatecrash ./*.crash ./*.app.dSYM>symbol.crash 如果出现解析过程就说明解析成功,这个时候再返回你的crash文件夹打开crash文件,就能够看到解析后的crash,可以直接定位奔溃位置,奔溃函数名也能看到

5.如果执行命令失败出现Error:"DEVELOPER_DIR" is not defined at ./symbolicatecrash line 60.

需要先执行export DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer 命令后再执行./symbolicatecrash ./*.crash ./*.app.dSYM>symbol.crash

6.如果出现Error: can't find tool named 'otool' in the macosx SDK or any fallback SDKs at ./symbolicatecrash line 115.参照http://stackoverflow.com/questions/33358799/cant-find-tool-named-otool-in-the-macosx-sdk-or-any-fallback-sdks-at-symbol以及http://www.tuicool.com/articles/VzEBBn

7. 补充说明:

cat ./symbol.crash

可以在终端打开解析后的crash文件,再使用

dwarfdump --lookup 0x000cf358 --arch armv7 appname.app.dSYM/

根据奔溃位置地址信息找到指定位置

Line table dir : '/Users/zhy/Downloads/ios/vlink_app_xunyi/xunYi7/library/ASIHttpRequest'

Line table file: 'ASIDownloadCache.m' line 320, column 3 with start address 0x00000000000cf340

注:关于.dSYM文件,当程序运行之后直接去products中右键show in finder 也能找到

iOS崩溃日志分析-b

1名词解释 1.1. UUID 一个字符串,在iOS上每个可执行文件或库文件都包含至少一个UUID,目的是为了唯一识别这个文件. 1.2. dwarfdump 苹果提供的命令行工具,其中一些功能就是查 ...

[转]IOS 崩溃日志分析

以下是一个crash log示例: // 1: Process Information Incident Identifier: 30E46451-53FD--896A-457FC11AD05F Cr ...

iOS崩溃日志分析

Incident Identifier: 55864905-937C-4172-B435-2ACA13D3070ECrashReporter Key: b85cab13431711060a5fab55 ...

iOS应用崩溃日志分析 iOS应用崩溃日志揭秘

转自:http://www.raywenderlich.com/zh-hans/30818/ios%E5%BA%94%E7%94%A8%E5%B4%A9%E6%BA%83%E6%97%A5%E5%BF ...

【转】iOS应用崩溃日志分析

作为一名应用开发者,你是否有过如下经历?   为确保你的应用正确无误,在将其提交到应用商店之前,你必定进行了大量的测试工作.它在你的设备上也运行得很好,但是,上了应用商店后,还是有用户抱怨会闪退 ! ...

iOS应用崩溃日志分析

转自raywenderlich   作为一名应用开发者,你是否有过如下经历?   为确保你的应用正确无误,在将其提交到应用商店之前,你必定进行了大量的测试工作.它在你的设备上也运行得很好,但是,上了应 ...

iOS crash日志分析

iOS crash日志分析 一. 寻找crash文件:手机崩溃后的ips或者crash文件(ips文件可以直接修改成crash文件,直接改后缀名就可以了),这里说下如何拿到crash文件 1. 把运行 ...

友盟崩溃日志分析工具 - dSYMTools

公司的项目中集成了UM的统计功能,UM统计可以统计app的用户新增,版本分布,日志崩溃等信息,打开错误分析按钮,则可能会看到很多崩溃的日志信息 选择编辑可以选择更多的版本号 点击列表中的一个崩溃日志, ...

iOS崩溃日志ips文件解析

iOS崩溃日志ips文件解析  一 简介 测试组的同事在进行稳定性测试时,通常会遇到一些崩溃,然后他们会将这些崩溃日志(一般是ips格式的文件)反馈给开发进行分析,但是这些ips文件中的内容通常是如下 ...

随机推荐

mybatis入门

1.什么是MyBatis ?      亲爱的度娘是这样说的: MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation ...

《Java程序性能优化》学习笔记 设计优化

豆瓣读书:http://book.douban.com/subject/19969386/ 第一章 Java性能调优概述 1.性能的参考指标 执行时间: CPU时间: 内存分配: 磁盘吞吐量: 网络吞 ...

SQL SERVER中非聚集索引的覆盖,连接,交叉,过滤

1.覆盖索引:select和where中包含的结果集中应存在“非聚集索引列”,这样就不用查找基表了,索引表即可搞定:   2.索引交叉:索引的交叉可以理解成建立多个非聚集索引之间的join,如表实体一 ...

Android 中获取 debug 测试 SHA1 和 release SHA1 证书指纹数据的方法

百度地图开发的时候要申请KEY,需要提供SHA1证书指纹数据 Eclipse eclipse中直接查看:windows -> preferance -> android -> bui ...

fscanf的返回值未成功输入的元素个数 .xml

pre{ line-height:1; color:#38ede1; background-color:#5b2814; font-size:16px;}.sysFunc{color:#008080; ...

MySQL历史版本下载(官方)

http://downloads.mysql.com/archives/community/ 社区版本(开源免费)

Unity 3D使用GameObject创建一个简单的可移动物体

于Unity 3D游戏的开发.游戏脚本需要3D模拟组合,该脚本将被写入阻力3D为了达到效果对象. 以下是一个小实例,使用Unity 3D实现一个可控制移动的小人.小人能够向前.向后.向左和向右移动. ...

关键字中mysql数据库查询条件带中文无结果解决办法

package keyword; import java.io.UnsupportedEncodingException; import java.sql.Connection; import jav ...

linux dd指令

ghost和g4l 安装操作系统,速度太慢,整个过程太冗长乏味了. 安装过程中,需要回答若干问题,系统需要安装无数个软件,创建和写入无数的文件.因为涉及到大量的文件定位和读写,速度一定是快不起来的. ...

Spring AOP的日志记录

现在的项目是Spring+MyBatis,前段时间项目经理让我干了一个活,就是给所有的controller里的所有方法加上日志记录的代码,其实没有多少,也就300来个方法,也没有抱怨什么,一边打着瞌睡 ...

ios崩溃日志收集_iOS 崩溃日志分析(个人总结,最实用)相关推荐

  1. ios崩溃日志收集_iOS崩溃与日志分析

    在iOS开发中经常需要靠记录日志来调试应用程序.解决崩溃问题等,整理常用的日志输出和崩溃日志分析. 最新更新:2018-11-30 基于CocoaLumberjack 的 Swift使用封装库 一.崩 ...

  2. ios友盟错误_iOS之DYSM分析友盟错误信息

    前言: 有很多公司利用友盟来统计错误崩溃日志,方便开发人员查找错误的位置,但是反馈的日志是无法确定到底是哪里发生崩溃的,那么我们如何去查呢? 首先我们看下友盟报错的信息: Paste_Image.pn ...

  3. python生产脚本_生产级部署 Python 脚本,日志收集、崩溃自启,一键搞定

    点击上方" 承香墨影 ",选择"置顶或星标" 第一时间接收最新消息 今天介绍一个生产级的流程管理工具 PM2,通常我们说到 PM2 的时候,都是在说如何部署 N ...

  4. iOS使用 Metrickit 收集崩溃日志

    iOS使用 Metrickit 收集崩溃日志 Metrickit 是什么 MetricKit 是 苹果在 iOS13系统开始引入的用来汇总和分析有关异常和崩溃诊断以及电源和性能指标的每个设备的报告. ...

  5. 容器内应用日志收集方案

    容器化应用日志收集挑战 应用日志的收集.分析和监控是日常运维工作重要的部分,妥善地处理应用日志收集往往是应用容器化重要的一个课题. Docker处理日志的方法是通过docker engine捕捉每一个 ...

  6. 基于kfaka和zookeeper的nginx日志收集平台,项目详细步骤

    目录 一.项目环境: 二.项目介绍: 三.项目步骤 3.1  环境准备 3.1.1 准备好虚拟机 3.1.2  配置好静态ip 3.1.3  修改主机名以及写好域名映射关系 3.1.4  安装基本软件 ...

  7. android日志收集存入mysql_rsyslog+analyzer+mysql实现日志收集展示

    why->what->where->when->who->how 1.为什么要进行日志收集?为什么要用到rsyslog? 日志是我们对系统和应用程序的运行状况分析的根本依 ...

  8. 基于Flume的美团日志收集系统(一)架构和设计

    背景 美团的日志收集系统负责美团的所有业务日志的收集,并分别给Hadoop平台提供离线数据和Storm平台提供实时数据流.美团的日志收集系统基于Flume设计和搭建而成. <基于Flume的美团 ...

  9. 基于Flume的美团日志收集系统-----架构和设计

    问题导读: 1.Flume-NG与Scribe对比,Flume-NG的优势在什么地方? 2.架构设计考虑需要考虑什么问题? 3.Agent死机该如何解决? 4.Collector死机是否会有影响? 5 ...

  10. 深入浅出ELK日志收集系统搭建

    先看一下目录图 背景 试想这么一种场景:Nginx负载了2个Tomcat,那么日志查看就很麻烦了,每次查看日志都要登录2台服务器,挨个搜索,2台还好,如果5台呢?10台呢?那查看日志就可费劲了,所以需 ...

最新文章

  1. 盘点8月的手工作品!
  2. C语言再学习 -- 循环语句
  3. linux内核全局变量重定位,关于可重定位文件中全局变量的一个重定位疑惑,借各位牛刀一用^...
  4. 《机器学习实战》总结
  5. 基于python的随机森林回归实现_PYTHON | 随机森林实战(代码+详解)
  6. noip2014生活大爆炸版石头剪刀布
  7. LeetCode 900. RLE 迭代器(模拟/二分查找)
  8. c++容器之vector
  9. 如何选择B2C电商仓储系统?
  10. ceph 存储 对比_对象存储cleversafe对比ceph有哪些优势?
  11. paip.支付宝即时到账接口改双功能接口.txt
  12. 【Mac】Mac通过反向代理连接内网(教育网)服务器 + 免密登陆
  13. 通过bat来实现 以Notepad++打开某个指定文件
  14. python 抢票程序_程序员硬核Python抢票教程”,帮你抢回家车票
  15. COLA异步任务重复执行?
  16. linux的dispatch函数,DirectFB Dispatch_Write函数缓冲区溢出漏洞(CVE-2014-2977)
  17. Cortex-M3处理器
  18. lucene配置动态域_学位论文查重中如何使用Lucene全文检索
  19. 用AI技术分析情商 川普和克林顿谁更胜一筹?
  20. ggplot2日期时间标度的设置

热门文章

  1. 微信公众号支付失败的各种原因
  2. git Tower 操作记录
  3. 合并两个有序数组(Python)
  4. window环境mysql卸载不干净
  5. 计算机与信息技术基础上机指导答案,信息技术基础学习指导——实验和习题解答(第3版)...
  6. 数学史思维导图_高中数学课堂教学中思维导图的制作运用
  7. 速看,成都市关于促进低效工业用地企业提质增效的信息
  8. iOS 应用内付费(IAP)开发步骤
  9. Linux-DHCP服务器
  10. 计算机3d相册代码,CSS3实现3D旋转相册(示例代码)