微信小程序 SDK接入
使用前提
- 使用应用性能监控服务微信小程序 SDK前,您需要注册华为账号并开通华为云。
- 为确保小程序日志上报正常,需将上报地址添加到微信开发者平台域名列表,将上报域名添加为合法域名。
传输协议
HTTPS
版本更新说明
版本号 |
更新说明 |
---|---|
2.0.5 |
新增uid和tag字段,与setUid和setTag方法。 |
2.0.4 |
修复SDK中覆盖了小程序原函数作用域的问题。 |
2.0.1 |
添加README帮助文档。 |
2.0.0 |
小程序探针上线。 |
前置条件
将APM上报地址“https://apm-web.cn-north-4.myhuaweicloud.com”添加到小程序开发者平台域名列表。
以微信小程序为例:
配置地址:https://mp.weixin.qq.com/wxamp/home/guide?lang=zh_CN;
配置位置:小程序后台->开发->开发设置->服务器域名,如有多个域名配置以分号分隔开。
操作步骤
- 进入前端监控页面,单击“接入前端站点”。
- 设置前端站点选择“微信小程序”,选择“所属应用”,填入“站点名称”,单击“创建前端站点”按钮。
- 安装SDK,在项目根目录下运行“npm i apm-mini-sdk”命令,拉取SDK软件包。
- 使能SDK,埋码代码会自动在小程序中完成埋点,所以建议在app.js中执行埋码代码,也可以在项目的任何位置执行。引入SDK方式分为:文件引入方式和npm方式引入。
- 采用npm方式集成SDK
- 采用文件引入方式集成SDK。
- 找到SDK文件夹中的app.js文件“node_modules > apm-mini-sdk > app.js”,将app.js文件从node_module复制到根路径并改名。
- 从页面复制用于埋码的代码放置到app.js文件中。
表2 配置参数说明 参数名称
是否必填
默认值
描述
appId
是
-
前端站点ID,每个站点有自己的appId。
apiRepo
否
true
API自动上报开关。
API自动上报:用于查看API详情和统计API成功率。
thirdApi
否
true
三方API上报开关。
三方API上报:上报CrossOrigin第三方接口信息。
hashMode
否
true
hashMode自动解析开关。
hashMode自动解析:URL中#内容,在开启时做URL一部分处理,不开启时被当作锚点处理。
JsErrorClear
否
true
JS错误追踪开关。
JS错误追踪开关:监听和上报所有JS错误。
注意:这个功能会改变业务在浏览器上显示的路径。
smartJsErr
否
true
Js错误智能采集开关。
Js错误智能采集:短时间内大批量JS错误智能消减,在一次访问中超过100条的相同JS错误就不进行上报。
webResource
否
false
页面资源上报开关。
页面资源上报:此开关将控制是否采集加载性能相关信息。除微信小程序采集白屏信息外,其他小程序不支持页面资源上报,如产品需要可使用自定义上报功能手动。
traceType
否
apm
链路追踪开关。
链路追踪:开启后可与可观测链路 OpenTelemetry 版产品做前后端链路追踪,默认与应用监控APM调用链做前后端链路追踪。查询链路追踪效果,单击“API请求->URL详情->分析”按钮。
uid
否
-
用户自定义ID,字符串类型,1.0.46版本新增。
tag
否
-
用户自定义标签,字符串类型,1.0.46版本新增。
- 自定义上报统计 (可选步骤)。
方法名称
参数说明
agent.log(key: String, value: String)
key:事件名称, String类型,最大长度为2048个字符。
value:事件内容,支持String,Array,HashMap, Number等有效的JSON对象,转JSON字符串最大长度为30720个字符。
- 动态设置uid(可选步骤)
方法名称
参数说明
agent.setUid(uid: String)
uid:String类型,最大长度为2048个字符。
- 动态设置tag(可选步骤)
方法名称
参数说明
agent.setTag(tag: String)
tag:String类型,最大长度为2048个字符。
数据上报策略
- 用户基础数据、自定义上报数据会在访问页面时立即上报。
- 页面性能数据会在页面加载完成后触发。
- 其他类型数据(API数据、JS错误数据等)会以一分钟的时间间隔上报数据。