因为公司用到了sentry进行错误日志收集,来进行测试和预发环境的debug,所以自己搭建来进行学习。
Sentry介绍
Sentry
是一个实时事件日志记录和聚合平台。它专门用于监视错误和提取执行适当的事后操作所需的所有信息, 而无需使用标准用户反馈循环的任何麻烦。
和其他日志收集的对比
与ELK, splunk不同, sentry专注于应用程序产生的错误日志的聚合和监控. 官方提供了多个语言的SDK.
注意:Sentry不能替代日志收集平台如ELK等,这两个应该是相辅相成的。
Sentry着重于错误监控,而ELK着重于日志记录管理等,而日志收集平台也不能替代Sentry,日志收集平台由于收集大量的日志,Error、Warning、Info等各个等级的,无法快速定位到其中的错误异常。
SpringBoot集成
注册sentry
登陆 sentry.io
网站进行注册,填写姓名、组织名称等信息并注册好一个java项目。
添加依赖
Sentry提供了丰富多样的接入方式。
我这里采用了SpringBoot默认的logback作为日志系统,Sentry也支持这种方式。
<!-- 集成sentry实现错误日志收集-->
<dependency>
<groupId>io.sentry</groupId>
<artifactId>sentry-logback</artifactId>
<version>1.7.30</version>
</dependency>
修改logback配置文件
logback-spring.xml:
<?xml version="1.0" encoding="UTF-8"?>
<!--该日志将日志级别不同的log信息保存到不同的文件中 -->
<configuration>
<include resource="org/springframework/boot/logging/logback/defaults.xml" />
<springProperty scope="context" name="springAppName"
source