1. 程式人生 > 其它 >Logback配置詳解-輸出位置、格式設定

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("類物件");
 */
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>