Sentry.captureException(new Error('test')) 捕获消息 另一种常见操作是捕获裸信息。消息只是应该发送给Sentry的一些文本信息。 1 Sentry.captureMessage('Something went wrong'); 3、初始化配置 sentry SDK 可以通过很多方式进行配置。 主要配置初始化配置的函数为 init() 方法,通过向 init() 方法传递参数对象; 1 2 3 4 5 Sentry.init({ dsn: 'https://
// 创建一个零时到 scope ,配置到 context 上面 Sentry.withScope((scope) => { }); User 1 2 3 4 5 6 scope.setUser({ id:'1', username:'xiao', ip_address:'127.0.0.1', email: 'test.doe@example.com' , }); 通过 setUser 来设置 User 信息。 其中 user 可以设置的信息包括 id 、 username 、 ip_address 、email Tags tags 是给事件定义不同的键/值对,可以在查找的时候更容易。 后台查找的时候,查找选项会多出来一个选项,就是通过 tags 来设置的。 1 scope.setTag("page_local", "de-at"); 通过 setTag 来设置了一个page_local 的标签。 后台会多一个 page_local 选项。包括 de-at level 通过这个来设置事件的严重性。 包括:fatal 、error 、 warning 、 info 、 debug 。( fatal : 严重,error 错误,error 为默认 ) 1 scope.setLevel('warning'); 通过 setLevel 来设置。 Fingerprint 指纹,通过指纹把信息分到不同的组中 Extra Data 传入额外的信息。并不会创建索引(也就是不可以提供来检索)。 1 scope.setExtra("character_name", "Mighty Fighter"); 通过 setExtra 来设置。 6、Breadcurumbs 面包屑 面包屑用于记录一系列当行为,当下一次发生错误事件上传当时候会随着一起上报。 浏览器 javascript sdk 将自动记录所有当位置更改。 1 2 3 4 5 Sentry.addBreadcrumb({ category: 'auth', message: 'Authenticated user ' + user.email, level: 'info' }); 我们可以通过 addBreadcrumb 来添加一次行为记录。 7、user Feedback 用户反馈,sentry 提供了一个客户反馈当窗口。 当错误发生当时候,可以弹出窗口收集一些信息,例如: 用户名 用户当邮件地址 发生的问题的描述等。 1 Sentry.showReportDialog(); 通过 showReportDialog 来实现框架的弹出。 sentry实现预警并且邮件提醒 邮件预警和邮件提醒是在生产环境中不可缺少的一部分,只有有效的提醒来能让我们最快的解决问题。 在项目中选择 setting --> alerts 进入邮件预警设置页面。 这里都是基本的邮件规则。 在 tabs 中的 rule 可以自定规则。 规则设置: An event is seen : 一个事件发生的时候 An issue is first seen : 第一个发生错误的时候 An issue changes state from resolved to unresolved :问题从解决到未解决的时候 An event's tags match {key} {match} {value} : 匹配到 tags 的键值对的时候发送 An issue is seen more than {value} times in {interval} :在固定时间内出现次数匹配的时候 An issue is seen by more than {value} users in {interval} :在固定时间内出现用户的次数匹配的时候 An event's {attribute} value {match} {value} : 匹配到某一个事件的时候 An event's level is {match} {level} : 事件级别匹配的时候 sentry 生产的 sourcemap 配置 介绍 现在开发很多时候,我们的代码都会利用构建工具对代码合并、压缩、混淆等。 在产生这些生产代码的时候,为了利于我们开发调试、bug修复会产生一个 sourcemap 。 sourecmap 的主要作用就是将我们的打包的代码前后最了一个关联。 这里,sentry 对生产的 sourcemap 有很好的处理,它可以很快的让我们确定代码的错误位置。 准备工作 首先我们需要添加 sentry 的命令行的管理工具 sentry-cli 1 2 npm i -g @sentry/cli
// 上面的不行就用下面的 npm install -g @sentry/cli --unsafe-perm 获取认证的 token 选择API后就可以生成token,记得勾选 project:write 权限。 这里的 token 是用于登陆的。 登陆 1 sentry-cli --url myserver login 回车后输入上一步获得的 token 即可 创建版本 1 sentry-cli releases -o 组织 -p 项目 new release@1.1.0 -o : 组织,可以在我们的 Organization Settings 中找到 -p : 项目名称 , 可以在 projuct 中找到 release@1.1.0 : 发布的版本号,可以自定义,这个后需要在应用配置的时候传入 配置 release 到应用 1 2 3 4 Sentry.init({ dsn: 'http://18ac34902da74aa29a4328879a58fb0d@localhost:9000/2', release: 'release@1.1.0', }); 上传 sourcemap 文件 1 sentry-cli releases -o 组织 -p 项目 files release@1.1.0 upload-sourcemaps jspath文件所在目录 --url-prefix 线上资源URI -o , -p : 和上文一样 jspath : js 文件的位置 uri : js 文件相对于域名的位置 特殊说明 url-prefix 这里是必须传的,不传找不到 map 文件,例如: 你的 js 线上的地址为 :https://test.com/static/js/test.js 这个时候 url-prefix 应该为 : '~/static/js/' 完成!!!! 配置文件,在命令行操作的时候,sentry 支持配置文件。 配置文件默认文命令的目录。 配置文件 .sentryclirc 1 2 3 4 5 6 7 [auth] token=1a59c94sdfsdfs33b5588b27bd3628c98ff2837c054b4503be089ad623620527 [defaults] url=http://localhost:9000 project=react-test org=test 配置之后就不需要在输入项目名称和地址了。 总结步骤: 1、注册账号 、创建项目 直接登陆 sentry 官网,注册账号,并且创建一个项目 2、在项目中配置 sentry 1 2 3 4 Sentry.init({ dsn: 'http://18ac34902da74aa29a4328879a58fb0d@localhost:9000/2', release: RELEASE_VERSION, }); 3、打包时候上传 sourcemap 文件 4、配置邮件预警 https://www.cnblogs.com/jiebba/p/10049938.html 我的博客 : XiaoLong's Blog 博客园小结巴巴: https://www.cnblogs.com/jiebba 感觉可以就推荐下吧!! 感觉可以就推荐下吧!! 感觉可以就推荐下吧!! 感觉可以就推荐下吧!! 感觉可以就推荐下吧!! 分类: js高级工具库,react 标签: webpack, 基础操作https://www.cnblogs.com/jiebba/p/10049938.html
