Log4j比System.out.println的优势
- log4j可以自己定义日志文件的,命名规则,备份规则,存放路径,system.out默认输出到控制台
- log4j 可以自己定义日志的格式,使得日志可读性更加好
- log4j 可以灵活使用日志的级别,通过设置日志级别,可以在不同的运行环境使用不同的日志级别,从而达到只输出我们需要的日志到文件的目的。 (日志级别从小到大:debug,info,warn,error)
SpringBoot 日志, 默认日志级别是info, 默认日志采用sl4j
package com.controller;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* @Description: java类作用描述
* @Author: Bsea
* @CreateDate: 2019/6/7$ 20:15$
*/
@RestController
public class TestController {
private Logger log = LoggerFactory.getLogger(this.getClass());
@RequestMapping("/show1")
public String t1(){
log.debug("这个是debug-测试 基本的日志信息");
log.info("这个是info-普通信息 基本的日志信息");
log.warn("这个是warn-警告 基本的日志信息");
log.error("这个是error--错误 基本的日志信息");
return "tt";
}
}
测试结果:
2019-06-07 20:19:11.599 INFO 5748 — [nio-8080-exec-1] com.controller.TestController : 这个是info-普通信息 基本的日志信息
2019-06-07 20:19:11.599 WARN 5748 — [nio-8080-exec-1] com.controller.TestController : 这个是warn-警告 基本的日志信息
2019-06-07 20:19:11.599 ERROR 5748 — [nio-8080-exec-1] com.controller.TestController : 这个是error–错误 基本的日志信息
修改日志级别
// com表示包的名字
logging.level.com=debug
使用lombok 插件的@Slf4j
package com.controller;
import lombok.extern.slf4j.Slf4j;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* @Description: java类作用描述
* @Author: Bsea
* @CreateDate: 2019/6/7$ 20:15$
*/
@RestController
@Slf4j
public class TestController2 {
@RequestMapping("/show2")
public String t2(){
log.debug("这个是debug-测试 基本的日志信息");
log.info("这个是info-普通信息 基本的日志信息");
log.warn("这个是warn-警告 基本的日志信息");
log.error("这个是error--错误 基本的日志信息");
return "tt";
}
}
运行结果:
30 DEBUG 6032 — [nio-8080-exec-1] com.controller.TestController2 : 这个是debug-测试 基本的日志信息
2019-06-07 20:38:03.331 INFO 6032 — [nio-8080-exec-1] com.controller.TestController2 : 这个是info-普通信息 基本的日志信息
2019-06-07 20:38:03.331 WARN 6032 — [nio-8080-exec-1] com.controller.TestController2 : 这个是warn-警告 基本的日志信息
2019-06-07 20:38:03.331 ERROR 6032 — [nio-8080-exec-1] com.controller.TestController2 : 这个是error–错误 基本的日志信息