Skip to main content

Page analysis

POST /page/list

Request parameterTypeRequired parameterDescription
mpIdNumberYesMini program id
timePeriodNumberNoParameter default is 30 minutes
endTimeStringNoEnd time format yyyy-MM-dd HH:mm For example (2018-02-07 17:39)
orderByStringNoSorting indicator name, indicator name see list
orderTypeStringNoasc: positive order, desc: reverse order. If not passed, default (positive order)

Return result:

[
{
"path": "/page/index/index",
"alias": "homePage",
"pv": 100,
"uv": 100,
"onReady": 800,
"firstResponse": 800,
"responseTime": 800,
"netErrorRate": 15,
"jsErrorRate": 10,
"applicationServerTime": 1,
"firstLoadTime": 111,
"stuckRate": 10,
"exQuitRate": 30,
"focus": false // is it a key page
},
...
]

Page analysis details

Page performance trend chart

POST /chart/page-performance

Description:

Get page performance indicator chart, indicator list: UV, PV, onReady, first response, Loading time

Request parameterTypeRequired parameterDescription
mpIdNumberYesMini program id
pathStringYesPage routing path
timePeriodNumberNoParameter default is 30 minutes
endTimeStringNoEnd time format yyyy-MM-dd HH:mm For example (2018-02-07 17:39)
quantileNumberNoQuantile value (50, 75, 95, 99), do not pass the average value

Return result: (Figure public return result)

Network request trend chart

POST /chart/net-request-trend

Description:

Get the network performance indicator chart under the page, indicator list: number of requests, number of slow requests, number of error requests, Request time, server time

Request parameterTypeRequired parameterDescription
mpIdNumberYesMini program id
pathStringYesPage routing path
timePeriodNumberNoParameter default is 30 minutes
endTimeStringNoEnd time format yyyy-MM-dd HH:mm For example (2018-02-07 17:39)
quantileNumberNoQuantile value (50, 75, 95, 99), do not pass the average value

Return result: Highcharts chart general return result

Stuck rate trend chart

POST /chart/stuck-performance

Description:

Get the stuck performance under the page, the horizontal axis indicator list on the chart: PV, stuck PV, stuck rate. Mean indicator: average jam rate

Request parameterTypeRequired parameterDescription
mpIdNumberYesMini program id
pathStringYesPage routing path
timePeriodNumberNoParameter default is 30 minutes
endTimeStringNoEnd time format yyyy-MM-dd HH:mm For example (2018-02-07 17:39)
quantileNumberNoQuantile value (50, 75, 95, 99), do not pass the average value

Return result:

{
"overview": {
"aggregateValue": 50 // Average jam rate, need to check the average jam rate of the entire time period
},
// The following is the public return result of the chart
"series": [...],
"yAxis": [...]
}

Time distribution

onReady:

POST /chart/page-distribution-on-ready

First response:

POST /chart/page-distribution-first-response

Network response time:

POST /chart/page-distribution-response-time

Server response time:

POST /chart/page-distribution-application-server-time

setData frequency:

POST /chart/page-distribution-setdata-fr

setData time:

POST /chart/page-distribution-setdata-time

Request concurrency:

POST /chart/page-distribution-request-fr

Load time:

POST /chart/page-distribution-first-load-time

Description:

Get the histogram distribution of page performance indicators

Request parameterTypeRequired parameterDescription
mpIdNumberYesMini program id
pathStringYesPage routing path
timePeriodNumberNoParameter default is 30 minutes
endTimeStringNoEnd time format yyyy-MM-dd HH:mm For example (2018-02-07 17:39)

Return result:

{
"series": [
{
"name": "Proportion",
"unit": "%",
"data": [
0.00,
0.00,
0.00,
33.33,
0.00,
33.33,
33.33,
0.00
]
},
{
"name": "number of times",
"unit": "",
"data": [
0,
0,
0,
1,
0,
1,
1,
0
]
}
]
}

Map component

Reference application map component

Additional parameters:

Request parameterTypeRequired parameterDescription
pathStringNoPage name

Page exit rate trend chart

POST /chart/ex-quit-performance

Description:

Indicators: Page abnormality rate, abnormal exit rate, total exit rate

Request parameterTypeRequired parameterDescription
mpIdNumberYesMini program id
pathStringYesPage routing path
timePeriodNumberNoParameter defaults to 30 minutes
endTimeStringNoEnd time format yyyy-MM-dd HH:mm For example (2018-02-07 17:39)

Return result: (Figure common return results)

JS error rate graph

POST /chart/jserror-rate

Description:

Get page performance index graph

Request parameterTypeRequired parameterDescription
mpIdNumberYesMini program id
pathStringNoPage routing path
timePeriodNumberNoParameter default is 30 minutes
endTimeStringNoDeadline format yyyy-MM-dd HH:mm For example (2018-02-07 17:39)

Return results: (Figure common return results)

TOP5 WeChat version JS error rate curve graph

POST /chart/wechart-jserror-rate

Description:

Get page performance indicator chart

Request parameterTypeRequired parameterDescription
mpIdNumberYesMini program id
pathStringNoPage routing path
timePeriodNumberNoParameter default is 30 minutes
endTimeStringNoEnd time format yyyy-MM-dd HH:mm For example (2018-02-07 17:39)

Return result: (Figure general return result)

Slow page ratio chart

POST /chart/slow-page-pv

Description:

Get page performance indicator graph

Request parameterTypeRequired parameterDescription
mpIdNumberYesMini program id
pathStringNoPage routing path
timePeriodNumberNoParameter default is 30 minutes
endTimeStringNoEnd time format yyyy-MM-dd HH:mm For example (2018-02-07 17:39)

Return result: Highcharts chart general return result

Exception tracking

TOP5 dimension indicator pie chart

POST /page/pie

Description:

Query the proportion of slow page count indicator according to the dimension. Call this interface once for each pie chart. Note that if the top5 accounts for less than 100%, you need to return an additional data item named Other, The data value is the total minus the sum of top5

dimension option list:

Namedimension
Network typenetworkType
WeChat versionwechatVersion
Region and operatorregionId,carrierId
System versionsystem
DevicedeviceType
Mini program sdk versionsdkVersion

Request parameters:

Request parametersTypeRequired parametersDescription
mpIdNumberYesMini program id
dimensionTypeStringYesDimension key, distinguish pie chart type, refer to dimension option list
timePeriodNumberNoParameter default is 30 minutes
endTimeStringNoEnd time format yyyy-MM-dd HH:mm For example (2018-02-07 17:39)
pathStringNoPage routing path
statusFilterStringYesException type, separated by ,, for example, when all exception states are selected: slow,netError,jsError,stuck, which respectively represent slow page, network error, js error, stuck

Return result:

[
{
"name": "2G",
"value": 1,
"dimension": {
"networkType": "2G"
}
},
...
{
"name": "Other", // Data records other than top5, no dimension item
"value": 10
}
]

Slow page list

POST /abnormal/slowpage/list

Note: Request Content-Type: application/json

Request example:

{
"timePeriod": 30,
"endTime": "",
"mpId": 111,
"path": "xxx",
"statusFilter": "slow,netError,jsError", // reference pie chart
"filter": [
{
"dimension": "ip",
"values": ["192.168.1.100", "192.168.1.111"],
"searchValue": "192.168.1"
},
{
"dimension": "regionId,carrierId",
"values": ["4811,12000", "4811,12000"]
}
...
]
}

Return data:

[
{
"id": "32f5b6dd68a14eab9356a69b4d73ea9b", // traceId
"timestamp": "2018-11-07 10:07",
"mpId": 7771,
"ip": "192.168.254.102",
"uid": "97bee32c-b7fa-4dc5-9ec5-2498ce08dc4e",
"sid": "199d5ceb-f110-4851-9ed3-80c7532be915",
"firstResponseTime": 20128,
"region": "未知",
"city": "未知",
"carrier": "未知",
"wechatVersion": "Firefox 63.0",
"system": "Android", // Operating system
"deviceType": "Nexus5", // Phone model
"firstLoadTime" : 2000 // Fisrt load
},
...
]

Error request list

POST /abnormal/errorrequest/list

Request parameters:

Request parameterTypeRequired parameterDescription
mpIdNumberYesMini program id
timePeriodNumberNoParameter default is 30 minutes
endTimeStringNoEnd time format yyyy-MM-dd HH:mm For example (2018-02-07 17:39)
pathStringNoPage routing path
serverTracebooleanNoWhether to query only data with servertrace, otherwise do not pass this parameter

Return data:

[
{
"host": "10.128.1.42",
"uri": "/browser/list",
"timestamp": "2018-11-07 10:07",
"status": 421, // http status code
"trace": false, // Is there a trace
"failMessage": "xxxx",
"serverId": 100, //server Application Id
"serverTraceId": "xxdjsodjoisdjo" //server traceId
},
...
]

Slow request list

POST /abnormal/slowrequest/list

Request parameters:

Request parameterTypeRequired parameterDescription
mpIdNumberYesMini program id
timePeriodNumberNoThe parameter is 30 minutes by default
endTimeStringNoEnd time format yyyy-MM-dd HH:mm For example (2018-02-07 17:39)
pathStringNoPage routing path
serverTracebooleanNoWhether to query only data with servertrace, otherwise do not pass this parameter
minDurationNumberNoSearch for minimum response time
maxDurationNumberNoSearch for maximum response time

Return data:

[
{
"host": "10.128.1.42",
"uri": "/browser/list",
"timestamp": "2018-11-07 10:07",
"responseTime": 27106,
"applicationServerTime": 8164,
"bytesSent": 22503,
"bytesReceived": 12212,
"status": 408,
"trace": true,
"serverId": 100,
"serverTraceId": "xxdjsodjoisdjo"
},
...
]

Slow page details

Slow page details data

POST /abnormal/slowpage/detail

Request parameters:

Request parametersTypeRequired parametersDescription
mpIdNumberYesMini program id
timePeriodNumberYesParameter default is 30 minutes
endTimeStringYesEnd time format yyyy-MM-dd HH:mm For example (2018-02-07 17:39)
traceIdStringYesPage traceId

Return data:

{
"header": {
"traceTime": "2019-11-26 14:00",
"path": "pages/index/index",
"totalLoadTime": null,
"width": "360",
"height": "518",
"system": "Android 5.0",
"deviceType": "Nexus 5",
"wechatVersion": "7.0.4",
"ip": "192.168.5.149",
"region": "unknown",
"city": "unknown",
"networkType": "wifi",
"carrier": "unknown",
"firstResponse": 4261,
"responseTime": 1536,
"applicationServerTime": 0,
"onReady": 3076,
"customTime": 3021,
"v": null,
"ua": "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Mobile Safari/537.36 wechatdevtools/1.02.1910120 MicroMessenger/7.0.4 webview/",
"pageEvent": {
"onHide": 1574748040507,
"onLoad": 1574748020897,
"onReady": 1574748023973,
"onShow": 1574748021416,
"onUnload": 0
},
"routeTrack": [
{
"timestamp": 1574748021416,
"route": "pages/index/index"
}
],
"metric": {
"jsError": true,
"netError": false,
"stuck": false,
"firstLoad": 6114
}
},
"waterFall": {
"domains": [
"reportalpha1.tingyun.com"
],
"items": [
{
"timestamp": "2019-11-26 14:00",
"name": "/demo-server/test/custom-request",
"timeOffset": 3080,
"type": "network",
"id": "fe0f64664ebf41b0ac696e549ea1ccb6",
"trace": true,
"host": "reportalpha1.tingyun.com",
"uri": "/demo-server/test/custom-request",
"url": "https://reportalpha1.tingyun.com/demo-server/test/custom-request?timeout=1000",
"httpCode": "200",
"applicationId": "0",
"instanceId": "0",
"serverId": "0",
"responseTime": 1181,
"applicationServerTime": 0,
"bytesSent": 0.0,
"bytesReceived": 0.012,
"start": 1574748023977,
"end": 1574748025158,
"netCount": 1,
"callbackTime": 4,
"requestMethod": "GET",
"serverTrace": false,
"serverTraceTime": 0,
"server": false,
"failMessage": "",
"requestId": 2,
"compareValue": 3080
},
{
"timestamp": "2019-11-26 14:00",
"name": "/demo-server/test/custom-request",
"timeOffset": 3087,
"type": "network",
"id": "8ce9ccfb8032484daa71be73682195c1",
"trace": true,
"host": "reportalpha1.tingyun.com",
"uri": "/demo-server/test/custom-request",
"url": "https://reportalpha1.tingyun.com/demo-server/test/custom-request?timeout=2000",
"httpCode": "200",
"applicationId": "0",
"instanceId": "0",
"serverId": "0",
"responseTime": 3006,
"applicationServerTime": 0,
"bytesSent": 0.0,
"bytesReceived": 0.012,
"start": 1574748023984,
"end": 1574748026990,
"netCount": 1,
"callbackTime": 1,
"requestMethod": "GET",
"serverTrace": false,
"serverTraceTime": 0,
"server": false,
"failMessage": "",
"requestId": 3,
"compareValue": 3087
},
{
"timestamp": "2019-11-26 14:00",
"timeOffset": 3106,
"type": "jserror",
"id": "XpFMpm4Bw-wCxOz_SUve",
"agentVersion": "1.3.6",
"applicationId": 0,
"carrierId": 0,
"cityId": 0,
"countryId": 0,
"instanceId": 0,
"mpId": 2065,
"errorMessage": "Random js error",
"ip": "192.168.5.149",
"deviceType": "Nexus 5",
"messageType": "JSERROR",
"networkType": "wifi",
"msgErrorPv": 1,
"occurTime": 1574748024003,
"openPath": "pages/index/index",
"path": "pages/index/index",
"pageTraceId": "5de76fa1a59e474d9dd1524a40ac8540",
"regionId": 0,
"sid": "68c6de32-d274-4db4-b28c-66e0e86d4a58",
"uid": "5847de28-2b35-4d6e-b977-ff54a685c7d4",
"scene": "1001",
"system": "Android 5.0",
"wechatVersion": "7.0.4",
"trace": false,
"traceData": {
"colno": 0,
"filename": null,
"msg": null,
"stack": "thirdScriptError\nRandom js error;at \"pages/index/index\" page lifeCycleMethod onShow function\nError: Random js error\n at _e.onShow (http://127.0.0.1:13201/appservice/pages/index/index.js:99:13)\n at _e.onShow (http://127.0.0.1:13201/appservice/agent/bundle.js:75:31)\n at _e.<anonymous> (http://127.0.0.1:13201/appservice/__dev__/WAService.js:1:1531191)\n at _e.p.__callPageLifeTime__ (http://127.0.0.1:13201/appservice/__dev__/WAService.js:1:1530936)\n at Tt (http://127.0.0.1:13201/appservice/__dev__/WAService.js:1:1546361)\n at http://127.0.0.1:13201/appservice/__dev__/WAService.js:1:1549664\n at xt (http://127.0.0.1:13201/appservice/__dev__/WAService.js:1:1550157)\n at Function.<anonymous> (http://127.0.0.1:13201/appservice/__dev__/WAService.js:1:1553690)\n at i.<anonymous> (http://127.0.0.1:13201/appservice/__dev__/WAService.js:1:1522455)\n at i.emit (http://127.0.0.1:13201/appservice/__dev__/WAService.js:1:551893)",
"ua": "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Mobile Safari/537.36 wechatdevtools/1.02.1910120 MicroMessenger/7.0.4 webview/",
"lineno": 0,
"time": 1574748024003,
"onShow": null,
"onUnload": null,
"screenHeight": "640",
"screenWidth": "360",
"windowHeight": "518",
"windowWidth": "360",
"sdkVersion": "2.9.3"
},
"compareValue": 3106
}
],
"timeSpan": 6114
},
"setData": {
"max": 49,
"threshold": 1000,
"data": [
{
"timestamp": 1574748025158,
"count": 1,
"grade": {
"good": {
"count": 0
},
"normal": {
"count": 0
},
"bad": {
"count": 1
}
},
"traces": []
},
{
"timestamp": 1574748026990,
"count": 1,
"grade": {
"good": {
"count": 0
},
"normal": {
"count": 0
},
"bad": {
"count": 1
}
},
"traces": []
}
],
"setDataTimeInterval": [
1,
3
],
"setDataTrace": true,
"setDataTraceHint": true,
"requestBridge": [
{
"start": 1574748025158,
"end": 1574748025207,
"requestId": 2,
"url": "https://reportalpha1.tingyun.com/demo-server/test/custom-request?timeout=1000"
},
{
"start": 1574748026990,
"end": 1574748027011,
"requestId": 3,
"url": "https://reportalpha1.tingyun.com/demo-server/test/custom-request?timeout=2000"
}
]
}
}

List of recent slow pages

POST /abnormal/slowpage/recent-list

Request parameters:

Request parametersTypeRequired parametersDescription
mpIdNumberYesMini program id
timePeriodNumberNoParameter default is 30 minutes
endTimeStringNoEnd time format yyyy-MM-dd HH:mm For example (2018-02-07 17:39)
limitNumberNoBy default check the first 20 trace records in reverse order by time
[
{
"traceId": "f758c228c1e148ef8f6e792e1cd91fbf",
"timestamp": "2018-11-12 16:01"
}
]