本文为稀土掘金技术社区首发签约文章,14天内禁止转载,14天后未获授权禁止转载,侵权必究!
前言
最近小编在做关于 Sentry
上报异常自动推送给工作群的功能。一开始想的技术方案非常普遍,就是实现一个 node
服务,暴露一个接口给 Sentry
应用的 webhook
。这样,Sentry
上报的异常,就可以先推送给 node
服务,然后借助 node
服务再推送给飞书(企业微信、钉钉)机器人。
在小编正准备着手码代码的时候,偶然得知飞书提供的飞书捷径
功能可以通过可视化的配置实现上面的技术方案,并且不用写一行代码,而且不用部署 node
服务,不由得喜出望外,马不停蹄赶紧去尝试。经过一番捣鼓,顺利实现了所有预期需求,成就感顿时拉满。
在这里,小编特意对整个配置过程做了梳理,形成文档,希望同样对这一方面感兴趣并且也有相同诉求的小伙伴们也能 get 到这个小技巧,😄。
本文的目录结构如下:
配置一个可自动推送 Sentry 异常信息的飞书捷径
废话不多说,我们直接步入正题。
配置一个满足条件的飞书捷径,我们需要完成下面四个步骤:
-
在飞书消息中创建一个
异常消息上报群
,并给消息群配置一个飞书机器人
; -
在飞书工作台中配置一个
飞书捷径
; -
给一个指定的
Sentry
项目配置一个Webhook
,并接入飞书捷径提供的webhook
地址; -
测试整个全链路配置是否生效;
接下来小编就给大家一一展示各个步骤是如何配置的。
配置异常消息上报群
不管大家在工作中使用的是飞书,还是企业微信、钉钉,都可以在消息群中配置一个机器人来自动推送消息。
以飞书
为例,配置过程如下:
-
创建一个
异常消息上报群
; -
给消息群配置一个
飞书机器人
;
在配置的飞书机器人
中,webhook
信息是最重要的,将会在后面的飞书捷径配置中用到。
配置飞书捷径
配置好消息群
和推送机器人
以后,我们接下来开始配置一个简单的飞书捷径
。
整个配置过程如下:
-
打开飞书工作台,找到
飞书捷径
功能,然后点击创建飞书捷径
这样我们就可以创建一个
飞书捷径
了。 -
配置一个触发器
触发器的配置非常简单,直接选择
Sentry
,然后选择新事件
,就可以了。 -
配置一个操作
在配置一个操作时,需要:
- 第一步,选择
webhook
应用; - 第二步,选择自定义请求;
- 第三步,选择请求方式为
POST
,数据类型为application/json
,url
为前面飞书推送机器人
的webhook
,数据格式为飞书推送机器人富文本类型消息
(详见 使用说明 - 富文本)。
这样,一个飞书捷径操作就配置好了。
- 第一步,选择
-
保存配置
配置好触发器、操作,直接点击创建按钮。
这样通过上面四个步骤,一个可对接 Sentry webhook
,并可推送 Sentry
异常消息到飞书消息群的飞书捷径
就配置好了。(配置好的飞书捷径,可以通过右上角的编辑按钮或者直接点击重复编辑)。
配置 Sentry Webhook
配置好飞书捷径以后,我们接下来需要在 Sentry
的 Project
中配置 Webhook
,接入飞书捷径。
过程如下:
-
选定一个
Sentry Project
,打开Setting
页面,在Legacy Intergrations
中开启Webhook
功能; -
在
Setting -> Alerts
中的Webhook
中,接入飞书捷径触发器的webhook
;
这样 Sentry Webhook
也配置好了。
测试配置
最后一步,我们来测试一下配置的飞书捷径是否生效。
我们可以通过 Setting Project -> Alerts -> WebHook
中的 Test Plugin
功能进行测试。
亲测有效哦,哈哈!
到这里,一个简单可用的飞书捷径就配置完成了。不过距离实际使用,还有一些差距,我们还需要继续完善它。
完整版的 Sentry 异常自动推送
一个完整可用的 Sentry 异常自动推送,需要满足以下几个条件:
-
上报的异常可通过飞书捷径推送到异常消息群;
-
推送的消息中包含异常的关键信息;
-
不同的异常推送给不同的负责人;
为了实现这三个功能,我们需要对 Sentry Project
和飞书捷径
做相关配置。
异常自动推送
要实现异常自动提送,我们需要在 Sentry Project
中创建一个 Alert Rule
。
点击 Create Alert Rule
按钮,开始配置 Alert Rule
。
点击 Set Conditions
按钮,进入配置页面。
配置满足条件的异常通过 Webhook
发送通知。
这样,Sentry
异常自动推送功能就配置好了。之后 Sentry
上报的异常都会自动通过 Webhook
推送给我们配置的消息群,通知开发人员及时去处理。
推送消息指定关键信息
将异常消息推送给消息群时,我们需要在推送消息中携带遗产改的关键信息,方便开发人员去快速定位问题。
这个需要我们在飞书捷径
中去做配置。
打开 飞书捷径
-> 自定义飞书捷径
-> 操作
-> 数据格式
,我们可以添加一些 Sentry
异常关键信息。
添加过程很简单,选好要添加的异常信息,然后在指定位置添加就可以了。
添加好异常信息的数据格式如下:
这样推送到消息群中的消息,就会携带异常的详细信息。点击请查看链接,可以直接跳转到 Sentry
异常页面。
不同的异常推送给不同的异常负责人
不同的异常推送给不同的异常负责人,我们也可以通过飞书捷径
来实现。
这一次,我们需要在飞书捷径中配置分支功能,具体如下:
具体配置过程:
-
配置设置条件;
我们可以在这里配置不同的
Sentry Project
异常走不同的处理分支。配置好的设置条件如下:
-
配置操作;
我们可以在每个分支中配置一个
webhook
操作,在数据格式中添加消息要推送的成员。
这样不同的异常推送给不同的负责人就完成了。
结束语
总的来说,通过飞书捷径来实现 Sentry
上报异常自动推送还是非常简单方便的,不用写代码,不用部署 node
服务,不知道大家有没有学废呢?当然,这个方案的前提是团队使用飞书
,如果没有使用飞书
,那还是老老实实的部署一个 node
服务吧,哈哈。
传送门
前端监控相关文章: