配置springboot日志,輸出級別為info,運行時報錯:
Caused by: org.springframework.boot.context.properties.bind.BindException: Failed to bind properties under 'logging.level' to java.util.Map<java.lang.String, java.lang.String> at org.springframework.boot.context.properties.bind.Binder.handleBindError(Binder.java:250) at org.springframework.boot.context.properties.bind.Binder.bind(Binder.java:226) at org.springframework.boot.context.properties.bind.Binder.bind(Binder.java:210) at org.springframework.boot.context.properties.bind.Binder.bind(Binder.java:166) at org.springframework.boot.context.logging.LoggingApplicationListener.setLogLevels(LoggingApplicationListener.java:307) at org.springframework.boot.context.logging.LoggingApplicationListener.initializeFinalLoggingLevels(LoggingApplicationListener.java:290) at org.springframework.boot.context.logging.LoggingApplicationListener.initialize(LoggingApplicationListener.java:238) at org.springframework.boot.context.logging.LoggingApplicationListener.onApplicationEnvironmentPreparedEvent(LoggingApplicationListener.java:200) at org.springframework.boot.context.logging.LoggingApplicationListener.onApplicationEvent(LoggingApplicationListener.java:173) at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:172) at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:165) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:139) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:127) at org.springframework.boot.context.event.EventPublishingRunListener.environmentPrepared(EventPublishingRunListener.java:74)
application.yml文件配置如下:
logging: pattern: console: "%d - %msg%n" # 定義打印的日志格式 # dateformat: #設置日志日期格式 # file: #定義輸出到日志文件的日志格式 # config: #日志配置文件的位置。例如,classpath:logback.xml。 file: E:/sell/sell.log #設置保存日志的日志文件 # max-history: # max-size: #設置日志文件最大大小 #設置日志等級 # path: / #日志文件的位置,例如/var/log register-shutdown-hook: false #當初始化日志系統時,為其注冊一個關閉鈎子。 level: info
原因是日志級別配置錯誤,應該配置為
level:
root: info
原因如下:
在官方的文檔找到如下圖logging日志級別的配置,官方地址:https://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#boot-features-custom-log-levels

大致的意思就是我們可以使用TRACE, DEBUG, INFO, WARN, ERROR, FATAL, 或者 OFF來指定Spring項目日志級別,它的格式為:
logging.level.<logger-name>=<level>
所以我們在配置日志級別時要配置一個logger-name,所以我們可以像上圖當中指定一個root,也可以指定一個包路徑,配置成logging.level.root=WARN的意思就是配置根日志記錄器,所以下面中的配置意思為:
logging.level.root=WARN
logging.level.org.springframework.web=DEBUG
logging.level.org.hibernate=ERROR
的配置就是org.springframework.web是DEBUG級別,org.hibernate是ERROR級別,其它項目的日志輸出級別為WARN。
