springmvc logback日志

xiaoxiao2021-02-27  323

logback是log4j作者推出的新日志系统,原生支持slf4j通用日志api,允许平滑切换日志系统,并且对简化应用部署中日志处理的工作做了有益的封装。

官方地址为:http://logback.qos.ch/

 

Logback日志需要依赖一下jar包:

slf4j-api-1.6.0.jar

logback-core-0.9.21.jar

logback-classic-0.9.21.jar

logback-access-0.9.21.jar

 

主配置文件为logback.xml,放在src目录下或是WEB-INF/classes下,logback会自动加载

logback.xml的基本结构如下:

[xhtml]  view plain  copy <?xml version="1.0" encoding="UTF-8"?>   <configuration>   <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">       <encoder>         <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>       </encoder>     </appender>     <root level="DEBUG"><appender-ref ref="STDOUT" /></root>   </configuration>  

logback.xml的基本配置信息都包含在configuration标签中,需要含有至少一个appender标签用于指定日志输出方式和输出格式,root标签为系统默认日志进程,通过level指定日志级别,通过appender-ref关联前面指定顶的日志输出方式。

{此处插入一下日志级别的介绍哈:

它们定义了日志显示的级别,一共分为五个级别:DEBUG、INFO、WARN、ERROR和FATAL。这五个级别是有顺序的,DEBUG < INFO < WARN < ERROR < FATAL,明白这一点很重要,这里Log4j有一个规则:假设设置了级别为P,如果发生了一个级别Q比P高,则可以启动,否则屏蔽掉。如果<root level="INFO"></root>的话,那么对应的debug日志将不会出现在打印日志中,而info,error,warn,fatal等日志会打印。}

例子中的appender使用的是ch.qos.logback.core.ConsoleAppender类,用于对控制台进行日志输出

其中encoder标签指定日志输出格式为“时间 线程 级别 类路径 信息”

logback的文件日志输出方式还提供多种日志分包策略

 

1.文件日志

[xhtml]  view plain  copy <appender name="ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender">       <file>E:/logs/mylog.txt</file>       <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">         <!-- rollover daily -->         <fileNamePattern>E:/logs/mylog-%d{yyyy-MM-dd_HH-mm}.%i.log</fileNamePattern>         <maxHistory>5</maxHistory>          <timeBasedFileNamingAndTriggeringPolicy               class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">           <!-- or whenever the file size reaches 100MB -->           <maxFileSize>100MB</maxFileSize>         </timeBasedFileNamingAndTriggeringPolicy>       </rollingPolicy>       <encoder>         <pattern>
转载请注明原文地址: https://www.6miu.com/read-3300.html

最新回复(0)