sentry-configuration
Version:
sentry的公共配置文件
61 lines (48 loc) • 2.44 kB
Markdown
sentry的公共配置
<!-- 考虑到代码的易读性,源码还是会放在npm包内。 -->
#发布方法方法
修改代码逻辑后,运行 npm run release 打包并发布到npm
使用的前提条件:./
vue项目
<!-- 1、添加下列配置, sentry-configuration需要用到-->
<!-- .env文件 -->
<!-- 版本号 -->
VUE_APP_RELEASE = 'staging@1.0.5' //vue2版本
VITE_RELEASE = 'staging@1.0.5' //vue3版本
<!-- DSN -->
VUE_APP_DSN = 'dsn...' //vue2版本
VITE_SENTRY_DSN = 'dsn...' //vue3版本
<!-- 其他环境配置文件 -->
<!-- 当前环境 DEV/TEST/PROD (开发/测试/正式) -->
VUE_APP_CURRENTENV = 'DEV/TEST/PROD' //vue2版本
VITE_CURRENTENV = 'DEV/TEST/PROD' //vue3版本
<!-- 2、在main.js中引入,并安装 -->
npm install -S sentry-configuration
import SentryReport from 'sentry-configuration';
Vue.use(SentryReport, {router, sentryOptions})
<!-- router和sentryOptions非必传,某些mixh5项目没有router,只要传,参数名必须是router或sentryOptions -->
<!-- interface sentryOptions {
dsn: string, //dsn地址 vue3版本请在此传入
release: string, //发布版本 vue3版本请在此传入
environment: string, //运行环境 vue3版本请在此传入
networkDetailAllowUrls?: string[]; //控制网络请求详细信息收集的白名单设置
networkRequestHeaders?: string[]; //允许哪些请求头字段能够在回放中展示
initialScope?: Object; //初始化scope
replaysSessionSampleRate?: number; //回放样本量, 考虑到我们用户群不大,默认100%,行内一般默认10%
debug?: boolean; // 是否开启debug模式,默认false
beforeSend?: function; // 当现在的请求被发送到Sentry之前,可以进行一些操作,比如修改请求头,或者修改请求体等。
} -->
<!-- 3、在能获取到用户信息的第一时间,配置用户信息,方便在sentry后台查询 -->
const userInfo = {
username: username,
id: userId,
email: username, //这个在sentry后台最显眼,一般把用户名放在email中
}
const $sentry = Vue.prototype.$sentry
if($sentry){
$sentry.setUser(userInfo)
$sentry.setExtras({
...userInfoObj.
})
}
<!-- 其他、还暴露了一个方法,可以手动上报错误,一般放在请求的响应拦截中,考虑到后端有日志,遂不多加注释 -->