扑街,Spring boot admin 中的 httptrace 怎么没了?

共 921字,需浏览 2分钟

 ·

2020-08-30 12:03

前言

近日,收到群友反馈 Spring boot admin 中的 httptrace(http跟踪)没了,笔者复查了一下果然是没有了。

Spring boot admin 中的 http跟踪 会展示最近服务请求的请求,并展示请求的火焰图。如下图:


排查

我在收到此问题时第一时间去查看了 Spring boot admin 的代码,发现 httptrace 功能是存在的。

然后我在 Spring boot github 搜索到了这条 issues默认情况下禁用 management.trace.http[1]

我们可以看到在 Spring boot 2.0.0 M4 中去掉了默认注入的 InMemoryHttpTraceRepository Bean。


题外
,大家遇到一些版本变动的问题,也可以去 Spring-bootSpring cloud Githubissues 中搜索。


结论

Spring boot 2.2.x 正式版开始,不再默认开启 InMemoryHttpTraceRepository,所以导致了这个问题。

对于此问题,官方建议采用第三方组件来进行 httptrace 的收集,详见:鼓励使用第三方跟踪和可观察性解决方案,而不是实现自己的HttpTraceRepositroy[2]

下图为笔者采用 prometheus 收集并展示到 Grafana 的示例。



参考资料

[1]

默认情况下禁用 management.trace.http: https://github.com/spring-projects/spring-boot/issues/15039

[2]

鼓励使用第三方跟踪和可观察性解决方案,而不是实现自己的HttpTraceRepositroy: https://github.com/spring-projects/spring-boot/issues/17047

浏览 54
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报