# operation.getPerformance

本接口应在服务器端调用,详细说明参见服务端API

本接口支持云调用。需开发者工具版本 >= 1.02.1904090(最新稳定版下载),wx-server-sdk >= 0.4.0

性能监控

调用方式:

# HTTPS 调用

# 请求地址

POST https://api.weixin.qq.com/wxaapi/log/get_performance?access_token=ACCESS_TOKEN

# 请求参数

属性 类型 默认值 必填 说明
access_token / cloudbase_access_token string 接口调用凭证
cost_time_type number 可选值 1(启动总耗时), 2(下载耗时),3(初次渲染耗时)
default_start_time number 查询开始时间
default_end_time number 查询结束时间
device string 系统平台,可选值 "@_all:"(全部),1(IOS), 2(android)
is_download_code string 是否下载代码包,当 type 为 1 的时候才生效,可选值 "@_all:"(全部),1(是), 2(否)
scene string 访问来源,当 type 为 1 或者 2 的时候才生效,通过 getSceneList 接口获取
networktype string 网络环境, 当 type 为 2 的时候才生效,可选值 "@_all:",wifi, 4g, 3g, 2g

# 请求示例

{
  "cost_time_type": 2,
  "default_start_time": 1572339403,
  "default_end_time": 1574931403,
  "device": "@_all",
  "networktype": "@_all",
  "scene": "@_all",
  "is_download_code": "@_all"
}

# 返回的 JSON 数据包

属性 类型 说明
errcode number 错误码
errmsg string 错误信息
default_time_data string 错误查询数据(json字符串,结构如下所述的 strbody)
compare_time_data string 比较数据

strbody 的结构

属性 类型 说明
ref_date string 日期
cost_time_type number 意思同参数里面的 cost_time_type
cost_time number 耗时(毫秒)

# 响应示例

{
  "default_time_data": "{\"list\":[{\"ref_date\":\"20191029\",\"cost_time_type\":2,\"cost_time\":1533},{\"ref_date\":\"20191030\",\"cost_time_type\":2,\"cost_time\":1682}]}",
  "compare_time_data": "",
  "errcode": 0
}

# 云调用

云调用是微信云开发提供的在云函数中调用微信开放接口的能力,需要在云函数中通过 wx-server-sdk 使用。

# 接口方法

openapi.operation.getPerformance

需在 config.json 中配置 operation.getPerformance API 的权限,详情

# 请求参数

属性 类型 默认值 必填 说明
costTimeType number 可选值 1(启动总耗时), 2(下载耗时),3(初次渲染耗时)
defaultStartTime number 查询开始时间
defaultEndTime number 查询结束时间
device string 系统平台,可选值 "@_all:"(全部),1(IOS), 2(android)
isDownloadCode string 是否下载代码包,当 type 为 1 的时候才生效,可选值 "@_all:"(全部),1(是), 2(否)
scene string 访问来源,当 type 为 1 或者 2 的时候才生效,通过 getSceneList 接口获取
networktype string 网络环境, 当 type 为 2 的时候才生效,可选值 "@_all:",wifi, 4g, 3g, 2g

# 请求示例

const cloud = require('wx-server-sdk')
cloud.init({
  env: cloud.DYNAMIC_CURRENT_ENV,
})
exports.main = async (event, context) => {
  try {
    const result = await cloud.openapi.operation.getPerformance({
        "device": '@_all',
        "networktype": '@_all',
        "scene": '@_all',
        "costTimeType": 2,
        "defaultStartTime": 1572339403,
        "defaultEndTime": 1574931403,
        "isDownloadCode": '@_all'
      })
    return result
  } catch (err) {
    return err
  }
}

# 响应示例

const cloud = require('wx-server-sdk')
cloud.init({
  env: cloud.DYNAMIC_CURRENT_ENV,
})
exports.main = async (event, context) => {
  try {
    const result = await cloud.openapi.operation.getPerformance({
        "errcode": 0,
        "defaultTimeData": '{\'list\":[{\"ref_date\":\"20191029\",\"cost_time_type\":2,\"cost_time\":1533},{\"ref_date\":\"20191030\",\"cost_time_type\":2,\"cost_time\":1682}]}",
        "compareTimeData": ''
      })
    return result
  } catch (err) {
    return err
  }
}