zoukankan      html  css  js  c++  java
  • springboot(10)logback日志配置

    springboot默认使用Logback来记录日志,且默认是只打印到控制台中,不会输出到文件。需要输出到文件中,只需要在配置文件application.properties中加上一句:loggin.file = xxx 即可。可以使用相对路径或者绝对路径。

    logging.file=../logs/sbDemo-test.log

    默认是输出INFO以上的内容,可以设置等级如:

    logging.level.com.jvxb=DEBUG          (执行的sql是以debug的形式输出的,想在控制台显示sql,需要设置成debug)

    ogging.level.root=WARN:root日志以WARN级别输出

    有时候我们希望配置复杂一点的日志记录,如每天保存一次,每个日志文件多大,不同level的文件写入不同的日志记录这种,这时候你就要加载自己的日志配置文件了。 方法是在配置文件application.properties中加上一句:loggin.config=classpath:xxx.xml如下:然后把你自己日志配置的xml放到resource文件夹下即可。

    logging.config=classpath:mylogbackConfig.xml

    注:springboot默认去加载classpath下的logback-spring.xml,如果直接把logback-spring.xml文件放到classpath下,则不需要在application.properties中使用logging.config

    PS:日志配置文件 mylogbackConfig.xml实例:

    <configuration debug="false" scan="true" scanPeriod="10 seconds">
        <!-- 日志配置:
        	包名:com.jvxb,将该包下的所有日志按debug、info、warn、error等级分别保存到[项目同一级]
          文件夹sbDemo-Log下的logback_debug、logback_info、logback_warn、logback_error文件中。
          每日凌晨0点将日志文件归档保存为zip压缩包,每个压缩包最大30M,若压缩包文件大小超过30M,将会被保
          存为多个压缩包。最多保留最近30天的归档日志文件。 --> <contextName>logback</contextName> <!--输出sql语句--> <logger name="com.jvxb" level="debug"/> <property name="path" value="../sbDemoLog"></property> <property name="maxHistory" value="30"/> <property name="maxFileSize" value="30MB"/> <appender name="console" class="ch.qos.logback.core.ConsoleAppender"> <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> <level>debug</level> </filter> <encoder> <pattern>%date %level [%thread] %logger{36} [%file : %line] %msg%n </pattern> </encoder> </appender> <appender name="debug_file" class="ch.qos.logback.core.rolling.RollingFileAppender"> <file>${path}/logback_debug.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!-- 每天一归档 --> <fileNamePattern>${path}/logback_debug.log.%d{yyyy-MM-dd}-%i.zip</fileNamePattern> <maxHistory>${maxHistory}</maxHistory> <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> <maxFileSize>${maxFileSize}</maxFileSize> </timeBasedFileNamingAndTriggeringPolicy> </rollingPolicy> <encoder> <pattern>%date %level [%thread] %logger{36} [%file : %line] %msg%n </pattern> </encoder> <filter class="ch.qos.logback.classic.filter.LevelFilter"> <level>DEBUG</level> <onMatch>ACCEPT</onMatch> <onMismatch>DENY</onMismatch> </filter> </appender> <appender name="info_file" class="ch.qos.logback.core.rolling.RollingFileAppender"> <file>${path}/logback_info.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!-- 每天一归档 --> <fileNamePattern>${path}/logback_info.log.%d{yyyy-MM-dd}-%i.zip</fileNamePattern> <maxHistory>${maxHistory}</maxHistory> <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> <maxFileSize>${maxFileSize}</maxFileSize> </timeBasedFileNamingAndTriggeringPolicy> </rollingPolicy> <encoder> <pattern>%date %level [%thread] %logger{36} [%file : %line] %msg%n </pattern> </encoder> <filter class="ch.qos.logback.classic.filter.LevelFilter"> <level>INFO</level> <onMatch>ACCEPT</onMatch> <onMismatch>DENY</onMismatch> </filter> </appender> <appender name="warn_file" class="ch.qos.logback.core.rolling.RollingFileAppender"> <file>${path}/logback_warn.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!-- 每天一归档 --> <fileNamePattern>${path}/logback_warn.log.%d{yyyy-MM-dd}-%i.zip</fileNamePattern> <maxHistory>${maxHistory}</maxHistory> <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> <maxFileSize>${maxFileSize}</maxFileSize> </timeBasedFileNamingAndTriggeringPolicy> </rollingPolicy> <encoder> <pattern>%date %level [%thread] %logger{36} [%file : %line] %msg%n </pattern> </encoder> <filter class="ch.qos.logback.classic.filter.LevelFilter"> <level>WARN</level> <onMatch>ACCEPT</onMatch> <onMismatch>DENY</onMismatch> </filter> </appender> <appender name="error_file" class="ch.qos.logback.core.rolling.RollingFileAppender"> <file>${path}/logback_error.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!-- 每天一归档 --> <fileNamePattern>${path}/logback_error.log.%d{yyyy-MM-dd}-%i.zip</fileNamePattern> <maxHistory>${maxHistory}</maxHistory> <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> <maxFileSize>${maxFileSize}</maxFileSize> </timeBasedFileNamingAndTriggeringPolicy> </rollingPolicy> <encoder> <pattern>%date %level [%thread] %logger{36} [%file : %line] %msg%n </pattern> </encoder> <filter class="ch.qos.logback.classic.filter.LevelFilter"> <level>ERROR</level> <onMatch>ACCEPT</onMatch> <onMismatch>DENY</onMismatch> </filter> </appender> <root> <level value="info"/> <appender-ref ref="console"/> <appender-ref ref="debug_file"/> <appender-ref ref="info_file"/> <appender-ref ref="warn_file"/> <appender-ref ref="error_file"/> </root> </configuration>

      

  • 相关阅读:
    mysql高可用探究(五)Heartbeat+DRBD+mysql高可用方案
    利用DELL的OMSA监控服务器的温度
    MYSQL高可用方案探究(七)参考文献
    Asp.net中网站级异常捕获
    短信猫编程注意事项
    请保持Asp.net MVC中View的可读性
    SQLite.net使用注意事项
    GSM模块SMS相关AT命令使用说明(转)
    不要再让我们听到抽胆黑熊的哭泣
    QT的正则表达式陷阱
  • 原文地址:https://www.cnblogs.com/suncm/p/11081790.html
Copyright © 2011-2022 走看看