大家早上好
今天是节后的上班的第一天
我今天要向大家分享的是
Sentry这个用于应用程序监控和错误跟踪的软件
首先我们先看下官方的介绍视频,能帮我们快速了解Sentry
http://mpvideo.qpic.cn/0bf2yiaeqaaaheao7weslnqfbqwdjdbaasaa.f10002.mp4?dis_k=330eca5611a9d317f17136b34d8a9a23&dis_t=1657794161&vid=wxv_1856092344228315137&format_id=10002&support_redirect=0&mmversion=false
大品牌信的过
安装Sentry
我们可以通过docker很快速的部署Sentry的服务
官方提供了很贴心的脚本能让我们一键部署
下面是官方给出的一键部署所需要的依赖
关于docker和docker-compose的安装我们在这里就不再赘述
如果大家有需要我们以后出文章教大家安装
我这边使用的是Windows10自带的WSL的子系统作为演示
如果大家有Linux的服务可以直接在Linux上面操作
通过git克隆onpremise的仓库
下面https://github.com.cnpmjs.org的前缀是一个镜像源用于克隆加速
代码语言:javascript复制git clone https://github.com.cnpmjs.org/getsentry/onpremise.git
cd onpremise
./install.sh
整个安装时间大概十分钟左右
然后通过docker-compose up -d
启动所有Sentry的服务
然后我们就可以通过 http://localhost:9000
去访问我们的Sentry前端服务了
输入之前安装时候填入的账号密码后
就可以看到类似下面的界面
下面邮箱配置部分可以根据你们实际修改即可
配置邮箱后,未来工具出错触发了Sentry
Sentry就会自动发送邮件给你
进入主界面后,我们可以在projects中创建我们的项目
安装Sentry SDK
创建完项目后我们就可以开始试试Sentry的效果了
我们在之前已经搭建好了rez的环境
现在它的优势就出来了
我们可以直接通过pipz安装sentry-sdk
代码语言:javascript复制rez env pipz -- install sentry-sdk
由于我这电脑没有其他DCC软件
故使用Substance Designer来做演示
通过rez env来运行带有sentry-sdk环境的Substance Designer
代码语言:javascript复制rez env sentry_sdk substance_designer -- "Substance Designer"
如何获取Sentry DSN
代码片段截图
大家看到我们通过初始化sentry-sdk后
在Substance Designer的python环境中成功触发了Sentry
相关上下文的信息都被收集到了Sentry上面
我们可以未来在我们写的工具中都用上Sentry
方便我们更好的debug和跟踪工具的使用情况
当美术使用我们的工具时遇到任何的错误
我们就再也不需要美术电脑上去debug或者再让美术复现之前的错误了
而且Sentry还有丰富的插件还能跟Jira, Gitlab,Github等集成
把我们对应的issue跟我们代码管理连接到一块
方便我们跟踪每个发布的版本的出错率等
如果我们配置了邮箱,sentry会把每周的错误统计出来
生成可视化的邮件发送给团队的每个人
我们也可以使用它的webhook去集成到我们其他环节中
比如我在网易的时候就通过Sentry的webhook去写了一个服务
当美术每次使用工具遇到任何错误
我们就能及时在POPO中收到相关的错误信息
这个webhook的服务是通过fastAPI实现的
核心代码已经在Github中开源 https://github.com/loonghao/webhook_bridge
大家只需要根据自己的业务需求重写对应插件的逻辑即可
Sentry所支持的插件集成
Sentry所支持的软件和语言
好了今天的分享就到这了
欢迎大佬们点赞和转发分享
我们下期再见