在开发项目中的Logback日志记录,你会吗???

一个Java后端的小白,在实战中遇见了比较好玩的功能就记录了下(σ゚∀゚)σ…:*☆哎哟不错哦

此文章方便以后实现该功能时可以直接在项目中添加pom.xml的依赖,创建logback.xml配置,更改其日志存放路径和需要日志记录的包,便可使用。

Logback中文网

Logback 继承自 log4j。
Logback 的架构非常的通用,适用不同的使用场景。

Logback 被分成三个不同的模块:
logback-core、logback-classic、logback-access

logback-core 是其它两个模块的基础。
logback-classic 模块可以看作是 log4j 的一个优化版本,它天然的支持 SLF4J,所以你可以随意的从其它日志框架(例如:log4j 或者 java.util.logging)切回到 logack。
logback-access 可以与 Servlet 容器进行整合,例如:Tomcat、Jetty。它提供了 http 访问日志的功能。

Logback的主要标签:
Logger: 日志的记录器,主要用于存放日志对象,也可以用来定义日志的类型和级别等。
appender:用于指定日志输出的目的地,也就是输出的媒介。这个媒介可以是控制台,也可以是文件,还可以是远程套接字服务器等。
layout:用于格式化日志输出的格式。

下面便在用Spring Boot的入门小项目:收发红包中添加该功能:
Spring Boot入门就是这么简单

功能:
1、记录每次运行项目程序时的日志,放到指定目录下
2、每隔一天把昨天的日志存放到文件夹中并压缩

pom.xml:


		
			org.slf4j
			slf4j-api
			1.7.28
			jar
			compile
		
		
			ch.qos.logback
			logback-core
			1.2.3
			jar
		
		
			ch.qos.logback
			logback-classic
			1.2.3
			jar
		
		
			org.junit.platform
			junit-platform-commons
			1.6.2
			compile
		

resources/logback.xml:





	
	
	
	
	
	
	
	
	
	
	
	
	
	
			  
	
	
	
		
			${log.pattern}
		
	
	
	
	
	
			  
		
		${log.filePath}/debug.log
		
		
			
			${log.filePath}/debug/debug.%d{yyyy-MM-dd}.log.gz
			
			
			
			${log.maxHistory}
		
		
		
		
			${log.pattern}
		
		
		
		
			DEBUG
			ACCEPT
			DENY
		
	

	
	
	
			  
		
		${log.filePath}/info.log
		
		
			
			${log.filePath}/info/info.%d{yyyy-MM-dd}.log.gz
			
			
			
			${log.maxHistory}
		
		
		
		
			${log.pattern}
		
		
		
		
			INFO
			ACCEPT
			DENY
		
	

	
	
	
			  
		
		${log.filePath}/error.log
		
		
			
			${log.filePath}/error/error.%d{yyyy-MM-dd}.log.gz
			
			
			
			${log.maxHistory}
		
		
		
		
			${log.pattern}
		
		
		
		
			ERROR
			ACCEPT
			DENY
		
	

	
	
		
		
		
	
	
	
	
		
	

我便试验其中一个功能,添加便于观察的logger方法:
具体项目源码:Spring Boot入门就是这么简单
LuckymoneyController.java:

/**
     * 红包的并发中的事务
     */
    @GetMapping("/luckymoneys/two")
    public void createTwo(){
    Logger logger = LoggerFactory.getLogger(LuckymoneyController.class);
        logger.info("===start===");
        long startTime = System.currentTimeMillis();
        service.createTwo();
        logger.error("test error!");
        long endTime = System.currentTimeMillis();
        logger.debug("costTime:[{}ms]",endTime-startTime);
        logger.info("===end===");
    }

运行Spring Boot,访问网页后:
在开发项目中的Logback日志记录,你会吗???_第1张图片
观察控制台信息:
在开发项目中的Logback日志记录,你会吗???_第2张图片
运行访问成功,观察logback日志记录
在开发项目中的Logback日志记录,你会吗???_第3张图片
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
可以发现日志是成功记录了的,从配置信息可以看出目前是没有生成文件夹,是因为我们设置的是1天生成一个文件夹,调一下时间,访问后
在开发项目中的Logback日志记录,你会吗???_第4张图片
有关于Logback的使用就记录到这里┗( ▔, ▔ )┛

你可能感兴趣的:(Logback,项目操作,java,logback)