搭建私有Sentry日志收集系统并集成到springboot( 二 )


官方推荐结合日志框架一起使用,我们结合springboot自带的logback , 所以要多引入一个sentry-logback包 。
io.sentrysentry-spring-boot-starter3.1.0io.sentrysentry-logback3.1.0org.projectlomboklombok1.18.12provided2.项目中配置Sentry的dsn地址
springboot的application.yml配置文件配置sentry的dsn地址 , dsn地址从上面sentry创建项目时可以看到,因为我们使用springboot自带的logback结合 , 所以我们也配置下logback文件的路径 。
logging:config: classpath:logback-spring.xmlsentry:dsn: http://ac5a2918ec064472a861066a5c3ddcdc@10.10.4.23:19000/43.配置logback
在resources目录下创建logback-spring.xml 。
4.编写测试接口
我们建个controller类 , 写个测试接口打印出五种不同级别的日志测试下
@RequestMapping("/sentry")public String sentry(){log.info("测试sentry打印info日志");log.debug("测试sentry打印debug日志");log.warn("测试sentry打印warn日志");log.trace("测试sentry打印trace日志");log.error("测试sentry打印error日志");return "ok";}访问下测试接口地址如 http://localhost:8093/sentry, 可以在Sentry的问题菜单下看到一条error的日志 。
搭建私有Sentry日志收集系统并集成到springboot文章插图
测试sentry日志展示
5.调整推送日志级别
按上面的配置默认只推送了error级别的日志 , 我们可以在logback配置文件里调整推送级别 , 比如我们调整下logback-spring.xml内容使得WARN日志级别就触发推送到Sentry 。
WARN注意了:在logback文件中配置了日志级别WARN后 , 项目启动的时候日志也会推送到Sentry,比如以下是我启动时的三条warn日志
搭建私有Sentry日志收集系统并集成到springboot文章插图
启动日志
在Sentry上也能看到这三个日志(注意:有的日志会被Sentry聚合在一起 , 通过EVENTS列可以看到聚合了几个事件) , 点击问题里面可以看到具体的堆栈日志 。
搭建私有Sentry日志收集系统并集成到springboot文章插图
聚合的启动日志
再调用下测试接口 , 可以看到Sentry接收到了error和warn级别的两条日志(之前测试的我们清空了重新测试)
搭建私有Sentry日志收集系统并集成到springboot文章插图
error和warn级别的两条日志
扩展以下另一种方式 , 直接引入一个sentry-logback的包 , 然后在logback配置文件里配置即可1.引入maven依赖
io.sentrysentry-logback3.1.02.配置logback-spring.xml , 还包含了很多配置项
http://ac5a2918ec064472a861066a5c3ddcdc@10.10.4.23:19000/4200015000false1001.0.0production1.0falsefalsehost-450005000WARNDEBUG以上就是Sentry的全部内容了 , 还有许多高级的功能可以自己去了解 , 本文做个入门介绍 。
欢迎关注我 , 我会不定期发布一些Java、IT相关的内容 。