SLF4J 如何支持结构化日志记录 [已关闭]

有谁知道结构化日志记录通常如何使用SLF4J实现?

有没有已经有开源来处理这个问题?


答案 1

Slf4j 通过 v2.0.0 添加了对结构化日志记录(和 Fluent API)的支持(截至 2019 年 10 月的 Alpha 版):


答案 2

如果将 SLF4J 与 Logback 和 Logstash 结合使用,则 .您可以在Github上的logstash logback编码器页面上找到有关此内容的文档。StructuredArguments

它如何工作的简单示例。此日志行..

log.debug("Retrieved file {}", StructuredArguments.value("filename", upload.getOriginalFilename()))

..生成以下日志 json 输出:

{
  "filename": "simple.zip",
  "@timestamp": "2019-02-12T14:31:31.631+00:00",
  "severity": "DEBUG",
  "service": "upload",
  "thread": "http-nio-9091-exec-1",
  "logger": "some.great.ClassName",
  "message": "Retrieved file simple.zip"
}

推荐