1

在 Quarkus 中,默认的日志库是 JBoss,使用它quarkus-logging-json可以将日志编码为 JSON。

service但是,Datadog 集成需要自定义字段,例如dd.span_iddd.trace_id以使日志与正确的语法相关联。

目前,我已尝试将其添加到application.properties

quarkus.log.console.format=%d{yyyy-MM-dd HH:mm:ss.SSS} %-5p service=%X{myServiceName}, traceId=%X{dd.trace_id}, spanId=%X{dd.span_id} [%c{2.}] (%t) %s%e%n

然而,这似乎并没有像预期的那样出现在 Datadog 中。

当我们使用 log4j2 时,我们只需像这样配置它。

Appenders:
  Console:
    name: Console_Appender
    target: SYSTEM_OUT
    JSONLayout:
      KeyValuePair:
          - key: service
          value: myServiceName

同样,找不到任何文档如何在 Quarkus 配置中完成相同的结果。

有谁知道我如何使用 Quarkus 将这些自定义属性注入 JSON 日志或如何将其与 Datadog 正确集成?

4

1 回答 1

2

我认为这里的断开是模式需要在 Jboss 日志管理器中,然后将它们编码为 JSON。

您是否尝试过放入%X{dd.trace_id:-0} %X{dd.span_id:-0}您的 Jboss 日志记录模式?

如果没有,我还建议在 support@datadoghq.com 上开一张票,我们可以与您一起解决这个问题。

于 2020-04-08T19:31:05.707 回答