log4j配置

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

<configuration status="error">

    <!--先定義所有的appender-->

    <appenders>

        <!--這個輸出控制檯的配置-->

        <Console name="Console" target="SYSTEM_OUT">

            <!--這個都知道是輸出日誌的格式-->

            <PatternLayout pattern="%d{HH:mm:ss} %-5level %class{36} %L %M --------------%msg%n%xEx%n"/>

        </Console>

        <!--文件會打印出所有信息,這個log每次運行程序會自動清空,由append屬性決定,這個也挺有用的,適合臨時測試用-->

        <File name="debug" fileName="./logs/HitoIOTPlatform-debug.log" append="false">

            <Filters>

                <ThresholdFilter level="info" onMatch="DENY" onMismatch="NEUTRAL"/>

                <ThresholdFilter level="debug" onMatch="ACCEPT" onMismatch="DENY"/>

            </Filters>

            <PatternLayout pattern="%d{MM-dd  HH:mm:ss} %-5level %class{36} %L %M --------------%msg%xEx%n"/>

        </File>

        <File name="info" fileName="./logs/HitoIOTPlatform-info.log" append="false">

            <Filters>

                <ThresholdFilter level="warn" onMatch="DENY" onMismatch="NEUTRAL"/>

                <ThresholdFilter level="info" onMatch="ACCEPT" onMismatch="DENY"/>

            </Filters>

            <PatternLayout pattern="%d{MM-dd  HH:mm:ss} %-5level %class{36} %L %M --------------%msg%xEx%n"/>

        </File>

        <File name="warn" fileName="./logs/HitoIOTPlatform-warn.log" append="false">

               <Filters>

                <ThresholdFilter level="error" onMatch="DENY" onMismatch="NEUTRAL"/>

                <ThresholdFilter level="warn" onMatch="ACCEPT" onMismatch="DENY"/>

            </Filters>

            <PatternLayout pattern="%d{MM-dd  HH:mm:ss} %-5level %class{36} %L %M --------------%msg%xEx%n"/>

        </File>

        <File name="error" fileName="./logs/HitoIOTPlatform-error.log" append="false">

            <Filters>

                <ThresholdFilter level="fatal" onMatch="DENY" onMismatch="NEUTRAL"/>

                <ThresholdFilter level="error" onMatch="ACCEPT" onMismatch="DENY"/>

            </Filters>

            <PatternLayout pattern="%d{MM-dd  HH:mm:ss} %-5level %class{36} %L %M --------------%msg%xEx%n"/>

        </File>

        <!--這個會打印出所有的信息,每次大小超過size,則這size大小的日誌會自動存入按年份-月份建立的文件夾下面並進行壓縮,作爲存檔-->

        <RollingFile name="RollingFile" fileName="./logs/HitoIOTPlatform-all.log" 

                     filePattern="logs/$${date:yyyy-MM}/app-%d{MM-dd-yyyy}-%i.log.gz">

            <PatternLayout pattern="%d{yyyy-MM-dd 'at' HH:mm:ss z} %-5level %class{36} %L %M --------------%msg%xEx%n"/>

            <SizeBasedTriggeringPolicy size="100MB"/>

        </RollingFile>

    </appenders>

    <!--然後定義logger,只有定義了logger並引入的appender,appender纔會生效-->

    <loggers>

        <!--建立一個默認的root的logger-->

        <Logger name="HitoIOTPlatform" additivity="false" >  

            <AppenderRef ref="debug" />  

            <AppenderRef ref="info" />  

            <AppenderRef ref="warn"  />  

            <AppenderRef ref="error"/>  

            <AppenderRef ref="Console" level="trace"/> 

            <AppenderRef ref="RollingFile" level="trace" />  

        </Logger>  

          <Logger name="test" additivity="false" >  

            <AppenderRef ref="Console" level="debug"/> 

        </Logger>  

        <root level="trace">

        </root>

    </loggers>

</configuration>


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章