request hook和scope
request hook对wx.request 云函数云托管生效。
API
import monitor from './agent/init';
monitor.addActionHook('request', function(params) {
const {info, actionData, scope} = params;
// 修改探针数据项
if (info.response && info.response.data && info.response.data.code === 200) {
actionData.statusCode = 402;
}
// 针对request设置context信息
scope.setContext({
name:1
});
})
params参数说明
-
info:请求信息,对象格式,包含下列属性。
type
:请求类型,前取值为request
(wx.request调用请求)和wx.cloud
(云托管云函数调用)。requestOptions
: 请求调用时传入的参数。response
:请求回调函数原始实参。
-
actionData 探针统计的数据项对象,可以修改此对象内的属性值来改变探针上传数据的信息, 包含下列属性。
-
method
:请求方法。 -
url
:URL。 -
start
:开始时间。 -
end
:结束时间。 -
cbTime
:回调时间。 -
duration
:请求耗时。 -
statusCode
:状态码。 -
failMessage
:错误信息。
注意:一般不建议对actionData内部属性做修改。
-
-
scope:scope对象,可用于设置请求额外信息(后台目前不支持处理)。
scope.setContext(key, 'value')
scope.setContext({
key1: {key2: 'value2'},
key3: 'value3'
})