springboot支付项目之日志配置

简介 日志框架本节主要内容:1:常见的几种日志框架2:Logback的使用3:怎么配置info和error级别日志到不同文件中并且按照日期每天一个文件。以上几个框架可以分类如下:SLF4J和Logback的使用日志级别:级别越大越严重。一:Java类中使用日志两种方式:方式一:在每个类中添加日志对象:private final Logger logger =Log

🔔🔔好消息!好消息!🔔🔔

 如果您需要注册ChatGPT,想要升级ChatGPT4。凯哥可以代注册ChatGPT账号代升级ChatGPT4

有需要的朋友👉:微信号 kaigejava2022

日志框架

本节主要内容:

1:常见的几种日志框架

2:Logback的使用

3:怎么配置info和error级别日志到不同文件中并且按照日期每天一个文件。

以上几个框架可以分类如下:

SLF4J和Logback的使用

日志级别:

级别越大越严重。

一:Java类中使用日志两种方式:

方式一:在每个类中添加日志对象:

private final Logger logger = LoggerFactory.getLogger(LoggerTest.class);

方法二:使用lombok插件:

在pom.xml文件中添加lombok依赖:

<dependency>

<groupId>org.projectlombok</groupId>

<artifactId>lombok</artifactId>

<optional>true</optional>

</dependency>

然后再类上面使用@slf4j注解

推荐使用第二种,注解方式。这样就不用再每个类中添加了。

二:变量的打印

方式一:使用字符串+的方式。

直接使用字符串+的。如果变量多,+就需要很多了。

方式二:使用占位符的方式。

两个运行的结果:

推荐使用第二种,这样一看及明白。

Logback的配置

两种配置方式:

application.yml和logback-spring.xml

也就是一种基于yml文件一种基于xml文件配置的

来看下项目中经常遇到的日志需求:

区分info和error日志;每天产生一个日志文件。

方式一:再yml文件中配置

我们可以看到,logging相关配置还很多的。如console打印的日志格式、日期格式、文件、日志级别、日志最大大小等等。都可以配置的。

如:我们配置在控制台输出时间-信息换行。这个怎么配置呢?

查看运行结果:

配置日志输出位置:

运行后,可以在C盘下看到一个aa文件夹,打开就是日志文件了。如下图:

默认日志文件名称是spring.log。如果想修改成自己的可以使用file。如下图

运行后:

修改日志级别:

日志级别还可以绑定到指定的类上面。如:

第二种方式:使用xml文件配置

1:控制台输出:

2:根据不同日志级别输出到不同日志文件中。文件名带上日期

可以看到,文件滚动方式有很多,可以安装大小和时间、可以按照时间的。如下图:

配置后文件如下:

基于XML配置的所有配置信息:

<?xml version="1.0" encoding="utf-8" ?>

<configuration>

<!-- 控制台输入日志格式配置-->

<appender name="consolelogg" class="ch.qos.logback.core.ConsoleAppender">

<layout class="ch.qos.logback.classic.PatternLayout">

<pattern>

%d -%msg%n

</pattern>

</layout>

</appender>

<!-- info日志 每天一个日志文件配置-->

<appender name="infoFileLog" class="ch.qos.logback.core.rolling.RollingFileAppender">

<filter class="ch.qos.logback.classic.filter.LevelFilter">

<level>ERROR</level>

<onMatch>DENY</onMatch>

<onMismatch>ACCEPT</onMismatch>

</filter>

<encoder>

<pattern>

%msg%n

</pattern>

</encoder>

<!-- 配置日志滚动策略-->

<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">

<!-- 文件路径.文件名称中带有日期-->

<fileNamePattern>c:/aa/info.%d.log</fileNamePattern>

</rollingPolicy>

</appender>

<appender name="fileErrorLog" class="ch.qos.logback.core.rolling.RollingFileAppender">

<filter class="ch.qos.logback.classic.filter.ThresholdFilter">

<level>ERROR</level>

</filter>

<encoder>

<pattern>

%msg%n

</pattern>

</encoder>

<!--滚动策略-->

<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">

<!--路径-->

<fileNamePattern>c:/aa/error.%d.log</fileNamePattern>

</rollingPolicy>

</appender>

<root level="info">

<appender-ref ref="consolelogg"/>

<appender-ref ref="infoFileLog"/>

<appender-ref ref="fileErrorLog"/>

</root>

</configuration>

各位有什么更好的日志框架介绍下呗


TopTop