SpringBoot集成slf4j

使用非常简单,在需要打印或者查看日志的情况下,可以采用这种打印,比sout直接输出要省性能。

1.首先在yml文件中配置

spring:
logging:
  config: logback.xml
  level:
    com.itcodai.course03.dao: trace

常用的日志级别按照从高到低依次为:ERROR、WARN、INFO、DEBUG。

上面这个日志级别是将sql语句打印出来

2.然后在springboot配置文件中加一个logback.xml文件,叫啥无所谓自己指定就行

<configuration>
    <property name="LOG_PATTERN" value="%date{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n" />
    <property name="FILE_PATH" value="D:/logs/course03/demo.%d{yyyy-MM-dd}.%i.log" />

<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
    <encoder>
        <!-- 按照上面配置的LOG_PATTERN来打印日志 -->
        <pattern>${LOG_PATTERN}</pattern>
    </encoder>
</appender>

    <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!-- 按照上面配置的FILE_PATH路径来保存日志 -->
            <fileNamePattern>${FILE_PATH}</fileNamePattern>
            <!-- 日志保存15天 -->
            <maxHistory>15</maxHistory>
            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                <!-- 单个日志文件的最大,超过则新建日志文件存储 -->
                <maxFileSize>10MB</maxFileSize>
            </timeBasedFileNamingAndTriggeringPolicy>
        </rollingPolicy>

        <encoder>
            <!-- 按照上面配置的LOG_PATTERN来打印日志 -->
            <pattern>${LOG_PATTERN}</pattern>
        </encoder>
    </appender>
    <logger name="com.itcodai.course03" level="INFO" />
    <root level="INFO">
        <appender-ref ref="CONSOLE" />
        <appender-ref ref="FILE" />
    </root>
</configuration>

3.在需要使用的地方,private final static Logger logger = LoggerFactory.getLogger(TestController.class);

  private static final Logger logger = LoggerFactory.getLogger(Test.class);
    @Test
    public void er(){

        int i=10;

        logger.debug("=====测试日志debug级别打印====");
        logger.info("======测试日志info级别打印=====");
        logger.error("=====测试日志error级别打印====");
        logger.warn("======测试日志warn级别打印=====");

        // 可以使用占位符打印出一些参数信息
        String str1 = "blog.itcodai.com";
        String str2 = "blog.csdn.net/eson_15";
        logger.info("======测试:{}", str1);
        logger.info("测试:{}",i);
    }

打印信息为

20:06:20.561 [main] INFO  org.junit.jupiter.api.Test - ======测试日志info级别打印=====
20:06:20.563 [main] ERROR org.junit.jupiter.api.Test - =====测试日志error级别打印====
20:06:20.563 [main] WARN  org.junit.jupiter.api.Test - ======测试日志warn级别打印=====
20:06:20.563 [main] INFO  org.junit.jupiter.api.Test - ======测试:blog.itcodai.com
20:06:20.564 [main] INFO  org.junit.jupiter.api.Test - 测试:10

打印其他信息需要有占位符{}。

  • 12
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值