Spring Boot:日志系统的简单使用
2018-05-25 本文已影响190人
ImWiki
使用日志非常的简单,默认情况下,Spring Boot会用Logback来记录日志,并用INFO级别输出到控制台。
添加依赖
compile("org.springframework.boot:spring-boot-starter-logging")
依赖其实也不需要添加,已经包含在spring-boot-starter
修改 application.properties
logging.file.max-size=10MB
logging.path=log
配置logging.path
那么就会在log文件夹生成一系列的log文件,如果超过了10MB就会对文件进行切割,就能找回之前的log文件。
└── log
├── spring.log
├── spring.log.2018-05-25.0.gz
├── spring.log.2018-05-25.1.gz
├── spring.log.2018-05-25.2.gz
├── spring.log.2018-05-25.3.gz
├── spring.log.2018-05-25.4.gz
├── spring.log.2018-05-25.5.gz
└── spring.log.2018-05-25.6.gz
测试Logger
@RunWith(SpringRunner::class)
@SpringBootTest
class LoggerTest {
var logger = LoggerFactory.getLogger(LoggerTest::class.java)
@Test
fun test() {
for (i in 0..100000){
logger.error("i = $i")
logger.info("i = $i")
}
}
}
输出的日志样式
2018-05-25 13:53:33.821 ERROR 46537 --- [main] com.thejoyrun.webtest.LoggerTest : i = 0
2018-05-25 13:53:33.822 INFO 46537 --- [main] com.thejoyrun.webtest.LoggerTest : i = 0
2018-05-25 13:53:33.822 ERROR 46537 --- [main] com.thejoyrun.webtest.LoggerTest : i = 1
2018-05-25 13:53:33.822 INFO 46537 --- [main] com.thejoyrun.webtest.LoggerTest : i = 1
2018-05-25 13:53:33.822 ERROR 46537 --- [main] com.thejoyrun.webtest.LoggerTest : i = 2
2018-05-25 13:53:33.822 INFO 46537 --- [main] com.thejoyrun.webtest.LoggerTest : i = 2
2018-05-25 13:53:33.822 ERROR 46537 --- [main] com.thejoyrun.webtest.LoggerTest : i = 3
2018-05-25 13:53:33.822 INFO 46537 --- [main] com.thejoyrun.webtest.LoggerTest : i = 3
2018-05-25 13:53:33.823 ERROR 46537 --- [main] com.thejoyrun.webtest.LoggerTest : i = 4
2018-05-25 13:53:33.823 INFO 46537 --- [main] com.thejoyrun.webtest.LoggerTest : i = 4
简单检索日志
简单的打印日志方式
cat spring.log
检索带有某个字符串的日志,就会打印带有ERROR的日志
cat spring.log | grep "ERROR"
Demo代码
https://github.com/taoweiji/GradleKotlinSpringBootMybatisSQLiteDemo