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

春云侦探+log4j2

高正初
2023-03-14

我的一些微服务使用log4j2作为记录器。Spring cloud Sleuth支持logback。在这个场景中,我如何使用Sleuth来获得分布式跟踪。我明白用log4j2使用sleuth,我必须实现某些类。我试过了,但没有运气。请帮忙

共有1个答案

常宸
2023-03-14

Sleuth将traceId和spanId放在MDC(映射的诊断上下文)中。

可以使用%x检查MDC键值对,与Sleuth相关的键有traceidspanidparentidspanexportable

要模拟logback默认样式,只需在patternlayout中添加以下代码片段:

[${APP_NAME},%X{traceId},%X{spanId},%X{spanExportable}]
 类似资料:
  • 有必要为进入控制台日志的所有内容生成一个span id,但不幸的是,没有生成span id: 应用程序.yml logback.xml 为显式调用的日志记录方法生成span id:

  • 我正在使用spring-cloud-sleuth为http请求、rabbitMQ消息和sheduled事件的日志添加相关id。添加依赖项后,应用程序的启动时间增加了50%。所有其他配置属性,如spring.sleuth.async.enabled和spring.sleuth.grpc.enabled的默认值为true。如果我想减少我的应用程序启动时间,我需要在我的应用程序属性文件中将所有这些都过期

  • Spring Cloud Sleuth跟踪头是否像这里描述的RabbitMq和Kafka那样被注入到Spring Cloud Stream Kinesis消息中?我们有一个REST控制器,它在处理POST请求之后,但在向客户机发送响应之前,向Kinesis发送一个Avro消息,该消息使用Spring Cloud Stream Kinesis总结事务。我想确保在REST控制器中启动的跟踪id被传播到

  • 还有人在使用Zipkin时遇到以下问题吗?

  • 作为我们的内部IDP,我们使用的是Keycloak 6.0.1,它依赖于Wildfly16。 我们的大部分组件都是spring boot thingies,其中我们使用spring cloud sleuth+一些gelf配置将日志发送到ELK堆栈。 WildFly日志语句具有SpanID和traceID。 传播包含相关信息的WildFly传入请求。 Wildfly为不包含关联信息的请求生成新的关联

  • 当我在使用log4j2进行日志记录的Spring Boot项目中添加侦探依赖项时,我得到以下错误 sleuth是否只支持logback,并且还支持log4j2?