Springboot怎么允许logger.debug输出日志

本文小编为大家详细介绍“Springboot怎么允许logger.debug输出日志”,内容详细,步骤清晰,细节处理妥当,希望这篇“Springboot怎么允许logger.debug输出日志”文章能帮助大家解决疑惑,下

本文小编为大家详细介绍“Springboot怎么允许logger.debug输出日志”,内容详细,步骤清晰,细节处理妥当,希望这篇“Springboot怎么允许logger.debug输出日志”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

Springboot允许logger.debug输出日志

说实话对日志这东西一直只是太肤浅的懂,就会用logger.info和logger.error输出,今天在写LemonRobot项目的时候,决定把调试信息也打出来,然后根据日志级别控制让上线的时候不显示debug级别的日志。

但是运行后发现,默认logger.debug产生的日志也没有输出到控制台,经过一番研究,是由于logback的配置问题。

在sr/main/resources文件夹中新建logback.xml,然后复制下面的配置到文件中:

logback.xml会被自动加载,如果名字不一样,我们需要在application.yml或者是application.properties中配置:

#配置日志
logging:
#此处存放日志的路径
  path:
    config: classpath:config/logback-spring.xml
#指定不同目录下的日志的级别
  level:
    com.shimain.springboot.mapper: DEBUG
<?xml version="1.0" encoding="UTF-8" ?>

<configuration scan="true" scanPeriod="3 seconds">
    <!--设置日志输出为控制台-->
    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%-5level] [%logger{32}] %msg%n</pattern>
        </encoder>
    </appender>
    <!--设置日志输出为文件-->
    <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <File>logFile.log</File>
        <rollingPolicy  class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <FileNamePattern>logFile.%d{yyyy-MM-dd_HH-mm}.log.zip</FileNamePattern>
        </rollingPolicy>
        <layout class="ch.qos.logback.classic.PatternLayout">
            <Pattern>%d{HH:mm:ss,SSS} [%thread] %-5level %logger{32} - %msg%n</Pattern>
        </layout>
    </appender>
    <root>
        <level value="DEBUG"/>
        <appender-ref ref="STDOUT"/>
        <appender-ref ref="FILE"/>
    </root>
</configuration>

这段配置文件可以让日志同时输出到控制台和本地文件,同时将日志文件打成zip压缩包。

如果这个时候项目上线了,不需要debug日志了,只需要修改root标签下面的level级别为INFO即可。

SpringBoot启动debug级别日志报错

Tomcat Native library could not be found using names [tcnative-1, libtcnative-1]

错误截图

Springboot怎么允许logger.debug输出日志

原因

tomcat没有找到JNI动态链接库。Apache Tomcat下是有这个dll的,但是启动时在Springboot中内嵌Tomcat下没有找到。

这是因为Tomcat中的connector为了提高性能,采用了加载与操作系统绑定(非跨平台)的本地库的方式,比如Windows系统中就是.dll动态链接库。

上述异常中找不到的两个.dll库文件,默认会去Tomcat的bin目录下去找,但是由于SpringBoot的Tomcat是嵌入式的,没有这两个.dll。

解决办法

可以忽略这个报错,因此SpringBoot把这个错误的日志级别设置为debug。

如果有强迫症者,也可以按如下方式解决:

直接将tomcat下的tcnative-1.dll和libtcnative-1.dll放到C:\\Windows\\System32下,重新启动项目即可。

读到这里,这篇“Springboot怎么允许logger.debug输出日志”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注恰卡网行业资讯频道。

本站部分文章来自网络或用户投稿,如无特殊说明或标注,均为本站原创发布。涉及资源下载的,本站旨在共享仅供大家学习与参考,如您想商用请获取官网版权,如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
后端

vue怎么实现动态添加el-input

2022-7-1 21:58:12

后端

微信小程序scroll-view怎么实现自定义滚动条

2022-7-1 21:58:56

搜索