- 文档首页
应用性能监控全链路版
用户指南
客户端监控
App 端监控
SDK 接入
Android SDK 接入
Android 组件监控 SDK 接入
Android SDK 接入
Android 组件监控 SDK 接入
Android 组件监控 SDK 接入
如果您的业务本身是一个SDK,想监控自身的稳定性或进行自定义事件打点,可以根据本文接入相关能力。接入SDK后,验证数据上报成功,即可在应用性能监控全链路版平台上使用相关功能。
注意
- Android组件监控SDK目前支持在中国和海外应用使用。中国使用直接接入,海外使用需要和销售获取上报域名进行配置。
- SDK在初始化的时候就采集用户信息,请确保采集前已经获得用户授权。用户需授权SDK隐私政策,详情请参见SDK隐私政策,未授权不会采集任何用户信息。
APMPlus提供的SDK监控能力主要包括:
稳定性监控包括Java崩溃、Native崩溃、ANR和自定义异常。
- 在project级别的build.gradle添加maven地址。
url 'https://artifact.bytedance.com/repository/Volcengine/'
- 在组件module的build.gradle文件的dependencies中添加以下代码。
implementation "com.volcengine:apm_insight_crash:1.5.21"
MonitorCrash.Config config = MonitorCrash.Config.sdk({{AppId}})
.keywords("a.b.c", "d.e.b")
.soList("a.so", "b.so", "c.so")
MonitorCrash monitorCrash = MonitorCrash.initSDK(this, config);
- 在project级别的build.gradle添加maven地址。
url 'https://artifact.bytedance.com/repository/Volcengine/'
- 在组件module的build.gradle文件的dependencies中添加以下代码。
implementation "com.volcengine:apm_insight_sdk:1.1.8"
SDKEventInitConfig.Builder builder = SDKEventInitConfig.builder()
.context(getApplicationContext())
.updateVersionCode("10001")
.setDynamicParams(new SDKEventIDynamicParams() {
public String getDid() {
return AppLog.getInstance(sSDKAid).getDid();
public String getUserId() {
SDKEventManager.init(builder.build());
您可以在SDK接入APMPlus时按照以下示例在代码里配置事件上报,也可以在平台添加事件,配置key和value并且配置采样,端上上报即可在平台查看事件。
上报示例:
HashMap<String, String> dimension = new HashMap<>();
dimension.put("key1", "value1");
dimension.put("key2", "value2");
HashMap<String, Double> metric = new HashMap<>();
metric.put("metric1", (double) 10);
metric.put("metric2", 8.8);
SDKEventManager.getSDKMonitor(aid).monitorEvent("event_test", dimension, metric);
接口说明:
public void monitorEvent(final String serviceName, final Map<String, String> dimension, final Map<String, Double> metric)
public void monitorEvent(final String serviceName, final Map<String, String> dimension, final Map<String, Double> metric,final JSONObject logExtra)
注意
上报事件只支持上述接口,请勿调用其他接口。
如果没有展示事件,提供排查日志。初始化配置为debug模式,Logcat日志过滤关键字ApmInsight:的所有日志提供给研发人员用于分析和解决问题。
2021-04-11 21:28:01.317 13535-13592/com.example.apm.insight.demo D/ApmInsight: SDK event:event1 simple:false
2021-04-11 21:28:01.771 13535-13592/com.example.apm.insight.demo D/ApmInsight: SDK event:event2 simple:true
您也可以通过自定义看板消费事件数据,具体配置请参见自定义看板。 支持SDK级别的日志回捞和主动上报日志,以及在崩溃时上报日志,用来有效排查单点问题。
- 在project级别的build.gradle添加maven地址。
url 'https://artifact.bytedance.com/repository/Volcengine/'
- 在组件module的build.gradle文件的dependencies中添加以下代码。
implementation "com.volcengine:apm_insight_cloud:0.0.3.sdk"
VLogConfig config = new VLogConfig.Builder(getApplicationContext())
.setLogDirPath(this.getFilesDir() + "/Vlog/" + sSDKAid)
.setMaxDirSize(5 * 1024 * 1024)
.setSubProcessMaxDirSizeRatio(0.1f)
VLog.createInstance(config, sSDKAid);
SDKCloudInitConfig.Builder builder = SDKCloudInitConfig.builder();
builder.context(getApplicationContext());
builder.debugMode(true);
builder.channel("channel");
builder.updateVersionCode("1.1.1");
builder.setDynamicParams(new SDKIDynamicParams() {
public String getDid() {
return AppLog.getInstance(sSDKAid).getDid();
public String getUserId() {
SDKCloudManager.getInstance().init(builder.build());
ILog iLog = VLog.getInstance(aid);
iLog.i("sdk_cloud", "test i");
iLog.e("sdk_cloud", "test e");
SDKCloudManager.getSDKCloud(sSDKAid).uploadVlog(System.currentTimeMillis() - 60 * 60 * 1000, System.currentTimeMillis());
方法说明:
public void uploadVlog(long start, long end) {
AlogActiveUploadManager.upLoadVlog(start, end, null, initConfig.getAid());
最近更新时间:2026.05.12 11:28:57