Logback配置详解-输出位置、格式设置
package com.czie.iot1913; import org.slf4j.Logger; import org.slf4j.LoggerFactory; /** * FileName: Test * Author: lps * Date: 2022/4/16 15:27 * Sign:刘品水 Q:1944900433 * 目的:快速搭建logback日志框架 记录程序的执行情况 到控制台 到文件夹中
* public static final Logger LOGGER=LoggerFactory.getLogger("类对象");
*
* 日志级别
* Trace:是追踪,就是程序推进以下,你就可以写个trace输出,所以trace应该会特别多,不过没关系,我们可以设置最低日志级别不让他输出.
*
* Debug:指出细粒度信息事件对调试应用程序是非常有帮助的.
*
* Info:消息在粗粒度级别上突出强调应用程序的运行过程.
*
* Warn:输出警告及warn以下级别的日志.
*
* Error:输出错误信息日志.
*
* 此外OFF表示关闭全部日志,ALL表示开启全部日志。
*
* 级别等级
* 等级从低到高分别是TRACE < DEBUG < INFO < WARN < ERROR
*/ public class Test { //创建Logback的日志对象 代表日志技术 public static final Logger LOGGER=LoggerFactory.getLogger("Test.class"); public static void main(String[] args) { try { LOGGER.debug("main方法开始执行"); LOGGER.info("我开始记录第二行日志,我要开始吹牛咯哈哈嗨"); int a=10; int b=0; LOGGER.trace("a="+a); LOGGER.trace("b="+b); System.out.println(a/b); } catch (Exception e) { e.printStackTrace(); LOGGER.error("功能出现异常为:"+e); } } }
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="60 seconds">
<!--日志输入到控制台-->
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<target>System.out</target>>
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%-5level] %c [%thread] : %msg%n</pattern>
</encoder>
</appender>
<!--File事输出的方向通向文件的-->
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
<charset>utf-8</charset>>
</encoder>
<file>F:/CODE/lps-data.log</file>
<!--一个程序可能会多次使用 那么日志就很大啦 就需要按照一定的大小来设置 类似我下面设置1MB的大小-->
<rollingPolicy
class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<fileNamePattern>F:/CODE/lps-data2-%d{yyyy-MMdd}.log%i.gz</fileNamePattern>>
<maxFileSize>1MB</maxFileSize>>
</rollingPolicy>
</appender>>
<!--<appender name="permission" class="ch.qos.logback.core.rolling.RollingFileAppender">-->
<!--<file>${catalina.home}/logs/permission.log</file>-->
<!--<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">-->
<!--<FileNamePattern>${catalina.home}/logs/permission.%d{yyyy-MM-dd}.log.gz</FileNamePattern>-->
<!--</rollingPolicy>-->
<!--<layout class="ch.qos.logback.classic.PatternLayout">-->
<!--<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger - %msg%n</pattern>-->
<!--</layout>-->
<!--</appender>-->
<!---->
<!--<logger name="xxx" level="INFO">-->
<!--<appender-ref ref="permission"/>-->
<!--</logger>-->
<!-- TRACE < DEBUG < INFO < WARN < ERROR -->
<root level="all">
<appender-ref ref="CONSOLE"/>
<appender-ref ref="FILE"/>
</root>
</configuration>