文档中心>腾讯客户端性能分析>SDK 接入指南>Android 应用场景>功能配置>原生层网络监控、大模型 SSE 监控以及默认拨测监控

原生层网络监控、大模型 SSE 监控以及默认拨测监控

最近更新时间:2025-09-12 10:31:32

我的收藏

前提条件

在 app 级别的 build.gradle 中配置了 qapm-plugin 插件,请参见 集成和初始化
目前只支持 okhttp3监控。okhttp3还依赖 okio 1.14.0以上的库版本。

开启功能

原生层网络监控以及大模型 SSE 监控需要使用 qapmplugin 插件进行插桩才可使用,默认会插在网络层的各个出入口。

配置步骤

在 app 目录的 proguard-rules.pro 文件里增加混淆规则,防止 okttp3的代码被混淆。
-keep class com.squareup.okhttp3.**{*;}





相关接口

/**
* 设置网络请求的响应 header 黑名单,在黑名单中的 header key 将不会采集上报
*/
public static final int PropertyKeyHttpBlackHeader = 313;
/**
* 设置域名白名单,如果设置了,则只有白名单中的域名请求才监控
*/
public static final int PropertyKeyHttpWhiteDomain = 314;
/**
* 设置域名黑名单,如果设置了,在黑名单中的域名将不会监控
*/
public static final int PropertyKeyHttpBlackDomain = 315;
/**
* 设置域名黑名单,如果设置了,在黑名单中的域名将不会监控
*/
public static final int PropertyEnableDefaultDial = 319;

代码示例

/**
* 设置网络请求的响应 header 黑名单,在黑名单中的 header key 将不会采集上报
*/
List<String> blackHeader = new ArrayList<>();
blackHeader.add("");
blackHeader.add("x-nws-log-uuid");
QAPM.setProperty(QAPM.PropertyKeyHttpBlackHeader, blackHeader);

/**
* 设置域名黑名单,如果设置了,在黑名单中的域名将不会监控
*/
List<String> blackDomain = new ArrayList<>();
blackDomain.add("21.54.255.67");
blackDomain.add("9.134.164.160");
QAPM.setProperty(QAPM.PropertyKeyHttpBlackDomain, blackDomain);

/**
* 设置域名白名单,如果设置了,则只有白名单中的域名请求才监控
*/
List<String> WhiteDomain = new ArrayList<>();
WhiteDomain.add("21.54.255.67");
WhiteDomain.add("9.134.164.160");
QAPM.setProperty(QAPM.PropertyKeyHttpWhiteDomain, WhiteDomain);

/**
* 默认拨测相关接口的设置,设置为true后,会打开默认拨测功能
*
/
QAPM.setProperty(QAPM.PropertyEnableDefaultDial, true);
注意:
原生网络监控默认监控所有 url,可通过上面的黑白名单接口来决定是否进行过滤,在同时设置了域名白名单和域名黑名单接口的时候,只有域名白名单的设置才会生效,建议优先使用白名单设置。
从5.5.6-pub 版本开始,开启默认拨测功能后会根据网络监控的慢错结果进行执行,执行结果参照移动拨测。

校验功能是否正常

检索 TAG:QAPM_manager_QAPMPluginManager



检索 TAG: [plugin::142]
每次网络请求后1分钟,如打印以下日志,则代表网络数据上报成功:



注意:
需要使用 qapmplugin 插件进行插桩才可用,否则无效;大模型 SSE 监控需要发起对应的 SSE 监控请求,否则无效。
SDK 只负责抓取网络请求的相关信息,问题数据由后台分析,如慢请求(请求时间大于 xxs),网络错误(请求响应码 > 400)。