You need to enable JavaScript to run this app.
导航
SDK上报配置
最近更新时间:2024.12.03 10:24:38首次发布时间:2022.07.13 11:33:21

应用接入SDK后,SDK采样的数据将按照平台配置的默认值进行上报。SDK上报配置功能支持按照您自己的业务需要来配置SDK上报数据的采样和阈值,本文介绍如何进行各模块的SDK上报配置。

注意事项

  • 崩溃数据比较重要,默认全采样全上报,不支持配置采样率,只支持配置打开或者关闭。
  • 性能相关数据支持配置采样,命中采样的数据才会上报,没有命中不会上报。业务配置采样比例一般根据DAU计算,如果希望采样到有效的性能数据,一般需要保证有几十万的用户基数。
  • 修改SDK上报配置后,不会立即生效。客户端会每几小时定时拉取上报配置并缓存到本地。
  • 通过配置开关可以控制是否开启相关能力和数据采集上报,例如可以通过磁盘监控和内存优化等开关和采样控制磁盘和内存数据的采集上报。

模块采样配置

步骤一:打开采样开关

  1. 在控制台左上角选择全部功能 > SDK上报配置
  2. 选择系统,打开目标模块的采样开关。

    注意

    打开采样开关,会根据采样配置上报数据,关闭则整个模块不会上报数据。

    Image

步骤二:配置采样上报策略

  1. 打开模块采样开关后,单击创建配置
  2. 创建配置页面,按需配置模块的上报策略。
    Image
    • 配置项目:请根据业务需求,配置不同模块的采样上报策略。
    • 筛选条件:可选项。如果您的业务场景只需要关注某个或者某几个指标,那么可以配置筛选条件。
      例如,配置App版本为1.1.4,那么SDK就只采集App版本为1.1.4的数据,在这些数据中随机选择15%(采样率)的数据进行上报。
  3. 配置完成后,单击保存修改

模块配置项说明

崩溃分析

配置项目

说明

Android默认值

Harmony默认值

iOS默认值

是否上传自定义日志

崩溃时候是否上传自定义日志,自定义日志会在崩溃详情页面展示。

不支持

APMPlus日志崩溃上报采样率

崩溃时是否采集APMPlus日志。默认不采集,如果需要采集,请配置采样率。

说明

APMPlus日志采样率只控制设备是否记录APMPlus日志,不控制是否上传日志。
当您配置APMPlus日志上报采样率为100%时,如果没有配置APMPlus日志回捞任务,也不会上报APMPlus日志,且不会产生费用。当您需要回捞日志时,可以配置回捞任务。具体操作,请参见回捞

0

不支持

0

采集前N秒内自定义日志

采集崩溃前N秒的自定义日志,范围[0~300],单位s。

30

不支持

30

是否上报extension崩溃日志

是否上报extension崩溃日志。

不支持

不支持

zombie对象采样率

zombie对象监控采样率,有性能损耗,建议线上少量开启。

不支持

不支持

0%

zombie对象分析白名单

当白名单中的类dealloc时,会保存堆栈,用于分析zombie问题。书写格式参考:["MyClass","MyClass2"]。

不支持

不支持

[]

zombie对象采集白名单

只监控白名单中的类发生的zombie问题。书写格式参考:["MyClass","MyClass2"]。

不支持

不支持

[]

dealloc堆栈最大数量

最大保存多少个对象dealloc的堆栈,参考“zombie对象分析白名单”。堆栈数量越多,占用内存越大。

不支持

不支持

100

是否开启寄存器分析

开启寄存器分析后,崩溃时会记录寄存器相关信息并上报。开启后会增加崩溃日志大小,可能降低上报成功率。

不支持

不支持

是否开启异步调用栈分析

开启异步调用栈分析后,会记录异步调用信息,存在一定性能损耗。

不支持

不支持

是否开启栈内存分析

开启栈内存分析后,崩溃时会记录栈内存相关信息并上报。开启后会增加崩溃日志大小,可能降低上报成功率。

不支持

不支持

栈内存分析最大数量

栈内存最大数量,数量越大,崩溃日志越大,可能降低上报成功率。

不支持

不支持

256

GWPASan采样率

GWPASan采样率。

不支持

不支持

0%

GWPASan最大同时分配的个数

GWPASan记录内存块的创建和销毁过程的最大个数。

不支持

不支持

1024

GWPASan内存分配采样率

GWPASan记录内存块的采样率。
计算公式:1/SampleRate。举例:开辟内存单元[m1, m2, m3, .. , m1000],如采样率100%,会记录所有的内存使用情况,如采样率为10%,会记录[m1, m10, m20, m30, ... , m1000]的值。

不支持

不支持

1/20

coredump采样率

coredump采样率。

0%

不支持

0%

自定义文件采样率

自定义文件采样率。

0%

0%

不支持

是否忽略应用退出时发生的崩溃

是否忽略应用退出时发生的崩溃。如果配置为是,须同步配置应用名称。

不支持

不支持

是否忽略SIGPIPE信号

忽略SIGPIPE信号带来的崩溃问题。iOS SDK 需要大于等于 5.1.1 才能支持。

不支持

不支持

MetricKit

配置项目

说明

Android默认值

iOS默认值

MetricKit稳定性采样率

MetricKit稳定性采样率。

不支持

20%

MetricKit性能采样率

MetricKit性能采样率。

不支持

0%

崩溃防护

配置项目

说明

Android默认值

iOS默认值

崩溃防护采样率

控制崩溃防护模块数据上报的采样率。

注意

当采样率为0%时,该模块不会上报数据,但功能并不会关闭。若想关闭功能,请调整“崩溃防护子模块开关”配置。

不支持

100%

崩溃防护子模块开关

控制崩溃防护子模块是否开启,详情请参见崩溃防护

不支持

63

数组创建防护逻辑规则

控制崩溃防护对数组的防护规则。详情请参见崩溃防护

  • 严格模式:优先保证数组索引的正确性。
  • 兼容模式:优先保证数组创建成功。

不支持

严格模式

崩溃防护数

配置进程单次运行可防护的崩溃个数。防护次数超过这个数值后将不再进行防护。

5

不支持

错误分析

配置项目

说明

Android默认值

iOS默认值

自定义错误采样率

自定义错误上报的采样率。

100%

10%

Native自定义异常采样率

Native自定义异常采样率。

0%

不支持

GWPASan采样率

GWPASan采样率。

0%

不支持

卡顿分析

配置项目

说明

Android默认值

iOS默认值

卡顿采样率

卡顿数据上报的采样率。

20%

5%

卡顿阈值

卡顿定义的阈值,耗时超过阈值,被认为是卡顿,会采集堆栈。单位为秒。

2.5

2.5

严重卡顿阈值

严重卡顿定义的阈值,耗时超过阈值,被认为是严重卡顿,会采集堆栈。单位为秒。

4

不支持

用户体验

配置项目

说明

Android默认值

iOS默认值

启动采样率

启动监控数据上报的采样率。

20%

10%

APP更新是否计入首次启动

定义首次启动是否包括App更新。

prewarm判定阈值

通过此阈值判断需要忽略启动分析的异常阶段。详情请参见用户体验-启动分析

不支持

1500

页面采样率

页面体验数据的采样率:包括页面响应耗时,流畅性和丢帧。

20%

10%

页面生命周期各阶段间隔阈值

可以通过此阈值筛除掉各生命周期间的异常值。单位:秒。详情请参见用户体验

不支持

20

页面分析

配置项目

说明

Android默认值

iOS默认值

web_view采样率

页面监控(WebView监控)中的各功能,统一按DeviceID进行采样,即一个DeviceID被命中后,页面监控中的所有功能数据都会采集。

20%

20%

新H5监控

配置项目

说明

Android默认值

iOS默认值

新H5监控采样率

新H5监控采样率。

20%

20%

内存优化

配置项目

说明

Android默认值

iOS默认值

OOM分析采样率

上报内存文件的采样率,影响泄露、大对象、单设备查询的数据量。

100%

5%

内存指标采样率

OOM趋势里扩展指标的采样率。

10%

10%

启动日志收集的内存占用比例

内存占比大于"启动阈值",才会上报内存异常时的内存文件。

100%

不支持

内存泄漏检测采样率

控制内存泄漏兜底方案是否开启泄露检测。

100%

不支持

内存泄漏兜底采样率

控制内存泄漏兜底方案是否进行泄露兜底。

0%

不支持

C++本地符号化是否开启

开启后,会在本地解析出C++对象的符号,对性能会有一定影响。

不支持

内存采集启动阈值

内存超过"启动阈值",才会上报内存异常时的日志文件。单位为MB。
有些场景,内存占用没有达到阈值就被系统中断,这时可以修改此值。

不支持

1024

本模块允许占用的最大内存

MemoryGraph对自身占用的内存大小进行了限制。采集MemoryGraph时,允许APM SDK占用的最大内存。超出后会触发降级。此时,SDK仅采集节点信息不采集引用信息。单设备查询表现为只有聚类列表,没有引用树、支配树等信息。单位为MB。

不支持

200

日志文件占用的最大磁盘空间

SDK对生成的内存快照文件占用的磁盘空间进行了限制。MemoryGraph单个文件允许占用的最大磁盘空间,超出后仅采集节点信息不采集引用信息,仅可查看聚类列表,没有引用树、支配树的信息。单位为MB。

注意

不要把阈值设置过大,否则下次启动上传时内存文件加载可能会再次触发OOM。更多信息,请参见日志文件占用的最大磁盘空间阈值如何调整?

不支持

250

单用户单日触发次数上限

对于单台设备,每天可以触发MemoryGraph采集的最大次数,如果数值过大,会影响用户的使用体验。单位为次/天/人。

不支持

10

单设备两次采集的间隔

对于单台设备,一次使用期间两次内存分析之间最小的时间间隔。单位为分钟。

不支持

20

单设备两次采集的内存增额

对于单台设备,一次使用期间物理内存增加的占用大于该数值,才触发下一次采集。单位为MB。

不支持

200

网络分析

配置项目

说明

Android默认值

iOS默认值

网络采样率

网络监控数据上报的采样率。
命中的网络数据会在网络错误和错误报警策略中生效。

5%

5%

断网时是否上报

当断网时产生的数据,是否在网络恢复后上报。

网络错误是否全量上报

网络错误是否全量上报,如果是,那么网络错误“无视”采样率,一定会上报,可以在单点(日志查询)里面查到网络错误。

电量分析

配置项目

说明

Android默认值

iOS默认值

数据采集间隔

电量指标采集周期。单位为分钟。

5

不支持

后台是否采集

App在后台时是否采集电量指标。

不支持

电量监控整体采样率

电量数据整体的采样率。

10%

不支持

电量异常归因上报采样率

电量异常数据上报的采样率。

50%

不支持

定位单次使用最长时长

定位单次使用多久当作异常上报。单位为秒。

120

不支持

定位10分钟内获取次数

定位10分钟内使用几次当作异常上报。

4

不支持

定位10分钟内查询时长

定位10分钟内使用多久当作异常上报单位为秒。

240

不支持

wake lock单次持有时长

wake lock 单次持有多久当作异常上报。单位为秒。

5

不支持

wake lock10分钟内获取次数

wake lock 10分钟内获取几次当作异常上报。

240

不支持

wake lock10分钟内持有时长

wake lock 10分钟内持有多久当作异常上报。单位为秒。

120

不支持

Alarm(wake_up类型)10分钟内唤醒次数

Alarm(wake_up类型) 10分钟内唤醒几次当作异常上报。

5

不支持

Alarm10分钟内唤醒次数

Alarm 10分钟内唤醒几次当作异常上报。

10

不支持

CPU监控

配置项目

说明

Android默认值

iOS默认值

CPU指标上报采样率

CPU指标上报采样率。

5%

不支持

应用在前台的cpu数据采样频率

前台时的CPU指标采集周期。单位为秒。

120

不支持

应用在后台的cpu数据采样频率

后台时的CPU指标采集周期。单位为秒。

600

不支持

应用的数据聚合(将采集的数据进行加工)/上报频率

应用聚合数据的上报周期。单位为秒。

120

不支持

CPU异常数据上报采样率

CPU异常数据上报采样率。

5%

不支持

应用在后台的进程CPU使用速率异常阈值

后台时,CPU使用速率高于该值时为异常。

2

不支持

应用在前台的进程CPU使用速率异常阈值

前台时,CPU使用速率高于该值时为异常。

3

不支持

线程CPU使用率异常阈值

线程CPU使用率高于该值时为异常。

0.05

不支持

控制是否收集所有进程的cpu异常

是否收集所有进程的CPU异常,如果选择否,则进行随机采样。

不支持

如果主线程超过异常阈值时收集主进程堆栈采样率

主线程CPU异常时,收集主线程的堆栈信息的采样率。

5%

不支持

CPU异常采样率

CPU异常采样率。

不支持

20%

CPU异常阈值

60s内平均CPU采样率超过该阈值,则认为发生了CPU异常。

不支持

0.8

线程堆栈抓取CPU阈值

当某个线程占用的CPU超过该阈值时,对此线程进行抓栈

不支持

0.05

线程堆栈抓取时是否需要挂起线程

抓取线程堆栈时,是否需要挂起线程,挂起时抓栈更加准确,但性能损耗会增加。

不支持

CPU指标采样率

CPU指标采样率。

不支持

10

CPU指标采集时间间隔

CPU指标采集的周期。单位为秒。

不支持

30

磁盘监控

配置项目

说明

Android默认值

iOS默认值

磁盘指标采样率

磁盘指标的采样率。

10%

10%

磁盘异常采样率

磁盘异常的采样率。

10%

10%

磁盘采集时间间隔

两次磁盘采集之间的时间差值,单位为小时。

不支持

24

磁盘文件占用分析阈值

触发磁盘文件占用分析的阈值。单位为MB。
超过阈值时,才会上报过期文件、异常文件和top占用文件。

不支持

100

异常文件最大上报个数

上报文件数k。无论是过期文件(夹),异常文件(夹),都只上报前k个最大的。

  • 过期文件(夹)排序的依据是过期时间大小
  • 异常文件(夹)排序的依据是文件的大小

20

20

文件过期时间阈值

文件过期时间阈值。单位为天。
超过了这个阈值的文件才会作为过期文件被上报。

20

30

异常文件夹磁盘阈值

异常文件夹阈值大小。单位为MB。
只有超过了这个阈值才会触发异常文件夹的上报。

20

20

异常文件夹数量阈值

异常文件夹子文件数量阈值。
当子文件数量超过了这个阈值会当做异常文件夹上报。

不支持

20

异常磁盘占用阈值

异常磁盘数据上报阈值。
只有App数据总大小超过这个阈值,才会采集文件详细数据。单位为MB。

100

不支持

流量监控

配置项目

说明

Android默认值

iOS默认值

流量指标监控采样率

流量指标监控采样率。

5%

不支持

流量异常监控采样率

流量异常监控采样率。

5%

不支持

后台10分钟流量异常阈值

后台10分钟流量异常阈值。单位MB。

50

不支持

10分钟异常流量阈值

10分钟异常流量阈值。单位MB。

500

不支持

流量异常的URL大小最小值

流量异常的URL大小的最小值。单位KB。

0

不支持

自定义文件

配置项目

说明

Android默认值

iOS默认值

主动上报自定义日志采样率

控制主动上报Vlog/Alog日志的采样情况,防止后端文件堆积。

100%

100%

APMPlus日志采样率

自定义APMPlus日志的采样率,APMPlus日志包括APMPlus SDK内置打点的异常、性能、网络、事件等日志数据。

100%

0%

用户指标

配置项目

说明

Android默认值

iOS默认值

用户使用时长采样率

用户使用时长采样率。

2%

不支持

后台时长采样率

后台时长采样率。

1%

不支持

应用退出原因

配置项目

说明

Android默认值

iOS默认值

应用退出采样率

应用退出采样率。

1%

不支持

通用设置

配置项目

说明

Android默认值

iOS默认值

配置过期时间

采样配置在端上的过期时间。平台更新SDK采样配置后,端上在上次配置过期后,才会重新拉取配置。单位为秒。

3600

3600

数据上报间隔

端上SDK会根据上报间隔周期轮询上报数据,影响性能指标、事件、网络等模块。单位为秒。

60

60

配置白名单

如果您需要重点关注某个设备或者某个用户的上报数据,可以通过创建白名单。创建白名单后,该设备或用户的所有功能模块的数据全采样全上报。

  1. 登录应用性能监控全链路版控制台

  2. 单击目标应用下的App端监控

  3. 在控制台左上角选择全部功能 > SDK上报配置

  4. 在筛选区域选择系统。

  5. 设备白名单配置页签下,单击创建白名单
    Image

  6. 创建白名单页面,完成以下配置,然后单击确定
    Image
    配置项说明:

    配置项

    说明

    DeviceID

    输入DeviceID。

    说明

    • 配置DeviceID后,当前DeviceID的所有功能模块的数据全采样全上报。
    • 同时配置DeviceID和UserID,只要满足其中一个,所有功能模块的数据全采样全上报。

    UserID

    输入UserID。

    说明

    • 配置UserID后,当前UserID的所有功能模块的数据全采样全上报。
    • 同时配置DeviceID和UserID,只要满足其中一个,所有功能模块的数据全采样全上报。

    到期时间

    配置过期时间。支持永不过期选定日期

    说明

    如果同一个DeviceID或UserID出现在多条配置中,以最长期限为准。