5分钟集成日志监控告警——Sentry+钉钉

2.点击上图中的create project创建好项目,走完系统提示的步骤,直接进入项目的管理控制台,找到项目的client keys,我们的应用中集成sentry就靠它了,先记住这个路径。

5分钟集成日志监控告警——Sentry+钉钉

创建的项目client keys

3.下面开始进入我们的应用集成sentry客户端,先添加好Maven依赖:

5分钟集成日志监控告警——Sentry+钉钉

sentry依赖

在你的logback.xml中增加sentry的日志收集:

5分钟集成日志监控告警——Sentry+钉钉

sentry日志配置

在你的项目resources目录下增加一个sentry.properties,内容如下:

#创建的项目的client keys

dsn=https://f6881f52ad5e49c885c6c55d9af88668@sentry.io/1498731

#应用的包名

stacktrace.app.packages=com.test.sentry

#上报频率 1是全部都上报

sample.rate=1

#运用环境 dev test gamma prod

environment=dev

还差最后一步,在你的应用启动类里面注册一个bean:

5分钟集成日志监控告警——Sentry+钉钉

sentry注册bean

启动你的项目,制造一个log.error日志或者抛出一个异常,去你的sentry控制台去看看有没有吧~如果能收到异常告警,那么错误列表就会有数据:

5分钟集成日志监控告警——Sentry+钉钉

错误列表

4.以上就是快速的集成sentry,并将错误信息上报到sentry服务端。接下来的问题是:如何将这个错误信息实时的发送到钉钉群通知开发人员呢?我们去项目下找一个报警设置:

5分钟集成日志监控告警——Sentry+钉钉

sentry项目报警设置

有没有看见钉钉?没有就是没有钉钉,但是他有一个WEBHOOKS,给我们提供了一个钩子,有了钩子就好办事了,那我们就可以写一个小小的中间件,基本思路就是:当sentry服务端收到错误日志时候给配置的钩子发一条通知,这个钩子接收到告警通知后,把通知再发到钉钉机器人提供的钩子上去,这样不就可以打通sentry和钉钉了么?思路没问题就开始干

5.写一个简简单单的API,接受sentry的通知并发送到钉钉的机器人钩子上去,大家得先了解一下sentry发送的通知数据格式是什么样的,我一开始懒得找文档,直接用HttpServletRequest接收的,然后打印出来,再根据自己需要的字段信息,写了一个简单的请求接受类,然后再看看钉钉机器人的文档(这个就比较好找了,钉钉里面设置机器人的时候都告诉你文档地址了),基本就下面这一点点代码:

5分钟集成日志监控告警——Sentry+钉钉

API

5分钟集成日志监控告警——Sentry+钉钉

sentry发送的请求体

5分钟集成日志监控告警——Sentry+钉钉

发送给钉钉机器人的请求类

6.测试一下效果,制造一个错误日志或者异常信息,看钉钉能否实时收到告警信息:
5分钟集成日志监控告警——Sentry+钉钉
通过以上步骤,大家的应用就算是成功的集成了sentry并实时的将告警信息通知到钉钉群。上面写的一个简单的中间件大家也可以根据自己的需求发送到不同的平台,比如短信啊、邮件啊或者做更多特定需求的处理。另外,由于用的是在线sentry服务端,而不是自己搭建的sentry服务,每个月只有10K的免费使用量,所以只能用于个人学习实验或者量小的业务,对于大型的业务建议自行搭建sentry服务。

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值