您的位置:首页 > 编程语言 > Java开发

SpringBoot入门系列之第二篇:logback日志输出

2017-07-10 16:03 465 查看
参考文档:

spring-boot官方文档

Spring Boot干货系列:(七)默认日志框架配置

Spring Boot日志管理

前言

text

Spring Boot在所有内部日志中使用Commons Logging,但是默认配置也提供了对常用日志的支持,如:Java Util Logging,Log4J, Log4J2和Logback。每种Logger都可以通过配置使用控制台或者文件输出日志内容。


日志格式

默认日志输出如下:




输出内容元素具体如下:

text

时间日期: 精确到毫秒

日志级别: ERROR, WARN, INFO, DEBUG or TRACE

进程ID

分隔符: --- 标识实际日志的开始

线程名: 方括号括起来(可能会截断控制台输出)

Logger名: 通常使用源代码的类名

日志内容


LogBack 日志基本没有FATAL (映射为Error)

控制台输出

2.1 控制台输出

在Spring Boot中默认配置了ERROR、WARN和INFO级别的日志输出到控制台。

我们可以通过两种方式切换至DEBUG级别:

在运行命令后加入–debug标志,如:$ java -jar blog.jar –debug

在application.properties中配置debug=true,该属性置为true的时候,核心Logger(含嵌入式容器、hibernate、spring)会输出更多内容,但是你自己应用的日志并不会输出为DEBUG级别

2.2 多彩输出

如果你的终端支持ANSI,设置彩色输出会让日志更具可读性。默认为

文件输出

3.1 默认只把日志输出到控制台。

3.2 若要输出日志到文件中,需要在配置文件中配置logging.file或logging.path,示例如下:

logging.file = my.log:将日志写入指定的日志文件,值可以是绝对路径也可以是相对路径

logging.path = /var/log:创建spring.log文件在此目录下,将日志写入该日志文件中,值可以是绝对路径也可以是相对路径

当日志文件大于10MB,会有新的日志文件,默认输出级别为:ERROR, WARN 和 INFO

日志级别

在spring环境(例如application.properties)中都用‘logging.level.*=LEVEL’来进行日志级别控制,所有日志系统都支持。

级别LEVEL:分为TRACE, DEBUG, INFO, WARN, ERROR, FATAL, OFF。

例如:root日志配置为logging.level.root。在logging.level.root中如下所示:

logging.level.root=WARN:root日志以WARN级别输出。

logging.level.org.springframework.web=DEBUG:org.springframework.web包下的class以DEBUG级别输出。

logging.level.org.hibernate=ERROR:org.hibernate包下的class以ERROR级别输出。

自定义日志配置

日志在ApplicationContext创建之前加载。

所以不能通过在@Configuration文件中的@PropertySources来进行配置

Logback:logback-spring.xml, logback-spring.groovy, logback.xml or logback.groovy

Log4j2:log4j2-spring.xml or log4j2.xml

JDK (Java Util Logging):logging.properties

推荐使用-spring命名的配置文件,

文件默认放在src/main/resources下,或者在配置文件中更改属性logging.config=classpath:logback-spring.xml

其他的一些配置属性:




-

日志扩展
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: