在 Quarkus 中,默认的日志库是 JBoss,使用它quarkus-logging-json
可以将日志编码为 JSON。
service
但是,Datadog 集成需要自定义字段,例如dd.span_id
和dd.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 正确集成?