博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
vue配合webpack使用sentry对错误日志监控
阅读量:6230 次
发布时间:2019-06-22

本文共 1887 字,大约阅读时间需要 6 分钟。

1.在创建一个sentry账号,填写相关信息点击‘继续’按钮

2.新建项目:(注:vue在Brower下)

3.继续下一步,到Send an event from your application 这一步这是sentry已经生成DSN,点击最下面的按钮

4.安装插件

cnpm i raven-js -S

使用

因为我们的项目分为开发、测试和生产环境,在build下全局配置三个环境的地址;使用时候要进行区分

在main.js下

引入import Raven from 'raven-js';import RavenVue from 'raven-js/plugins/vue';复制代码

注:env.name是全局配置的三个环境的环境名称

const sentryDSN = env.name == 'testing' ? 'test' : 'prod';Raven.config('https:/XXXXXXXXXXXXXXXXXX@sentry.io/XXXXXXXXX',//对应生成的DSN    sentryDSN,    {        environment: env.name    },    {        release:'production@1.1.0'//指定版本后,每次上报的异常就会分类到该版本下    }    )    .addPlugin(RavenVue, Vue)	.install()	// 注意,一定记得区分开发环境,否则开发环境的错误也会被提交到sntry去,并且本地是不会显示错误信息的    	if(env.name !== 'development' ){		Vue.config.errorHandler = function(err, vm, info) {			Raven.captureException(err)		}	}复制代码

5.上传 SourceMaps 对错误进行定位

可以参考[sentry Generating Source Maps 文档,详细了解各类框架如何产生SourceMaps; 项目中我用的是webpack打包,我使用的是Sentry Webpack Plugin 配合Webpack完成构建时上传SourceMaps

1).获取API Token

先点击右下角的API,在点击Create New Token; 确保勾选projectwrite,然后在点击Create Token

2).安装sentry-webpack-plugin插件

npm install @sentry/webpack-plugin @sentry/cli --dev-save

在项目的根目录下创建一个文件.sentryclirc并配置

[defaults]url=https://sentry.io/org=组织名称project=项目名称[auth]token=你的sentry账号下生成的API Token复制代码
创建Release,sentry-cli releases -o 组织 -p 项目 new production@1.1.0复制代码

3).更新webpack.prod.conf.js

const SentryCliPlugin = require('@sentry/webpack-plugin')在plugins:[]里面加入此代码:new SentryCliPlugin ({      release: "production@1.1.0",//版本号      include: path.join(__dirname,'../dist/static/js/'), //需要上传到sentry服务器的资源目录,会自动匹配js 以及map文件      ignore: ['node_modules', 'webpack.config.js'], //忽略文件目录,当然我们在inlcude中制定了文件路径,这个忽略目录可以不加      configFile :'.sentryclirc',        urlPrefix : "~/static/js"    //  线上对应的url资源的相对路径 比如我的域名是 http://XXX  .com/,静态资源都在 static文件夹里面,    }),复制代码

Sourmap 上传后的错误效果

参考文章

转载于:https://juejin.im/post/5cd133696fb9a032086de3a4

你可能感兴趣的文章
stl使用:map和set
查看>>
Sicily 10359:Valuable Jewellery(贪心+优先队列)
查看>>
24、CSS定位
查看>>
JS预解析机制
查看>>
nsq 学习(一)源码安装nsq
查看>>
高效的使用 Response.Redirect
查看>>
利用Linq + Jquery + Ajax 异步分页的实现
查看>>
炫酷MD风之dialog各种对话框
查看>>
谈谈OpenNI 2的安装
查看>>
Ecshop 商品页配送方式添加 实现仿淘宝按地区显示运费
查看>>
SCAU 10685 ACMer不得不知道的事儿(一)-----续
查看>>
List Se 和Map的区别
查看>>
RTS打卡计划第四周
查看>>
C#_delegate - Pair<T> 静态绑定
查看>>
成都OpenPart——DevOps专场活动参与感
查看>>
Delphi xe6 android Popup控件的使用
查看>>
浅谈linux读写同步机制RCU
查看>>
三层架构设计理念
查看>>
spring的@Transactional
查看>>
java 中生成随机验证码
查看>>