1.说说logback

2.logback要引用的包

从网上找资料看到很多包,各种说法也不一样,但是从我自己实践的效果看,引用一下这个包就可以了。

    <!-- https://mvnrepository.com/artifact/ch.qos.logback/logback-classic -->
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.3</version>
</dependency>

3.一个配置的事情

这样来说似乎太简单了,但是如果就是一般用用也确实如此,本来这就是一个配置的事情。似乎都不用解释什么了。

引入包以后,在resources目录中增加logback.xml,就这样就可以了。

你需要自己配置一点点内容。

  • 第4行,这里指定了一个正在运行中的日志文件的名称。这个需要你自己指定一下
  • 第15行,这里指定了一个以月份为目录,日期为文件名的日志归档规则。
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="60 seconds" debug="false">
<contextName>logback</contextName>
<property name="log.path" value="log/jwcwxds.log" />
<!--输出到控制台-->
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{yyyy-MM-dd} %d{HH:mm:ss.SSS} %contextName [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
<!--输出到文件-->
<appender name="file" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${log.path}</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>log/%d%d{yyyyMM}/jwcwxds.log.%d{yyyy-MM-dd}</fileNamePattern>
</rollingPolicy>
<encoder>
<pattern>%d{yyyy-MM-dd} %d{HH:mm:ss.SSS} %contextName [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender> <root level="trace">
<appender-ref ref="console" />
<appender-ref ref="file" />
</root>
<!--</logger>-->
</configuration>

4.开始使用吧

在需要用到日志的类的属性中增加
protected Logger logger = LoggerFactory.getLogger(this.getClass());
在需要记录日志的位置使用
比如我要记录三个参数和报错信息
logger.error("XH={} XM={} CJ={} ERROR={}",XH,XM,CJ,e.getMessage());

5.效果

05-11 13:41