更新时间:2024-09-26 GMT+08:00
分享

微信小程序 SDK接入

使用前提

  • 使用应用性能监控服务微信小程序 SDK前,您需要注册华为账号并开通华为云。
  • 为确保小程序日志上报正常,需将上报地址添加到微信开发者平台域名列表,将上报域名添加为合法域名。

传输协议

HTTPS

版本更新说明

表1 版本更新说明

版本号

更新说明

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;

配置位置:小程序后台->开发->开发设置->服务器域名,如有多个域名配置以分号分隔开。

操作步骤

  1. 进入前端监控页面,单击“接入前端站点”。

  2. 设置前端站点选择“微信小程序”,选择“所属应用”,填入“站点名称”,单击“创建前端站点”按钮。

  3. 安装SDK,在项目根目录下运行“npm i apm-mini-sdk”命令,拉取SDK软件包。

  4. 使能SDK,埋码代码会自动在小程序中完成埋点,所以建议在app.js中执行埋码代码,也可以在项目的任何位置执行。引入SDK方式分为:文件引入方式和npm方式引入。

    • 采用npm方式集成SDK
      1. 确保项目有“package.json”文件,如果项目中没有“package.json”文件,可以在项目的根目录下,使用以下命令来创建:npm init
      2. 运行安装SDK的命令,安装SDK软件包。
      3. 单击开发者工具菜单栏中的“工具 > 构建npm”,构建当前工程的npm库文件。在“miniprogram_npm”文件夹中查看有“apm-mini-sdk”文件夹表示引入成功。

        4.从页面复制用于埋码的代码放置到app.js文件中。

    • 采用文件引入方式集成SDK。
      1. 找到SDK文件夹中的app.js文件“node_modules > apm-mini-sdk > app.js”,将app.js文件从node_module复制到根路径并改名。

      2. 从页面复制用于埋码的代码放置到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版本新增。

  5. 自定义上报统计 (可选步骤)。

    方法名称

    参数说明

    agent.log(key: String, value: String)

    key:事件名称, String类型,最大长度为2048个字符。

    value:事件内容,支持String,Array,HashMap, Number等有效的JSON对象,转JSON字符串最大长度为30720个字符。

  6. 动态设置uid(可选步骤)

    方法名称

    参数说明

    agent.setUid(uid: String)

    uid:String类型,最大长度为2048个字符。

  7. 动态设置tag(可选步骤)

    方法名称

    参数说明

    agent.setTag(tag: String)

    tag:String类型,最大长度为2048个字符。

数据上报策略

  1. 用户基础数据、自定义上报数据会在访问页面时立即上报。
  2. 页面性能数据会在页面加载完成后触发。
  3. 其他类型数据(API数据、JS错误数据等)会以一分钟的时间间隔上报数据。

相关文档