application.yml中的Spring Boot日志设置

时间:2019-06-12 14:17:41

标签: spring spring-boot yaml logback spring-logback

我正在构建一个Spring Boot应用程序。我使用logstash创建结构化日志,这很好用。但是,我正在尝试将以下logback.xml移至application.yml

<configuration>
    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <encoder class="net.logstash.logback.encoder.LogstashEncoder" />
    </appender>

    <root level="info">
        <appender-ref ref="STDOUT" />
    </root>
</configuration>

application.yml中找不到与之接近的任何教程或示例。

我还注意到了以下几点。如果我删除logback.xml并将以下内容放入application.yml

spring:
  logging:
    level:
      ROOT: WARNING

根据this问题,我至少应该控制自己的日志级别。没有骰子,到处都在记录信息。

所以,问题:

  • 如何在application.yml中正确指定ROOT日志级别?
  • 如何在application.yml中正确指定logstash编码器?

1 个答案:

答案 0 :(得分:2)

可以这样配置根级别:

logging:
  level:
    root: warning

但是不能使用属性或Yaml配置编码器。请在Spring Boot参考文档中找到所有属性: https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#common-application-properties

因此无法解决登录XML文件