1

有什么方法可以将日志发送到 ELK(日志存储),而无需使用日志返回配置在 Spring Boot 中写入日志文件

4

2 回答 2

2

假设您只是不想写入日志文件(但仍在使用 spring boot 和 logback),那么您可以使用提供的 TCP 或 UDP logback appenderlogstash-logback-encoder将日志发送到 logstashtcpudp输入。

示例 logback 配置:

<configuration>
  <appender name="logstash" class="net.logstash.logback.appender.LogstashTcpSocketAppender">
      <destination>logstash-host:4560</destination>
      <encoder class="net.logstash.logback.encoder.LogstashEncoder" />
  </appender>

  <root level="INFO">
      <appender-ref ref="logstash" />
  </root>
</configuration>

示例logstash配置:

input {
    tcp {
        port => 4560
        codec => json_lines
    }
}

有关更多附加程序和编码器选项,请参阅 logstash-logback-encoder 文档。

于 2019-12-05T19:29:39.080 回答
1

您可以创建一个具有以下参数的 auditDocument 类型的东西,然后将其推送到 ELK...

参数:Req ID、Req BODY、Res BODY、API 调用、方法等。(根据您的要求)

于 2019-12-05T08:39:35.433 回答