手机版 欢迎访问it开发者社区(www.mfbz.cn)网站

当前位置: > 开发

Logback 中的 FileAppender 配置文件解析

时间:2021/5/2 10:37:19|来源:|点击: 次

这里用了xml格式来完成

<?xml version = "1.0" encoding = "UTF-8"?>
<configuration>

    <!--
        配置集中管理属性,可以直接修改属性的value值
        格式 ${name}
    -->

    <!--日志输出格式:
                   [%-5level]
                   %d{yyyy-MM-dd HH:mm:ss.SSS} : 日期
                   %c : 类的完整名称
                   %M : 为method
                   %L : 为行号
                   %thread : 线程名称
                   %m 或者 %msg : 为信息
                   %n : 换行

                -->

    <!-- 第一种方式:
    <property name="pattern" value="[%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} %c %M %L %thread %m%n"></property>
    -->

    <!-- 第二种方式 -->
    <property name="pattern" value="[ %-5level ] %d{yyyy-MM-dd HH:mm:ss.SSS} %c %M %L [%thread] %m%n"/>


    <!--格式化输出:
            %d表示日期,
            %thread表示线程名,
            %-5level:级别从左显示5个字符宽度
            %msg:日志消息,
            %n是换行符
        -->


    <!--Appender: 设置日志信息的去向,常用的有以下几个
        ch.qos.logback.core.ConsoleAppender (控制台)
        ch.qos.logback.core.rolling.RollingFileAppender (文件大小到达指定尺寸的时候产生一个新文件)
        ch.qos.logback.core.FileAppender (文件)

      -->


    <!-- 定义日志文件保存路径  -->
    <property name="log_dir" value="E:\\Project\\The_Log\\Logack_Demo\\output\\"/>

    <!-- 文件输出 -->
    <appender name="file" class="ch.qos.logback.core.FileAppender">
        <!-- 日志文件保存路径 -->
        <file>${log_dir}/logback.log</file>
        <!-- 日志消息格式 -->
        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
            <pattern>${pattern}</pattern>
        </encoder>
    </appender>

    <!--用来设置某一个包或者具体的某一个类的日志打印级别、以及指定<appender>。
            <loger>仅有一个name属性,一个可选的level和一个可选的addtivity属性 name:用来指定受此logger约束的某一个包或者具体的某一个类。
             level:用来设置打印级别,大小写无关:TRACE, DEBUG, INFO, WARN, ERROR, ALL 和 OFF, 如果未设置此属性,那么当前logger将会继承上级的级别。
            additivity: 是否向上级loger传递打印信息。默认是true。
            <logger>可以包含零个或多个<appender-ref>元素,标识这个appender将会添加到这个 logger


      -->

    <!--

        也是<logger>元素,但是它是根logger。默认debug level:用来设置打印级别,
        大小写无关:TRACE, DEBUG, INFO, WARN, ERROR, ALL 和 OFF,
        <root>可以包含零个或多个<appender-ref>元素,
        标识这个appender将会添加到这个 logger。

    -->

    <!-- html 文件输出 -->
    <appender name = "HTMLfile"  class="ch.qos.logback.core.FileAppender">
        <!-- 日志文件保存路径 -->
        <file>${log_dir}/logback.html</file>
        <!-- html消息格式-->
        <encoder class="ch.qos.logback.core.encoder.LayoutWrappingEncoder">
            <layout class = "ch.qos.logback.classic.html.HTMLLayout">
                <pattern>%-5level%d{yyyy-MM-dd HH:mm:ss.SSS}%c%M%L%thread%m</pattern>
            </layout>
        </encoder>
    </appender>


    <!--root logger 配置-->
    <root lever="ALL">
        <appender-ref ref="file"></appender-ref>
        <appender-ref ref="HTMLfile"></appender-ref>
    </root>

</configuration>


Copyright © 2002-2019 某某自媒体运营 版权所有