spring boot -log

spring boot内嵌了日志记录,提供了java util.logging,log4j2,logback的默认配置。java

默认状况下,若是使用了 spring boot系列的stater依赖,则默认使用logback来记录日志,logback路由,同时确保java util logging,commons logging,log4j,log4j2能正常使用。web

虽然spring boot提供多种日志框架,可是并不用担忧,通常状况下咱们并不须要改变日志的依赖项,使用spring boot为咱们配置的默认日志就能够了。spring

一,日志格式app

2014-03-05 10:57:51.253  INFO 45469 --- [ost-startStop-1] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext

格式为框架

1,时间,毫秒级编码

2,日志级别 INFO 还有 DEBUG WARN 等spa

3,进程idhibernate

4,线程名线程

5,记录器名称debug

6,日志内容

 

二,控制台输出 console output

默认error,warn,info级别的日志会打印到控制台。若是想看debug的日志,能够直接启动时

执行 java -jar xx.jar --debug

也能够在application.yml/properties中配置debug =true

当设置为debug模式后,将会记录更多的日志信息

也能够打开trace模式,记录日志跟踪。

 

三,带颜色的输出

若是咱们的终端命令窗口支持ansi,那么调配不一样的颜色有助于增长可读性。咱们能够经过

spring.output.ansi 配置去设置一个新的值来覆盖默认值。

颜色编码是使用%clr配置的。以简单的方式输出不一样颜色的日志。

默认的颜色为: fatal,error为红色,warn为黄色,info,debug,trace为绿色

固然咱们也能够设置某些格式的文本的颜色

%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){yellow}

四,日志文件

默认状况下, spring boot只是打印到控制台,没有将日志写到文件中。若是想要写日志须要在application.yml中配置

logging.file 或者logging.path

两个只能配置一个,若是配置logging.file,则在当前目录下生成一个日志文件

若是配置了logging.path,则会在指定路径下生成日志。

spring boot的日志默认10M会切割。

同时,log能够对不一样的package设置不一样的日志级别,更精确灵活。如

logging.level.root=warn

logging.level.org.springframework.web=debug

logging.level.org.hibernate =error

这有助于减小一些无关的日志打印,帮助咱们更好的排查问题。

五,自定义配置文件

能够经过配置logger.config指定一个xml配置文件进一步定制日志的属性。

你也能够强制spring boot使用指定的日志系统。你也能够将值设为none来禁止使用日志系统。

由于日志系统初始化是在建立applicationContext以前,因此注解形式不可用,只能经过配置文件配置属性,来更改日志系统或禁用日志系统。

根据日志系统,一下文件会被加载。spring boot在此建议日志配置文件的命名规则最好是xxx-spring.xml

这样才能彻底保证会被初始化。

Logging System Customization

Logback

logback-spring.xmllogback-spring.groovylogback.xml or logback.groovy

Log4j2

log4j2-spring.xml or log4j2.xml

JDK (Java Util Logging)

logging.properties

 spring boot 直接支持配置的一些属性

Spring Environment System Property Comments

logging.exception-conversion-word

LOG_EXCEPTION_CONVERSION_WORD

记录异常时出现的转换词

logging.file

LOG_FILE

默认的日志文件名称 当前路径直接生成

logging.path

LOG_PATH

默认的日志文件名称 带路径

logging.pattern.console

CONSOLE_LOG_PATTERN

控制台支持的日志格式

logging.pattern.file

FILE_LOG_PATTERN

日志文件支持的日志格式

logging.pattern.level

LOG_LEVEL_PATTERN

日志级别

PID

PID

当前进程id

相关文章
相关标签/搜索