我正在尝试通过使用spring-cloud d-gcp-starter-log将SpringBootApplication(微服务)与StackdriverLogging集成。我能够在GCP中看到日志,但在日志中traceId和SPANId丢失。为此,我也尝试使用Spring-cloud d-sleuth,但由于我在我的微服务中使用apache kafka,因此侦探无法正常工作。有人能帮我吗我如何在日志中添加traceId和SPANId信息??
POM。xml配置:
<spring-cloud.version>Hoxton.SR1</spring-cloud.version>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>${spring-cloud.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-gcp-starter-logging</artifactId>
</dependency>
logback.xml:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<include resource="org/springframework/cloud/gcp/autoconfigure/logging/logback-json-appender.xml" />
<appender name="CONSOLE_JSON" class="ch.qos.logback.core.ConsoleAppender">
<encoder class="ch.qos.logback.core.encoder.LayoutWrappingEncoder">
<layout class="org.springframework.cloud.gcp.logging.StackdriverJsonLayout">
<includeTraceId>true</includeTraceId>
<includeSpanId>true</includeSpanId>
<includeThreadName>false</includeThreadName>
</layout>
</encoder>
</appender>
<logger name="org.apache.kafka" level="warn">
<appender-ref ref="CONSOLE_JSON" />
</logger>
<root level="INFO">
<appender-ref ref="CONSOLE_JSON" />
</root>
</configuration>
默认情况下,Sleuth不会为每个请求发送跟踪数据。您可能也不想跟踪每个请求。可以通过配置spring.sleuth.sampler来调整跟踪采样率。百分比属性。有关更多详细信息,请参阅此链接中的“Spring Boot和Spring Cloud Sleuth”,并查看此视频。
例如,在包括Spring Cloud Sleuth之前,人们会在他们的日志中得到这样的东西 在应用程序名称附近有2个逗号(即traceID和spanID将显示的位置)。但我的日志最初看起来像这样 为了在日志中获取应用程序名称,我在application.properties中编写了以下代码 现在,我的日志看起来是这样的(如果您观察到,它在应用程序名称旁边没有2个逗号) 即使包括了Sleuth,我的
我想在我的应用程序中使用SLF4J+logback用于两个目的--日志和审计。 14:41:57.978[main]信息AUDIT_LOGGER-110欢迎使用main 如何确保审核消息在审核记录器下只出现一次?
SLF4J 提供了 MDC (Mapped Diagnostic Contexts)功能,可以支持用户定义和修改日志的输出格式以及内容。本文将介绍 SOFATracer 集成的 SLF4J MDC功能,方便用户在只简单修改日志配置文件的前提下输出当前 SOFATracer 上下文 TraceId 以及 SpanId 。 使用前提 为了在应用中的日志正确打印 TraceId 和 SpanId 参数,
问题内容: 我正在考虑将Redis用于Web应用程序日志记录目的。我用谷歌搜索,有人将日志转储到Redis队列/列表中,然后将计划的工作人员转储到磁盘中。 http://nosql.mypopescu.com/post/8652869828/another-redis-use-case- centralized-logging 我希望寻求理解,为什么不直接使用Redis持久化到磁盘?如果我分配了一
logging 模块自 2.3 版以来一直是 Python 标准库的一部分。在 PEP 282 中有对它的简洁描述。除了 基础日志教程 之外,这些文档是非常难以阅读的。 日志记录一般有两个目的: 诊断日志 记录与应用程序操作相关的日志。例如,当用户遇到程序报错时, 可通过搜索诊断日志以获得上下文信息。 审计日志 为商业分析而记录的日志。从审计日志中,可提取用户的交易信息, 并结合其他用户资料构成用
我正在设置一个spring boot应用程序,其中日志被发送到google cloud stackdriver。我正在使用logback appender进行堆栈驱动程序日志记录,并使用其文档中的logback文件https://cloud.google.com/logging/docs/setup/java. 我将Intellij中的GOOGLE_CLOUD_PROJECT和GOOGLE_APP