应用接入SDK后,SDK采样的数据将按照平台配置的默认值进行上报。SDK上报配置功能支持按照您自己的业务需要来配置SDK上报数据的采样和阈值,本文介绍如何进行各模块的SDK上报配置。
下文以将自定义错误采样率配置为15%为例,介绍如何进行SDK上报配置。
注意
修改其他配置项时,请参见上报配置项说明,找到您要修改的配置项和配置项对应的模块。修改SDK上报配置时,将步骤5替换成目标配置项对应的模块,在步骤8中替换成目标配置项即可完成配置。
单击目标应用下的App端监控。
在控制台左上角选择全部功能 > SDK上报配置。
在筛选区域选择系统。
在各模块采样率配置页签下,单击错误分析。
说明
修改其他配置项时,请参见上报配置项说明,找到目标配置项后,查看其所在的标题,即为模块名。
在错误分析配置页面,打开总开关。
相关模块的总开关,打开会根据采样配置上报数据,关闭则整个模块不会上报数据。
单击创建配置。
在创建配置页面,完成以下配置,然后单击确定。
配置项说明:
配置项 | 说明 |
---|---|
配置项目 | 选择自定义错误采样率。 说明 修改其他配置项时,请参见上报配置项说明,将配置项目配置为目标配置项。 |
自定义错误采样率 | 手动修改为15%。 |
配置名称 | 自定义配置名称,用于标识该配置。 |
筛选条件 | 可选项。如果您的业务场景只需要关注某个或者某几个指标,那么可以配置筛选条件。 |
单击保存修改。
配置项目 | 说明 | Android默认值 | Harmony默认值 | iOS默认值 |
---|---|---|---|---|
是否上传自定义日志 | 崩溃时候是否上传自定义日志,自定义日志会在崩溃详情页面展示。 | 否 | 不支持 | 否 |
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/20 |
coredump采样率 | coredump采样率。 | 0% | 不支持 | 0% |
自定义文件采样率 | 自定义文件采样率。 | 0% | 0% | 不支持 |
是否忽略应用退出时发生的崩溃 | 是否忽略应用退出时发生的崩溃。如果配置为是,须同步配置应用名称。 | 不支持 | 不支持 | 否 |
是否忽略SIGPIPE信号 | 忽略SIGPIPE信号带来的崩溃问题。iOS SDK 需要大于等于 5.1.1 才能支持。 | 不支持 | 不支持 | 否 |
配置项目 | 说明 | 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% |
配置项目 | 说明 | Android默认值 | iOS默认值 |
---|---|---|---|
web_view采样率 | 页面监控(WebView监控)中的各功能,统一按DeviceID进行采样,即一个DeviceID被命中后,页面监控中的所有功能数据都会采集。 | 20% | 20% |
配置项目 | 说明 | 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 | 不支持 |
配置项目 | 说明 | Android默认值 | iOS默认值 |
---|---|---|---|
Dart异常采样率 | Dart异常采样率。 | 50% | 50% |
FPS采样率 | FPS采样率。 | 20% | 20% |
页面加载采样率 | 页面加载采样率。 | 20% | 20% |
FMP采样率 | FMP采样率。 | 20% | 20% |
Channel采样率 | Channel监控采样率。 | 20% | 20% |
慢函数采样率 | 慢函数采样率。如果DAU过大,建议采样上报。 | 100% | 100% |
慢消息采样率 | 慢消息采样率。如果DAU过大,建议采样上报。 | 100% | 100% |
网络采样率 | 网络监控采样率。 | 5% | 5% |
配置项目 | 说明 | 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。 | 不支持 | 100 |
异常文件最大上报个数 | 上报文件数k。无论是过期文件(夹),异常文件(夹),都只上报前k个最大的。
| 20 | 20 |
文件过期时间阈值 | 文件过期时间阈值。单位为天。 | 20 | 30 |
异常文件夹磁盘阈值 | 异常文件夹阈值大小。单位为MB。 | 20 | 20 |
异常文件夹数量阈值 | 异常文件夹子文件数量阈值。 | 不支持 | 20 |
异常磁盘占用阈值 | 异常磁盘数据上报阈值。 | 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 |
如果您需要重点关注某个设备或者某个用户的上报数据,可以通过创建白名单。创建白名单后,该设备或用户的所有功能模块的数据全采样全上报。
单击目标应用下的App端监控。
在控制台左上角选择全部功能 > SDK上报配置。
在筛选区域选择系统。
在设备白名单配置页签下,单击创建白名单。
在创建白名单页面,完成以下配置,然后单击确定。
配置项说明:
配置项 | 说明 |
---|---|
DeviceID | 输入DeviceID。 说明
|
UserID | 输入UserID。 说明
|
到期时间 | 配置过期时间。支持永不过期和选定日期。 说明 如果同一个DeviceID或UserID出现在多条配置中,以最长期限为准。 |