# Collect Currentpage Info

收集用户浏览器客户端信息，包括浏览器基础信息、ajax请求列表（数据、接口、异常等）、异常采集列表（资源加载、js报错等），支持采集用户行为轨迹。所有操作都是采集当前页面。信息下载到本地（用户触发, alt + k）。这个包是前端日志监控的sdk部分。


本地存储到indexDb，所以请开发者确认用户浏览器是否支持。

当前版本数据只支持本地下载后再导入到后台（私有化部署问题，用户那边没办法上报到我们服务器，只能让用户给我们日志，快捷键  alt + k），执行下载后，本地数据全部清除。

引入方式：

```html
先全局配置
// 这个是每个产品的标记
window.CollectCurrentPageInfoId = 'webfunny768';
// 每个产品的测试用户（每个产品固定一个），方便后台查询
window.CollectCurrentPageInfoUserId = 'userId4';
// 当前项目版本好
window.CollectCurrentPageInfoProjectVersion = '0.1.1';
// 本地存储最大日志数量，超出后会按照顺序移除日志
window.CollectCurrentPageInfoIndexDbSizeRecordNum = 2000;

然后在html header 头部引入

<script src="./es/collectCurrentpageInfo.js" ></script>

```

如果是 vue 项目，首先还是在html头部引入sdk，然后在项目 main.js里加入下面代码

```js
// main.ts
import Vue from 'vue'
// ....

Vue.config.errorHandler = () =>{
  // 原来项目的异常处理方法
}

// 监听vue异常数据，下面这两段代码
const debugHandle = (window as any).VueDebugHandler
debugHandle && debugHandle(Vue)

```

sdk 会全局注册一个  VueDebugHandler 方法， 参数为 Vue 对象。

原理是通过重写  Vue.config.errorHandler 捕获方法