前言


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

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

image.png

排查


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

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

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

image.png

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

image.png

结论


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

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

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

image.png
image.png

关注我们

image.png

扫描上面二维码,更多精彩内容每天推荐!


如梦技术
59 声望7 粉丝

人生就像愤怒的小鸟,当你失败时总又几只猪在笑。