iOS 友盟崩溃日志分析——Header

简介: iOS 友盟崩溃日志分析——Header

崩溃日志分为Header区、Exception Information区、Diagnostic Messages区、Exception Backtrace区、每个线程堆栈区、崩溃线程状态区、二进制文件列表区。


1684481562772.png


Header区


每个崩溃日志都有Header区,Header区包含了app崩溃时所处的场景。

友盟崩溃日志原文:

Incident Identifier: F538A5BE-56D2-4549-9775-3918F3ADD0A6
CrashReporter Key:   77062eac70b0efafc821ecfffbf9305892da9f59
Hardware Model:      iPhone13,2
Process:         App名称 [98889]
Path:            /private/var/containers/Bundle/Application/6F79943F-890D-4232-8102-FAC39675E352/xxx.app/xxx
Identifier:      com.xxx.xxx
Version:         2.3.2
BundleVersion:    4
k_crash_ver:    1.3.8
UDID:      2FCB056A-52F7-4ABD-B1B2-E32A2429666B
Code Type:       ARM-64
Parent Process:  ? [1]
Date/Time:       2022-11-30 11:01:07.328 +0800
OS Version:      iOS 16.1 (20B82)
Report Version:  104
Exception Category: mach
Exception Type:  EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x0000000191479af0
Crashed Thread:  0


分析:


header中的字段可以包含以下信息:

Incident Identifier:崩溃报告的唯一标识符

CrashReporter Key: 每个设备的匿名标识符。来自同一设备的两个报告包含相同的值。该标识符在重装系统时重置。

Hardware Model:运行程序的设备型号

Process:崩溃进程的可执行文件名。这与应用程序信息属性列表中的CFBundleExecutable值匹配。括号中的数字是进程ID。

Path:可执行文件在磁盘上的位置。macOS用占位符值替换用户可识别的路径组件,以保护隐私。

Identifier:崩溃进程的CFBundleIdentifier。如果二进制文件没有CFBundleIdentifier,则此字段包含进程名称或占位符值。

Version:App版本号

BundleVersion:构建版本号

k_crash_ver:友盟SDK版本号

UDID:设备的唯一设备识别符

Code Type:崩溃进程的CPU架构。该值是ARM-64、ARM、X86-64或X86之一。

Parent Process:启动崩溃进程的进程的名称和进程ID(方括号中)。

Date/Time:崩溃的日期和时间

OS Version:发生崩溃的操作系统版本,包括内部版本号。

Report Version:日志版本

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
1月前
|
存储 分布式计算 监控
【Flume】Flume 监听日志文件案例分析
【4月更文挑战第4天】【Flume】Flume 监听日志文件案例分析
|
2月前
|
搜索推荐 Android开发 iOS开发
安卓与iOS系统的用户界面设计对比分析
本文通过对安卓和iOS两大操作系统的用户界面设计进行对比分析,探讨它们在设计理念、交互方式、视觉风格等方面的差异及各自特点,旨在帮助读者更好地理解和评估不同系统的用户体验。
31 1
|
3月前
|
Android开发 数据安全/隐私保护 iOS开发
安卓与iOS系统的发展趋势与比较分析
【2月更文挑战第6天】 在移动互联网时代,安卓和iOS系统作为两大主流移动操作系统,各自呈现出不同的发展趋势。本文将从技术角度出发,对安卓和iOS系统的发展方向、特点及未来趋势进行比较分析,以期为读者提供更深入的了解和思考。
43 4
|
12天前
|
存储 监控 关系型数据库
PHP编写的电脑监控软件:用户登录日志记录与分析
使用PHP编写简单但功能强大的电脑监控软件,记录用户登录日志并进行分析。代码示例展示了如何获取并存储用户IP地址和登录时间到数据库,然后进行登录数据的分析,如计算登录频率和常见登录时间。此外,还介绍了如何通过定时任务自动将监控数据提交到网站,以便实时监控用户活动,提升系统安全性和稳定性。
37 0
|
13天前
|
数据可视化
R语言两阶段最小⼆乘法2SLS回归、工具变量法分析股息收益、股权溢价和surfaces曲面图可视化
R语言两阶段最小⼆乘法2SLS回归、工具变量法分析股息收益、股权溢价和surfaces曲面图可视化
|
18天前
|
机器学习/深度学习 前端开发 数据挖掘
工具变量法(两阶段最小二乘法2SLS)线性模型分析人均食品消费时间序列数据和回归诊断(下)
工具变量法(两阶段最小二乘法2SLS)线性模型分析人均食品消费时间序列数据和回归诊断
223 11
|
24天前
工具变量法(两阶段最小二乘法2SLS)线性模型分析人均食品消费时间序列数据和回归诊断2
工具变量法(两阶段最小二乘法2SLS)线性模型分析人均食品消费时间序列数据和回归诊断
|
24天前
|
机器学习/深度学习 前端开发 数据挖掘
R语言计量经济学:工具变量法(两阶段最小二乘法2SLS)线性模型分析人均食品消费时间序列数据和回归诊断
R语言计量经济学:工具变量法(两阶段最小二乘法2SLS)线性模型分析人均食品消费时间序列数据和回归诊断
|
1月前
|
SQL 存储 监控
日志问题精要:分析与总结
该文档讲述了应用系统日志记录的重要性和规则。主要目的是记录操作轨迹、监控系统状态和回溯故障。日志记录点包括系统入口、调用其他模块、调用结束、出口和出错时。内容应遵循UTF-8编码,避免敏感信息,按INFO级别记录,及时、完整且安全。日志输出要控制频率和长度,不影响系统性能,并按策略备份和清理。日志等级分为DEBUG、INFO、WARN、ERROR和FATAL。日志文件应有明确目录结构,大小有限制,并定期清理。注意事项包括输出异常堆栈、避免打印对象实例的hashCode、选择合适的日志框架和格式,并支持动态修改日志级别。还要实现链路追踪,确保在多线程环境中正确记录日志。
26 0
|
2月前
|
存储 监控 NoSQL
【Redis技术专区】「优化案例」谈谈使用Redis慢查询日志以及Redis慢查询分析指南
【Redis技术专区】「优化案例」谈谈使用Redis慢查询日志以及Redis慢查询分析指南
37 0