默认使用Logback作为日志。日志配置会记录INFO级别以上的消息输出到控制台。
日志格式
2014-03-05 10:57:51.112 INFO 45469 — [ main] org.apache.catalina.core.StandardEngine : Starting Servlet Engine: Apache Tomcat/7.0.52
2014-03-05 10:57:51.253 INFO 45469 — [ost-startStop-1] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext
2014-03-05 10:57:51.253 INFO 45469 — [ost-startStop-1] o.s.web.context.ContextLoader : Root WebApplicationContext: initialization completed in 1358 ms
2014-03-05 10:57:51.698 INFO 45469 — [ost-startStop-1] o.s.b.c.e.ServletRegistrationBean : Mapping servlet: ‘dispatcherServlet’ to [/]
2014-03-05 10:57:51.702 INFO 45469 — [ost-startStop-1] o.s.b.c.embedded.FilterRegistrationBean : Mapping filter: ‘hiddenHttpMethodFilter’ to: [/*]
日志的具体内容:
日期和时间:毫秒精度,易于排序。
日志级别:ERROR,WARN,INFO,DEBUG,或TRACE。
进程ID。
一个—分离器来区分实际日志消息的开始。
线程名称:用方括号括起来(可能会截断控制台输出)。
记录器名称:这通常是源类名称(通常缩写)。
日志消息。
日志级别
通过修改application.yml设置输出的级别
1 | logging: |
文件输出
默认情况下,SpringBoot仅记录到控制台,不会写入日志文件。如果需要输出到文件,则需要设置 logging.file或logging.path属性(application.yml中设置)
logging.file:会在项目的当前路径下生成一个 xxx.log 日志文件
logging.path:在指定文件夹生成一个日志文件为spring.log
1
2复制logging:
file: xxx-log.log复制
注:二者不能同时使用,如若同时使用,则只有logging.file生效
自定义日志配置
根据不同的日志系统,如果有以下文件,将默认加载:
Logback:logback-spring.xml, logback-spring.groovy, logback.xml, logback.groovy
Log4j2:log4j2-spring.xml, log4j2.xml
JDK (Java Util Logging):logging.properties
springboot建议使用-spring变量进行日志记录配置(例如,logback-spring.xml而不是logback.xml)。如果使用标准名称,Spring无法完全控制日志初始化。
如果不使用以上文件名,则需要在application.yml配置加载
1
2复制logging:
config: classpath:log-config.xml复制
注: 自定义配置(logback, log4j2, jdk logging)可以去对应的日志系统官网查看如何配置