• logback日志框架——配置文件


      为了便于使用,留存一份logback的配置文件。

      首先,需要在resources下创建logback文件夹,并存放以下三个文件,这是我的个人习惯,也可以都写在logback.xml中

    • logback.properties,用于定义变量
    • appender.xml,用于定义Appender对象
    • logger.xml,用于定义logger。

      创建logback.xml,引入其他三个文件。具体的配置如下:

    1、logback.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <!-- 配置debug属性,开启日志框架的调试模式 -->
    <configuration debug="true">
    	<!-- 定义contextName,项目名 -->
    	<contextName>logback_study</contextName>
    	<!-- 引入properties文件,定义变量 -->
    	<property resource="logback/logback.properties" />
    	<!-- 引入Appender,必须在logger之前 -->
    	<include resource="logback/appender.xml" />
    	<!-- 引入logger -->
    	<include resource="logback/logger.xml" />
    	<!-- 定义root logger -->
    	<root level="info">
    	  <appender-ref ref="console" />
      	  <appender-ref ref="file" />
    	</root> 
    </configuration>

    2、Logback.properties

    # 定义日志存放的目录
    # 项目名称
    app_name=logbackStudy
    # 日志存放的根路径
    file_root_dir=D:\
    # 当前项目日志存放的根路径
    file_root_app_dir=${file_root_dir}\${app_name}
    # 历史日志文件存放的根路径
    file_root_app_history_dir=${file_root_dir}\${app_name}\history
    
    # 日志格式
    # 默认的日志格式
    default_pattern=%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} %n
    # console的日志格式
    console_pattern=%d{yyyy-MM-dd HH:mm:ss.SSS} %logger %n[%thread] %7level: %message %n
    # fileAppender的日志格式
    file_pattern=%d{yyyy-MM-dd HH:mm:ss.SSS} %logger %n[%thread] %7level: %message %n
    

    3、Appender.xml

    <included>
    	<!-- 定义输出控制台 ConsoleAppender -->
    	<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
    		<!-- 包含1个encoder -->
    		<encoder>
    			<pattern>${console_pattern}</pattern>
    		</encoder>
    		<!-- 包含1个target,System.out 或者是System.err,默认为System.out -->
    		<target>System.out</target>
    		<!-- 包含1个 withJansi, 是否对不同级别的日志用颜色来区分 -->
    		<withJansi>false</withJansi>
    	</appender>
    
    	<!-- 定义RollingFileAppender -->
    	<appender name="file" class="ch.qos.logback.core.rolling.RollingFileAppender">
    		<!-- 设置日志文件的名称 -->
    		<file>${file_root_app_dir}/${app_name}_log.txt</file>
    		<!-- 设置是否追加在日志文件,该值默认为true -->
    		<append>true</append>
    		<!-- 设置immediateFlush -->
    		<immediateFlush>true</immediateFlush>
    		<!-- 设置rollingPolicy -->
    		<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
    			<!-- 指定fileNamePattern,定义日志文件或者是压缩包存放的位置,如果存在file属性,日志输出到file文件中,fileNamePattern存放日志压缩文件的路径 -->
    			<fileNamePattern>${file_root_app_history_dir}/%d{yyyy/MM,aux}/%d{yyyy-MM-dd}_log%i.zip</fileNamePattern>
    			<!-- 每个文件的大小 -->
    			<maxFileSize>5MB</maxFileSize>
    			<!-- 指定最大的历史,365天,对应fileNamePattern中的日期格式 -->
    			<maxHistory>365</maxHistory>
    			<!-- 日志文件的总大小,20GB -->
    			<totalSizeCap>20GB</totalSizeCap>
    		</rollingPolicy>
    		<!-- 设置一个或者多个encoder -->
    		<encoder>
    			<pattern>${file_pattern}</pattern>
    		</encoder>
    	</appender>
    </included> 

    4、Logger.xml

    <included>
    	<!-- 定义logger -->
    	<logger name="com.rain.test" level="debug" additivity="false">
    		<appender-ref ref="console" />
    		<appender-ref ref="file" />
    	</logger>
    </included>
  • 相关阅读:
    hdoj-1005-Number Sequences
    FOJ-1058-粗心的物理学家
    程序设计第三次作业附加 代码规范
    简单数论
    FOJ-1001-Duplicate Pair
    链表初尝试-链表的构建与输出-指针
    函数递归简单题-hdoj-2044 2018-一只小蜜蜂 母牛的故事
    电路与电子学-第一章直流电路分析方法小概括
    DFS回溯-函数递归-xiaoz triangles
    进制转换 hdoj-2031
  • 原文地址:https://www.cnblogs.com/rain144576/p/12383077.html
Copyright © 2020-2023  润新知