monitor-rcl
Version:
monitor-rcl
91 lines (74 loc) • 3.06 kB
Markdown
# retcode log上报脚本
## 通过npm包引用(browser/weex/rax/nodejs)
> http://web.npm.alibaba-inc.com/package/@ali/retcodelog
1. 引入npm包
```
tnpm install @ali/retcodelog --save
```
2. 在代码中配置,并上报
```javascript
var wpo = require('@ali/retcodelog');
// 配置
wpo.setConfig({
//抽样分母,1代表100%上报,10代表10%上报,100代表1%上报
sample: 1,
// spmId必须设置,如果没写默认值,会自动抓页面的spm
spmId: '',
// weex容器内上报必须配置
request: require('@weex-module/stream').fetch,
// 取nick name需要用到cookie
cookie: ''
});
// 上报
wpo.error('testing...');
wpo.retCode('api', true, 100, 'testing api sampling');
```
> **TIPS**
> 1. 浏览器环境下,借助webpack等工具,也可以引入npm包版本的retcodelog
> 2. weex容器内上报时,必须配置`request = require('@weex-module/stream').fetch`
## 通过cdn地址引用(browser)
> <http://g.alicdn.com/retcode/log/log.js>
1. 配置
```javascript
window.__WPO = {
config: {
sample: 100, // 抽样率,100 = 1%,1 = 100%,默认100
spmId: 'xxx', // spmId
startTime: xxx, // 自定义测速类页面统计起始时间
dynamic: true // 是否启用动态配置
}
};
```
2. 页面中引入脚本
```html
<script src="//g.alicdn.com/retcode/log/log.js"></script>
```
3. 或者在**引入脚本后**通过`setConfig`接口配置
```javascript
window.__WPO.setConfig({
sample: 100, // 抽样率,100 = 1%,1 = 100%,默认100
spmId: 'xxx', // spmId,如果没写默认值,会自动抓页面的spm
modVal: 1, // 抽样的取值,取模后的数值==该值的认为符合抽样,以页面uid作为基数来抽样,默认1
startTime: xxx, // 自定义测速类页面统计起始时间
});
```
4. 上报
```javascript
__WPO.error('testing...');
__WPO.retCode('api', true, 100, 'testing api sampling');
```
> **TIPS**
> 1. `@param dynamic`无法通过`setConfig`来配置
> 2. 地址中加入`wpodebug=1`进入debug模式,强制sampling=1,modVal=1;100%发送请求
> 3. 用户的淘宝昵称会默认上报,userNick来自于cookie中的以下字段`_nk_` | `_w_tb_nick_` | `lgc`
> 4. 通过地址 <http://g.alicdn.com/retcode/log/log.debug.js> 可以引用到未压缩版的log.js用于本地调试日志上报
## demo演示代码
- [浏览器 - cdn引入模式](http://gitlab.alibaba-inc.com/retcode/log/tree/master/demo/browser-cdn)
- [浏览器 - npm包引入模式](http://gitlab.alibaba-inc.com/retcode/log/tree/master/demo/browser-npm)
- [nodejs环境](http://gitlab.alibaba-inc.com/retcode/log/tree/master/demo/nodejs)
- [weex环境](http://gitlab.alibaba-inc.com/retcode/log/tree/master/demo/weex)
- [weex-rx环境](http://gitlab.alibaba-inc.com/retcode/log/tree/master/demo/weex-rx)
## 接口
- [《retcode用户手册》日志上报API定义](http://groups.alidemo.cn/retcode/handbook/_book/senior/log-report.html)
# History
- [HISTORY.md](http://gitlab.alibaba-inc.com/retcode/log/blob/master/HISTORY.md)