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

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 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日志并进行多维度分析。
目录
相关文章
|
13天前
|
安全 Android开发 数据安全/隐私保护
深入探讨iOS与Android系统安全性对比分析
在移动操作系统领域,iOS和Android无疑是两大巨头。本文从技术角度出发,对这两个系统的架构、安全机制以及用户隐私保护等方面进行了详细的比较分析。通过深入探讨,我们旨在揭示两个系统在安全性方面的差异,并为用户提供一些实用的安全建议。
|
11天前
|
存储 SQL 监控
|
11天前
|
运维 监控 安全
|
14天前
|
监控 关系型数据库 MySQL
分析慢查询日志
【10月更文挑战第29天】分析慢查询日志
35 3
|
14天前
|
监控 关系型数据库 数据库
怎样分析慢查询日志?
【10月更文挑战第29天】怎样分析慢查询日志?
32 2
|
1月前
|
存储 缓存 关系型数据库
MySQL事务日志-Redo Log工作原理分析
事务的隔离性和原子性分别通过锁和事务日志实现,而持久性则依赖于事务日志中的`Redo Log`。在MySQL中,`Redo Log`确保已提交事务的数据能持久保存,即使系统崩溃也能通过重做日志恢复数据。其工作原理是记录数据在内存中的更改,待事务提交时写入磁盘。此外,`Redo Log`采用简单的物理日志格式和高效的顺序IO,确保快速提交。通过不同的落盘策略,可在性能和安全性之间做出权衡。
1630 14
|
1月前
|
存储 消息中间件 大数据
大数据-69 Kafka 高级特性 物理存储 实机查看分析 日志存储一篇详解
大数据-69 Kafka 高级特性 物理存储 实机查看分析 日志存储一篇详解
35 4
|
1月前
|
SQL 分布式计算 Hadoop
Hadoop-19 Flume Agent批量采集数据到HDFS集群 监听Hive的日志 操作则把记录写入到HDFS 方便后续分析
Hadoop-19 Flume Agent批量采集数据到HDFS集群 监听Hive的日志 操作则把记录写入到HDFS 方便后续分析
45 2
|
2月前
|
安全 Android开发 数据安全/隐私保护
探索安卓与iOS的安全性差异:技术深度分析与实践建议
本文旨在深入探讨并比较Android和iOS两大移动操作系统在安全性方面的不同之处。通过详细的技术分析,揭示两者在架构设计、权限管理、应用生态及更新机制等方面的安全特性。同时,针对这些差异提出针对性的实践建议,旨在为开发者和用户提供增强移动设备安全性的参考。
136 3
|
1月前
|
开发工具 Android开发 Swift
安卓与iOS开发环境的差异性分析
【10月更文挑战第8天】 本文旨在探讨Android和iOS两大移动操作系统在开发环境上的不同,包括开发语言、工具、平台特性等方面。通过对这些差异性的分析,帮助开发者更好地理解两大平台,以便在项目开发中做出更合适的技术选择。