目录
1.LoggerFactory.getLogger(类名.class)
[2. lombok的@slf4j注解和log对象](#2. lombok的@slf4j注解和log对象)
日志级别
由低到高依次是:trace->debug->info->warn->error->fatal
其中当程序里设置了日志级别后,程序只会打印和设置级别相同以及以上的,
设置日志级别
可以针对不同的文件夹设置不同的目录级别
logging: level: root: trace
日志持久化
1.我们可以把日志保存在磁盘中特定的文件中,比如d盘的logs文件夹,使用代码:
javalogging: file: path: D:\logs
最后运行打印后我们在文件中可以找到
- 或者按一个文件名字来命名
javalogging: file: name: springbboot-1.log #名字随便取
此时我们运行后就可以在特定地方找到我们想要持久化保存的日志。
获取日志的两种方式
1.LoggerFactory.getLogger(类名.class)
java//1.传统方式 //使用private static final Logger logger=LoggerFactory.getLogger(ArticleController.class); import lombok.Data; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; /** * 在类级别上使用 @RequestMapping 注解,可以为整个控制器类指定一个基础的 URL 路径,这样在处理方法的时候可以省略该路径的配置 * 整个类都会被映射到/user路径, * */ @RequestMapping("/user")//在设置一层路径,后面还有个hi @Controller @ResponseBody//类中所有方法返回数据而不是页面 @Data public class UserController { //1.得到日志文件 //private static final Logger logger = LoggerFactory.getLogger(UserController.class); private static final Logger logger=LoggerFactory.getLogger("UserController"); @RequestMapping("/hi") public String sayHi(){ logger.trace("我是 trace"); logger.info("我是 info");//info就是普通的打印信息,默认日志级别; //warn,error,debug logger.warn("我是 warn"); logger.error("我是error"); logger.debug("我是 debug"); System.out.println("我是日志"); return "Hi,SpringBooot"; /**程序在打印的时候,会打印当前日志级别的及当前级别以上的; * */ } }
2. lombok的@slf4j注解和log对象
java
2.在类名上使用Lombok的注解@slf4j;
* 此时在类中的方法里就可以使用log对应的方法
import lombok.extern.slf4j.Slf4j;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
@ResponseBody
@RequestMapping("/art")
@Slf4j
public class ArticleController {
@RequestMapping("/hi")
public String satHi(){
log.trace("我是 slf4j的trace");
log.info("我是 slf4j 的trace");
log.debug("我是 slf4j的debug");
log.error("我是 slf4j的error");
return "hello,Article";
}
}
关于在pom.xml配置lombok依赖可以去maven仓库中去找,也可以在创建项目的时候选上,也可以在settings里面下载editstarters插件 (快速地添加和删除Starter依赖),之后再pom.xml内容中右键,选择generate,源路径url不改,然后就选择你想要的就ok.
日志作用1.发现和定位问题;
2.记录用户登陆的日志;->分析是正常登录还是恶意破解用户
3.记录系统的操作日志;->数据恢复和定位操作人
4.记录程序的执行时间;->方便优化程序