为SpringBoot项目添加日志:slf4j

slf4j:

slf4j(simple logging facade for java),java的简单日志外观,不提供完整的日志记录解决方案;为各种 loging APIs 提供一个简单统一的接口,实现日志框架一些通用的api。

操作步骤

添加lombok和slf4j依赖:

	<dependency>
       <groupId>org.projectlombok</groupId>
       <artifactId>lombok</artifactId>
       <optional>true</optional>
    </dependency>

    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>1.7.25</version>
    </dependency>

/src/main/resource中创建logback-spring.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="60 seconds" debug="false">
    <contextName>logback</contextName>
    
    <!--日志输出到控制台-->
    <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>%d{HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n</pattern>
        </encoder>
    </appender>

    <!--按天生成日志-->
    <appender name="logFile" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <Prudent>true</Prudent>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            
            <!--日志名称为mylog下按日期命名的log文件-->
            <FileNamePattern>
                mylog/%d{yyyy-MM-dd}/%d{yyyy-MM-dd}.log
            </FileNamePattern>
            
            <!--日志最长保存时间为30天-->
            <MaxHistory>30</MaxHistory>
        </rollingPolicy>
        
        <layout class="ch.qos.logback.classic.PatternLayout">
            <Pattern>
                %d{yyyy-MM-dd HH:mm:ss} -%msg%n
            </Pattern>
        </layout>
        
        <!--日志内存限制为10MB-->
        <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
            <MaxFileSize>10MB</MaxFileSize>
        </triggeringPolicy>
    </appender>
    
    <!-- 确定具体的包或类的日志输出级别-->
    <logger name="com.example.demo" additivity="false">
        <appender-ref ref="console"/>
        <appender-ref ref="logFile"/>
    </logger>
    <root level="info">
        <appender-ref ref="console"/>
        <appender-ref ref="logFile"/>
    </root>
</configuration>

修改yml配置文件

logging:
  config: src/main/resources/logback-spring.xml
  level:
    com.example.demo: debug

测试

在之前创建的SpringBoot项目中进行测试
加入slf4j注解
在这里插入图片描述
方法中加入日志信息
在这里插入图片描述

postman测试查询成功
在这里插入图片描述
控制台输出信息如下:
在这里插入图片描述

生成日志文件
在这里插入图片描述
在这里插入图片描述

测试成功

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,使用Slf4j可以方便地实现日志输出,同支持多种日志框架的接入。下面是一个示例,演示如何在Spring Boot项目中使用Slf4j,并指定日志格式。 首先,在项目的pom.xml文件中,添加Slf4j和Logback的依赖: ```xml <dependencies> <!-- slf4j --> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>1.7.25</version> </dependency> <!-- logback --> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version>1.2.3</version> </dependency> </dependencies> ``` 然后,在src/main/resources目录下创建logback.xml文件,指定日志格式,例如: ```xml <?xml version="1.0" encoding="UTF-8"?> <configuration> <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender"> <encoder> <pattern>%date [%thread] %-5level %logger{36} - %msg%n</pattern> </encoder> </appender> <root level="INFO"> <appender-ref ref="CONSOLE" /> </root> </configuration> ``` 这里指定了日志输出格式,包括日期、线程、日志级别、类名等信息。 最后,在Java代码中使用Slf4j进行日志输出,例如: ```java import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class MyService { private static final Logger logger = LoggerFactory.getLogger(MyService.class); public void doSomething() { logger.info("Doing something..."); } } ``` 这样,就可以在控制台上看到类似以下格式的日志输出: ``` 2019-04-16 21:09:47,607 [main] INFO com.example.MyService - Doing something... ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值