• 1 开始使用CrashSight
  • 2 异常概览
  • 3 版本趋势
  • 4 崩溃分析、ANR分析、错误分析
  • 5 OOM 分析
  • 6 高级搜索
  • 7 异常配置
  • 8 产品设置

CrashSight页面使用指南

1 开始使用CrashSight

1.1 注册账户

访问CrashSight官网,点击右上角的“登录”选项,跳转至登录页。推荐邮箱注册/手机号注册,同时支持QQ、微信等第三方登录方式。请选择您适合的最佳方式进行注册。 Alt text

注册并登录完成后,点击账户名下拉菜单中的“计费账户”进入账户管理界面。 Alt text

每个账号都会默认绑定一个个人计费账户,在初次进入账户管理界面时,您可以为自己的计费账户命名。CrashSight按MAU(Mounthly Active User)计费,即一个月的上报按设备去重后的数量(CrashSight识别设备的方式可参考Device ID)。点击“立即充值”按钮,即可为您的账户充值。 Alt text

“账户概览”页签展示了您账户余额的使用情况,您可以查看按月或者按项目来查看使用详情,还可以查看历史交易记录。 Alt textAlt text

点击“关联项目”页签,您可以查看与您的账户关联的项目,这些项目会使用您的账户余额。 Alt text

在“成员管理”页签中,您可以点击“邀请新成员”,通过分享链接的方式为您的计费账户添加成员。普通成员仅可以查看“账户概览”中的信息,将成员设为管理员后,他可以使用您的个人计费账户创建项目。 Alt text

1.2 创建项目

访问CrashSight官网,点击右上角的“登录”选项,登录您的账户。登录完成后将自动跳转至“我的产品”页。如果您已经登录,点击您的用户名,即可跳转至“我的产品”页。 Alt text 点击“申请创建项目”按钮,根据提示填写您的项目信息,即可创建一个CrashSight项目。 Alt text 在“我的产品”页中,您还可以访问我们准备的Demo项目。 Alt text

1.3 接入SDK

从“我的产品”页单击进入您的项目,选择左侧选项卡中的“接入引导”。 Alt text “接入引导”已经自动识别了您接入的平台。选择您的引擎,然后跟随页面中显示的三个步骤,即可完成一次简单的接入。

我们强烈推荐您从“接入引导”开始接入CrashSight SDK。如果您需要更加详细的指引或参考信息,可以访问CrashSight帮助文档

2 异常概览

在“异常概览”中,您可以查看当前项目的大盘统计数据。您可先查看头部数据来确认项目中各类异常的发生情况,然后从时间(趋势图)、时段内影响设备数最多的问题(每小时影响设备TOP问题每日影响设备TOP问题)以及应用版本、系统版本、设备机型(排行榜)来多维度分析您项目面临的问题。

2.1 头部数据

头部数据位于异常概览的最顶部,直观反映了当天该项目的崩溃、ANR(仅Android)、错误上报数据。右上方的选项卡可以调节展示的数据,共有三种数据可供选择:
1、今日设备异常率。(今日设备异常率=今日发生异常的设备数/今日启动的总设备数)
2、发生次数。(此处指今日该类异常发生的次数)
3、影响设备数(此处指今日发生该类异常的设备数量)
Alt text 头部数据展示标签还兼具异常概览的总开关的作用,切换选中的异常类型,即可控制趋势图每小时影响设备TOP问题排行榜每日影响设备TOP问题的展示内容。

2.2 趋势图

趋势图按时间顺序展示问题的发生情况,您可以使用头部数据的展示标签来切换趋势图显示的问题类型。 Alt text 您可以选择是否为模拟器(默认模拟器+真机)、版本(默认全版本)、时间(默认今天),对趋势图的数据进行筛选。 Alt text 您可以勾选“开启对比”,对特定版本、特定时间段的数据进行对比。对比功能支持小时级对比和日级对比两种模式。 Alt text 在浏览某一天的数据(例如时间选择“今天”),或者开启小时级对比时,您可以选择“按小时”或“累计”的统计维度。选择“按小时”,图中每个点表示一个小时内的问题数据。 选择“累计”,图中每个点表示从当天0点到该时间点的所有问题数据。 Alt text 趋势图右侧可以选择需要展示的数据,这些数据的计算方式如下:

名称计算方式
设备崩溃率发生问题的设备数/启动的设备数
次数崩溃率问题发生次数/启动次数
发生次数问题发生的次数
影响设备数发生问题的设备数量
启动次数联网上报的启动次数
联网设备数触发联网的设备数

Alt text

2.3 每小时影响设备TOP问题

这里展示了一个小时内影响设备数最多的问题,您可以使用头部数据的展示标签来切换显示的问题类型。在选项卡中可以切换TOP数量、时间范围和版本。 Alt text

2.4 排行榜

排行榜中展示了一段时间内应用版本、系统版本和设备型号维度的Top 5,您可以使用头部数据的展示标签来切换显示的问题类型。排行榜支持切换时间段,按版本号筛选。 可选的排行维度有影响设备数、设备崩溃率、联网设备数。 Alt text 点击标题旁边的按钮即可下载对应排行榜的xlsx文件,内含Top 100数据。 Alt text

2.5 每日影响设备TOP问题

这里展示了一天内影响设备数最多的问题,您可以使用头部数据的展示标签来切换显示的问题类型。在选项卡中可以切换TOP数量、时间范围和版本。在最右侧的一栏可以变更问题的处理状态。 Alt text 开启增加问题过滤条件功能,可以按问题标签和/或问题处理状态筛选问题。 Alt text 可筛选匹配到系统退出关键词的问题。 右侧的“下载数据”按钮可以以xlsx格式下载TOP问题数据。 Alt text

3 版本趋势

在版本趋势页中,您可以选择一个异常类型的一种指标进行时间轴分析。 Alt text 版本趋势共有两种模式,“时段内Top N联网设备版本”模式下,将自动帮您查询异常量最高的Top N问题。您可以设置时间段及Top N的值。 Alt text “自定义对比”模式下,您可以自行配置您需要查看的版本,以及为每个版本单独配置对比起始时间。 Alt text 下方的表格中列举了详细数值,您还可以点击“下载数据”按钮将表格数据以xlsx格式保存到本地。 Alt text

4 崩溃分析、ANR分析、错误分析

崩溃分析、ANR分析、错误分析的查看方式较为相似,本章的4.1 问题列表4.2 问题详情节中将介绍它们通用的查看方法。4.3 崩溃分析4.4 ANR分析节将介绍崩溃分析和ANR分析的独有功能。

4.1 问题列表

选择“崩溃分析”/“ANR分析”/“错误分析”页签即可进入对应问题列表。问题列表列举了所有该类型的问题,您可以提供页面上方的输入框来配置筛选,可用的筛选项有版本、上报时间、处理状态、是否关联缺陷单、异常类型、问题处理人、指定版本的新增问题、指定时间段内的新增问题、问题ID或异常名。如果这些筛选条件不能满足您的需求,您可以点击下方的“高级搜索”链接,跳转至高级搜索页来执行更复杂的筛选。 Alt text

此外,您还可以勾选“开启对比查询”来划定两个筛选范围,并查看它们的补集或交集。 Alt text

下方的列表显示了所有通过筛选的异常问题。CrashSight会自动将问题聚类,列表中每一行代表发生原因相同的一类问题。鼠标移至问题上,单击“快速预览”,即可快速查看该问题的详情。 Alt text

点击“进入问题详情”,跳转至问题详情Alt text

点击右侧“状态变更”,可以设置问题处理人和问题处理状态。 Alt text

点击“创建缺陷单“,即可快速提单。此功能需要在缺陷平台管理配置配置完成后才可使用。 Alt text

点击下方“添加标签”,可为问题添加标签。标签常用于标注问题的某些特征,例如,已知的发生原因(“FD溢出”)、发生问题的范围(“体验服”、“华为专属崩溃”)、发生问题的模块(“libc”、“更新模块”)或者仅仅是一个提示(“紧急!”)。添加的标签可在标签管理中查看和管理。 Alt text

列表标题栏中提供了“数据下载”按钮,可以将所有问题转换为xlsx表格下载到本地。 Alt text

4.1.1 聚类规则

CrashSight会将发生原因相同的上报归入一类,这个过程被称为聚类。CrashSight进行问题聚类的步骤是:

  • 判断问题的每一行堆栈是否为应用堆栈行。
  • 从所有堆栈行中,挑出数行作为关键行。挑选关键行时优先应用堆栈行,有时也会将错误消息作为关键行。
  • 将拥有相同关键行的问题归入一类。

根据问题类型的不同,判断应用堆栈行的方法,以及挑选关键行的方法是不一样的。以下是具体的方法:

4.1.1.1 Android Java崩溃、ANR

Android Java崩溃和ANR的判定方法相同。

判断应用堆栈行的方法:
堆栈中包含bundleID,或者堆栈以com.开头但不以android.、java.、dalvik.、javax.、junit.、org.apache.http.、org.json.、org.w3c.、org.xml.、org.xmlpull.、UnityEngine、com.unity3d.开头

挑选关键行的方法: 按堆栈顺序优先取应用行,没有应用行后按顺序取系统行,最多取三行,以及错误消息

4.1.1.2 Android native崩溃

判断应用堆栈行的方法: 1.堆栈中包含bundleID 2.路径包含/data/data/、app-lib 3.so名字不包含libc.so、libdvm.so、libskia.so、libnvddk_2d_v2.so、libnvwsi.so、libskia.so、libjavacore.so、libc.so、libandroid_runtime.so、app_process且路径不包含/system/且库名包含.so

挑选关键行的方法:

  1. 无native应用堆栈行、无java应用堆栈行: 4行native堆栈 + 1行java堆栈
  2. 无native应用堆栈行、有java应用堆栈行: 1行native堆栈 + 3行java应用堆栈
  3. 有native应用堆栈行: 2行native应用堆栈
  4. 有native应用堆栈行、第一行java为native方法(包含Native Method): 2行native应用堆栈 + 第一行java堆栈

注:对于Android native崩溃,堆栈行中的地址信息参与聚类。

4.1.1.3 iOS崩溃

判断应用堆栈行的方法:

  1. 如果进程名不为空,模块名等于进程名视为应用堆栈行
  2. 如果进程名为空,堆栈不包含main,或者不是最后3行,则视为应用堆栈行

挑选关键行的方法:

  1. 有大于两行的应用行,则取三行应用行,以及错误消息
  2. 不足三行应用行且有应用行,则取应用行和应用行的前后堆栈,最多五行,以及错误消息
  3. 无应用行,取堆栈前的五行,以及错误消息

注:对于iOS崩溃,聚类时不考虑堆栈行中的地址信息。

4.1.1.4 Windows崩溃

判断应用堆栈行的方法:

  1. 模块路径不包含“windows”或者“system”

挑选关键行的方法:

  1. 有大于两行的应用行,则取三行应用行,以及异常名
  2. 不足三行应用行,按堆栈顺序优先取应用行,没有应用行后按顺序取系统行,最多取三行,以及异常名

注:对于Windows崩溃,聚类时不考虑堆栈行中的地址信息。

4.1.1.5 错误

错误的聚类不进行应用堆栈行的挑选。Android错误使用异常消息、异常名以及全部堆栈作为关键行;iOS错误使用异常名以及全部堆栈作为关键行;Windows错误使用异常消息、异常名以及全部堆栈作为关键行。

4.2 问题详情

问题详情展示了一类问题的详细信息。页面最上方展示了该类问题的问题ID、异常名、首次上报异常消息、首次上报出错堆栈、发生次数以及影响设备数。您还可以在这里变更问题处理状态和快速提单。 Alt text

4.2.1 版本信息

第二栏展示了该问题分类的详细信息。“版本信息”列举了各版本发生该问题的情况。 Alt text

4.2.2 上报趋势

“上报趋势”按时间展示该问题发生次数和影响设备数。您可以选择特定的版本和时间跨度来进一步分析上报趋势。 Alt text

4.2.3 设备信息

“设备信息”根据各类机型指标展示该问题发生的比例。您还可以提供上方的筛选条件框进行进一步搜索。 Alt text

4.2.4 用户行为

“用户行为”根据各类用户行为指标展示该问题发生的比例。您还可以提供上方的筛选条件框进行进一步搜索。 Alt text

4.2.5 自定义数据

“自定义数据”根据自定义关键字展示该问题发生的比例。为了使用这个功能,您必须先配置自定义字段分析及展示功能。您还可以提供上方的筛选条件框进行进一步搜索。 Alt text

4.2.6 上报详情

上报详情区域默认展示最近一次上报的详细信息。如果您需要查看更多上报的详细信息,可以点击“查看更多记录”。 Alt text

“复制本条上报的链接”可用于将本条上报分享给项目成员。如果您需要将上报信息分享给非项目成员,可以使用“生成匿名访问链接”,该链接不会暴露您项目的其它信息。 Alt text

4.2.7 出错堆栈

“出错堆栈”选项卡展示了问题的出错堆栈。通常情况下,native崩溃堆栈需要使用符号表进行还原,上传符号表请参考符号表使用处理相关说明。新上报的崩溃会自动开始还原,如果您在崩溃上报后才补充上传了符号表,请点击“重试还原堆栈”来手动触发还原。 Alt text

4.2.8 跟踪数据

“跟踪数据”展示了当前问题的一些详细数据,它包含如下部分:
(1)“基础数据”包含了设备的一些状态参数。
Alt text (2)“自定义数据”是由您配置的键值对,配置方法可参考添加自定义数据(unity)添加自定义数据(unreal)。您还可以在此处设置快捷展示字段,这样它们就能直接显示在上报详情区域。
Alt textAlt text (3)“附件信息”中extraMessage.txt是回调返回的文本信息,配置方法可参考设置回调(unity)设置回调(unreal)Alt text
(4)“客户端上报log”是上报的日志附件,上传方式可以参考设置上传日志回调(unity)设置日志上传回调(unreal)Alt text

4.2.9 跟踪日志

“跟踪日志”中显示了系统日志和用户自定义日志。切换到“System Log”时,显示的是系统日志,由于系统限制,此功能仅Android端可用。 Alt text

切换到“Custom Log”时,显示的是用户自定义日志。您可用参考添加自定义日志(unity)添加自定义日志(unreal)来使用此功能。 Alt text

4.2.10 同设备/用户最近上报

“同设备/用户最近上报”展示了当前发生问题的设备或用户在3天内的所有上报,您可以据此分析特定用户或设备的行为。 Alt text

4.3 崩溃分析

4.3.1 问题重分类预览

“问题重分类预览”提供了问题重新分类的功能。CrashSight默认以堆栈前两行作为问题分类依据,如果您对CrashSight的自动问题分类不满意,您可以在这个选项卡中配置需要跳过的堆栈关键词,以及参与问题分类的堆栈行数,通过调整这些参数来实现更精确的分类。 Alt text

4.3.2 符号表

“符号表”显示了当前崩溃的堆栈还原需要使用的符号表,您可以查看符号表对应的模块名,以及它们的上传状态。" Alt text

4.3.3 崩溃线程寄存器信息

“崩溃线程寄存器信息”显示了崩溃发生时,崩溃线程的寄存器的值。 Alt text

4.3.4 加载模块信息

“加载模块信息”显示了崩溃发生时,各加载段的信息。 Alt text

4.3.5 FD信息

“FD信息”显示了崩溃发生时使用的FD信息。FD已进行分类,您可以查看各类FD的占比。此功能仅Android可用,需要CrashSight SDK 4.2.17或以上版本,使用时请咨询CrashSight开发组。 Alt text

4.4 ANR分析

4.4.1 ANR Message

此处展示了CrashSight收集到的ANR Message。 Alt text

4.4.2 ANR Trace

此处展示了ANR发生时dump的堆栈信息。 Alt text

5 OOM 分析

5.1 推测内存使用量

CrashSight使用应用退出前的最后3秒内收集的内存使用数据,拟合一个线性模型来推测出退出时刻的内存使用量。假设“t”为崩溃发生的秒数,“t - 1”为崩溃发生前的一秒,以此类推。MemoryUsaget 表示设备在“t”时刻的内存使用量。
Alt text

5.2 OOM 判定规则

iOS的OOM判定规则如下: Alt text

6 高级搜索

在高级搜索页中,您可以按各种搜索维度进行问题查询。搜索维度的含义可以参考搜索维度Alt text

您还可以针对特定用户/设备进行分析。切换到“搜索指定用户/设备的上报消息”,输入您想查询的用户ID/设备ID,即可得到该用户/设备的所有上报记录。您还可以切换到时间轴视图,更直观地检视该用户/设备的行为。 Alt textAlt text

7 异常配置

在“异常配置”中,您可以管理本项目的异常处理相关的配置,包括告警配置标签管理符号表管理缺陷平台管理配置用户ID备注配置

7.1 告警配置

这里可以配置告警规则。您可按需要配置告警的触发条件以及通知方式。您最多可为一个项目配置20条不同的告警规则。 Alt text

添加告警规则的配置面板如下,您只需根据提示填写即可完成告警规则的添加,需要注意的是监控时间粒度一栏,它有两方面影响: (1)监控计算的触发频率,例如1小时就是每个整点小时才会计算一次是否达到了告警条件,而不是一达到条件就告警 (2)监控的窗口大小,比如配1小时那么后面的告警条件就是1小时内达到多少次,配置5分钟就是5分钟达到多少次 Alt text

7.2 标签配置

这里可以查看您为问题添加的标签,并可以重命名或删除标签。标签常用于标注问题的某些特征,例如,已知的发生原因(“FD溢出”)、发生问题的范围(“体验服”、“华为专属崩溃”)、发生问题的模块名(“libc”、“更新模块”)或者仅仅是一个提示(“紧急!”)。设置标签的方法详见问题列表Alt text

7.3 符号表管理

此处可查看该项目的符号表。上传符号表请参考符号表使用处理相关说明Alt text

7.4 缺陷管理平台配置

此处可将项目绑定至tapd.cn或Jira。绑定至tapd.cn需要提供API账号、API密钥和Workspace ID,绑定至Jira需要提供Jira账号电子邮箱、JiraApiToken、BaseUrl。 Alt text

7.5 用户ID备注配置

此处可对特定用户ID设置备注,设置方法请点击“查看备注表格式说明”查看。 Alt text

8 产品设置

在“产品设置”中,您可以查看和修改本项目的产品相关设置,包括产品信息成员管理版本管理删除产品变更记录

8.1 产品信息

此处展示了产品的一些基本信息。您可以在这里修改产品名称、产品图标和产品描述。您还可以在此处配置SDK启动状态,通过这个功能可以随时禁用CrashSight SDK,以便及时应对可能存在的风险。 Alt text

8.2 成员管理

此处可以管理产品成员。您可以在此处邀请、更新、删除成员。邀请成员有两种方式:点击“邀请新成员”生成邀请链接,新成员登录后点击链接即可加入项目。 Alt text

点击“角色”一栏的下拉菜单,可以修改成员的权限。各成员的权限如下: Alt text

角色查看个人隐私信息的权限查看大盘统计页面权限异常配置权限产品设置权限查看上报内容的权限
管理员
管理员(数据合规受限)×
开发人员××
普通成员(数据合规受限)×××
运营人员××
受限查看人员××××

注:查看个人隐私信息的权限指的是查看UserID、DeviceID等精确到用户个人的信息的权限。

点击“操作”一栏的删除按钮,即可删除成员。 Alt text

点击表格左侧的复选框,可批量管理成员。 Alt text

8.3 版本管理

此处可以查看产品所有版本号,并可配置隐藏版本。 隐藏的版本不再显示在版本筛选框中,同时,对应的版本会停止初始化和上报。 Alt text

左上角的下拉菜单切换到“隐藏的版本”,即可查看隐藏的版本,并重新显示它们。 Alt text

8.4 删除产品

点击按钮可删除本产品。 Alt text

警告:删除产品后,本产品的所有数据将被彻底删除,不可查看且不可恢复,操作前请仔细确认。

8.5 变更记录

此处显示了本产品的操作记录。 Alt text

操作记录的说明如下表所示。

操作类型操作模块操作内容对应页面操作
用户操作产品设置修改产品信息产品设置-产品信息-保存
用户操作产品设置删除产品产品设置-删除产品
用户操作产品设置Set SDK Disabled StatusSetting-Version Management-Hide-Also disable SDK initialization and reporting
用户操作云控策略配置编辑云控策略异常配置-SDK端云控功能配置-编辑-确定
用户操作云控策略配置新增云控策略异常配置-SDK端云控功能配置-新建配置
用户操作云控策略配置删除云控策略异常配置-SDK端云控功能配置-编辑-删除配置
用户操作云控策略配置修改云控策略优先级异常配置-SDK端云控功能配置
用户操作标签管理添加issue标签崩溃/错误/.. 分析 - 添加标签
用户操作标签管理删除issue标签崩溃/错误/.. 分析
用户操作标签管理添加app标签异常配置-标签管理-新建标签
用户操作标签管理删除app标签异常配置-标签管理-删除
用户操作标签管理修改app标签异常配置-标签管理-重命名
用户操作成员管理删除成员产品设置-成员管理-删除
用户操作成员管理修改成员权限产品设置-成员管理-角色
用户操作成员管理通过企业微信名添加成员产品设置-成员管理-通过企业微信名添加成员
用户操作成员管理修改成员权限层级产品设置-成员管理-权限层级
用户操作成员管理邀请新成员产品设置-成员管理-邀请新成员
用户操作特征分析规则优先级变更特征分析-特征规则管理-显示优先级编辑
用户操作特征分析编辑规则特征分析-特征规则管理-编辑/关闭
用户操作特征分析新增规则特征分析-特征规则管理-新增特征配置
用户操作特征分析删除规则特征分析-特征规则管理-更多-删除规则
用户操作告警配置新增告警配置异常配置-告警配置-新增告警规则
用户操作告警配置修改告警配置异常配置-告警配置-编辑-保存
用户操作告警配置删除告警配置异常配置-告警配置-编辑-删除规则
用户操作Bug提单人工提缺陷单崩溃/错误/.. 分析 - 创建缺陷单
用户操作Bug提单解绑缺陷单崩溃/错误/.. 分析 - 解绑缺陷单
用户操作版本管理展示版本(异常上报生效)产品设置-版本管理-隐藏的版本-显示-同时开启异常上报、运营统计-确定
用户操作版本管理隐藏版本(异常上报生效)产品设置-版本管理-显示的版本-隐藏-确定
用户操作版本管理展示版本(异常上报不生效)产品设置-版本管理-隐藏的版本-显示-确定
用户操作版本管理隐藏版本(异常上报不生效)产品设置-版本管理-显示的版本-隐藏-同时关闭异常上报、运营统计-确定
Last Updated: