当前位置: 首页 > Web前端 > HTML5

Sentry

时间:2023-04-05 18:55:45 HTML5

的使用需要加入到公司的项目中,所以瞎胡乱总结了一下入门的使用方法。哈哈,欢迎指教,希望对大家有所帮助~~~哨兵了解自己,可以更方便的了解非本质存在的bug,无法通过日志追踪的异常等。一、哨兵简介:哨兵是一个实时事件记录和聚合平台。它专为监视错误和提取执行适当的事后分析操作所需的所有信息而设计,而无需使用标准用户反馈循环。Sentry是一个日志平台,分为客户端和服务端。客户端(目前客户端有Python、PHP、C#、Ruby等多种语言)嵌入在你的应用中间,程序向服务器发送异常。消息,服务器将消息记录到数据库中,并提供网页程序方便查看。Sentry使用python编写,源代码开源,性能优良,易于扩展。目前知名用户有Disqus、Path、mozilla、Pinterest等。2、公司已经有现成的注册使用Sentry的服务,所以我们只需要使用公司邮箱注册即可。下面简单介绍一下使用方法:2.1首先注册一个账号:分为UAT和ONLINE在线:https://sentry-fe...//这里是uat的官方在线链接:http://sentry。..//这里是uat环境链接(公司邮箱注册)。新注册的帐户可能无法创建新项目。这个时候需要点击左边栏,点击Project&Teams,需要加入Teams。这是一个刷新页面,你可以选择Youcanseeyourprojectunderproject。如果没有项目,请联系管理员;进入后进行简单的配置,然后点击右上角的NewProject进行创建,选择需要的项目类型,根据提示进行配置,选择相应的技术。下面生成的链接就是项目以后实时监控bug的地址(这个需要在项目中的sentry.ts文件中配置)2.2项目中的sentry配置a.首先下载依赖$yarnaddraven-js-Db。项目中的sentry配置文件(目前有一套配置文件,可以直接使用,也可以修改里面的错误报警规则)例如:c.项目中的哨兵参考:import*asRavenfrom"raven-js";//首先介绍import{ravenOptions,DSN_ONLINE,DSN_UAT}from"config/sentry";//上述哨兵的配置文件import{isLocalEnv,isUatEnv}from"utils/url";//获取封装后的页面链接componentDidMount(){if(!isLocalEnv){constdsn=isUatEnv?DSN_UAT:DSN_ONLINE;Raven.config(dsn,Object.assign({},ravenOptions,{release:__webpack_global__.SENTRY_RELEASE//这里注意,__webpack_global__相当于global,需要在tsconfig.json中进行配置,深层原理和关联可以在ezpack库中追踪})).install();}}//componentDidCatch错误捕获componentDidCatch(error,errorInfo){constgroup=errorInfo?location.href:“默认”;Raven.captureException(error,{extra:errorInfo,fingerprint:[group]});}
以上就是给项目添加哨兵的最简单的配置。为了测试,添加thrownewError("testerror");发布到环境中进行测试,查看自己账号项目是否报错。以上只是简单的在项目中配置。当然,我们可以使用它更友好的使用,比如在请求的时候加入:constcaptureException=(err,option)=>{Raven.captureException(err,{fingerprint:["API",option.url],message:err,extra:option});};//请求时,可以在错误处理方法中加入此配置。当检测到错误时,详细信息会包括指纹:类型、消息:错误信息、额外:请求链接信息和连接等,都会在哨兵监控的详情中显示。还有一些其他的用法,研究后会更新。..(^__^)嘻嘻...推荐参考资料:【参考1】【参考2】