当前位置: 首页 > 知识库问答 >
问题:

使用spring-cloud-sleuth自定义跟踪日志

周承天
2023-03-14

我对以更详细的方式记录跟踪信息感兴趣。对于每个日志语句,我都希望以JSON格式发出zipkin跟踪--非常接近于这里描述的内容:https://zipkin.io/pages/data_model.html

在《侦探》中完成这一点的最佳方法是什么?

共有1个答案

樊熠彤
2023-03-14

您可以使用自定义span reporter,在将span发送到zipkin之前,将span作为json结构转储到日志中。

更新:

有了这个合并了PR的https://github.com/spring-cloud/spring-cloud-sleuth/pull/1068,在2.1.0中,您将有一种实现自己的MDC条目的简单方法

 类似资料:
  • 我目前正在使用spring cloud sleuth依赖项进行spring webflux项目。 我正在开发一组API,这些API可以获得包含3个字符串的请求负载。我想连接这3个字符串作为我的自定义跟踪id。我还想达到以下要求。 这个自定义跟踪id应该能够添加到每个日志中。(我们通过在log4j.xml文件中添加以打印所有日志中的traceId来获取日志中的sleuth跟踪id) 注意,sprin

  • 我有2个使用Spring-Cloud-Stream和Kafka绑定的Spring Boot微服务。我正在使用Spring cloud sleuth依赖项进行日志跟踪。在微服务A中,当将事件发布到kafka中的主题时,我将trackId设置为 我没有在微服务B中获得这个值作为baggage头。我获得TraceId、SpanID,但不是上面设置的baggage元素。

  • 我已经使用spring-cloud-stream和RabbitMQ-binders和spring-cloud-sleuth建立了一个演示项目。 我有一个预定的春-云-流源: 我是不是漏掉了什么?(对zipkin来说相当陌生,勇敢而侦探)

  • 我有两个非常简单的spring-cloud-stream应用程序。消息生产者Service3通过Binder-Kafka向消费者Service4发送消息。 我用春云侦探来追踪它们之间的跨度。但是只有Service3中的跨在zipkin服务器中可用。Service4没有显示span。

  • 更新:我已将代码推送到我的回购协议中,以便人们可以查看那里,看看可能出现了什么问题。 编辑:我几乎可以肯定是客户端代码没有向服务器发布任何统计数据,但是下面的指南都没有解释如何启用:是否有我缺少的配置设置? 我一直在关注OpenZipkin和Spring Sleuth的快速启动:我从docker Zipkin使用和Cassandra作为后端运行Zipkin服务器: 我已经创建并运行了Spring

  • 我们正在考虑利用spring cloud sleuth进行分布式跟踪,并且我们已经开发了一个PoC。这似乎是一个很好的解决方案,开箱即用。 但我有一个后续问题: 我们使用随机UUID和64位ID作为跟踪ID。我们知道自定义头(例如,一个新的跟踪Id)可以与sleuth头一起添加,但是否可以覆盖slueth的默认跟踪Id格式?我们已经查看了文档,也许传播是我们要走的路。有谁做了这一点,可以指出我们在