91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

logger4j.properties和log4j.xml怎么配置

發布時間:2021-12-17 17:54:06 來源:億速云 閱讀:117 作者:iii 欄目:互聯網科技

這篇文章主要介紹“logger4j.properties和log4j.xml怎么配置”,在日常操作中,相信很多人在logger4j.properties和log4j.xml怎么配置問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”logger4j.properties和log4j.xml怎么配置”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

    1. log4j.xml的

      1. <?xml version="1.0" encoding="UTF-8"?>
        <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
        
        <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
        
            <!--
               * 1. 一個appender子元素定義一個日志輸出目的地
               * 2. 一個logger子元素定義一個日志寫出器
            -->
            <!-- catalina.out -->
            <appender name="consoleAppend" class="org.apache.log4j.ConsoleAppender" >
                <layout class="org.apache.log4j.PatternLayout">
                    <param name="ConversionPattern" value="%-d{yyyy-MM-dd HH:mm:ss} [%5p][%t][%c{1}]-[%M] %m%n" />
                </layout>
            </appender>
        
            <!-- error log -->
            <appender name="errorAppend" class="org.apache.log4j.DailyRollingFileAppender">
                <param name="File" value="${webapp.root}/logs/error/error.html" />
                <param name="Append" value="true" />
                <param name="DatePattern" value="yyyy-MM-dd-HH-mm'.html'"/>
                <param name="MaxBackupIndex" value="10" />
                <param name="MaxFileSize" value="4000000" />
                <param name="encoding" value="utf-8"/>
                <layout class="org.apache.log4j.HTMLLayout">
                </layout>
                <filter class="org.apache.log4j.varia.LevelRangeFilter">
                    <param name="LevelMin" value="ERROR" />
                    <param name="LevelMax" value="ERROR" />
                </filter>
            </appender>
        
            <!-- biz -->
            <appender name="bizAppend" class="org.apache.log4j.DailyRollingFileAppender">
                <param name="File" value="${webapp.root}/logs/biz/biz.log" />
                <param name="Append" value="true" />
                <param name="DatePattern" value="'.'yyyy-MM-dd-HH'.log'" />
                <param name="MaxBackupIndex" value="10" />
                <param name="MaxFileSize" value="4096" />
                <param name="encoding" value="utf-8"/>
                <layout class="org.apache.log4j.PatternLayout">
                    <param name="ConversionPattern" value="[date:%d{yyyy-MM-dd HH:mm:ss}] %m%n" />
                </layout>
                <filter class="com.raycloud.bizlogger.LoggerFilter">
                    <param name="LevelMin" value="40050" />
                    <param name="LevelMax" value="40050" />
                </filter>
            </appender>
        
            <!-- 消費者消費的消息記錄 -->
            <appender name="taskExcutorAppend" class="org.apache.log4j.DailyRollingFileAppender">
                <param name="File" value="${webapp.root}/logs/excutor/excutor.log" />
                <!-- 每小時1個文件 -->
                <param name="DatePattern" value="'.'yyyy-MM-dd-HH'.log'" />
                <!-- 最大文件的size,單位:Kb,Mb... -->
                <param name="MaxFileSize" value="4096" />
                <!-- 重啟了服務器之后,是否在原有文件的后面追加?true(默認):追加;false:不追加 -->
                <param name="Append" value="true"/>
                <!-- 默認 MaxBackupIndex 為 1 -->
                <param name="MaxBackupIndex" value="10" />
                <param name="Encoding" value="utf-8"/>
                <layout class="org.apache.log4j.PatternLayout">
                    <param name="ConversionPattern" value="%-d{yyyy-MM-dd HH:mm:ss} [%5p] %m%n" />
                </layout>
                <filter class="org.apache.log4j.varia.LevelRangeFilter">
                    <param name="LevelMin" value="INFO" />
                    <param name="LevelMax" value="WARN" />
                </filter>
            </appender>
        
            <!-- ProcessHandler的日志 -->
            <appender name="processHandlerAppend" class="org.apache.log4j.DailyRollingFileAppender">
                <param name="File" value="${webapp.root}/logs/process/process.log" />
                <!-- 每小時1個文件 -->
                <param name="DatePattern" value="'.'yyyy-MM-dd-HH'.log'" />
                <!-- 最大文件的size,單位:Kb,Mb... -->
                <param name="MaxFileSize" value="4096" />
                <!-- 重啟了服務器之后,是否在原有文件的后面追加?true(默認):追加;false:不追加 -->
                <param name="Append" value="true"/>
                <!-- 默認 MaxBackupIndex 為 1 -->
                <param name="MaxBackupIndex" value="10" />
                <param name="Encoding" value="utf-8"/>
                <layout class="org.apache.log4j.PatternLayout">
                    <param name="ConversionPattern" value="%-d{yyyy-MM-dd HH:mm:ss} [%5p] %m%n" />
                </layout>
                <filter class="org.apache.log4j.varia.LevelRangeFilter">
                    <param name="LevelMin" value="INFO" />
                    <param name="LevelMax" value="WARN" />
                </filter>
            </appender>
        
            <!-- command node js的日志 -->
            <appender name="nodejsAppend" class="org.apache.log4j.DailyRollingFileAppender">
                <param name="File" value="${webapp.root}/logs/command/nodejs.log" />
                <!-- 每小時1個文件 -->
                <param name="DatePattern" value="'.'yyyy-MM-dd-HH'.log'" />
                <!-- 最大文件的size,單位:Kb,Mb... -->
                <param name="MaxFileSize" value="4096" />
                <!-- 重啟了服務器之后,是否在原有文件的后面追加?true(默認):追加;false:不追加 -->
                <param name="Append" value="true"/>
                <!-- 默認 MaxBackupIndex 為 1 -->
                <param name="MaxBackupIndex" value="10" />
                <param name="Encoding" value="utf-8"/>
                <layout class="org.apache.log4j.PatternLayout">
                    <param name="ConversionPattern" value="%-d{yyyy-MM-dd HH:mm:ss} [%5p] %m%n" />
                </layout>
                <filter class="org.apache.log4j.varia.LevelRangeFilter">
                    <param name="LevelMin" value="INFO" />
                    <param name="LevelMax" value="WARN" />
                </filter>
            </appender>
            <!-- command ffmpeg的日志 -->
            <appender name="ffmpegAppend" class="org.apache.log4j.DailyRollingFileAppender">
                <param name="File" value="${webapp.root}/logs/command/ffmpeg.log" />
                <!-- 每小時1個文件 -->
                <param name="DatePattern" value="'.'yyyy-MM-dd-HH'.log'" />
                <!-- 最大文件的size,單位:Kb,Mb... -->
                <param name="MaxFileSize" value="4096" />
                <!-- 重啟了服務器之后,是否在原有文件的后面追加?true(默認):追加;false:不追加 -->
                <param name="Append" value="true"/>
                <!-- 默認 MaxBackupIndex 為 1 -->
                <param name="MaxBackupIndex" value="10" />
                <param name="Encoding" value="utf-8"/>
                <layout class="org.apache.log4j.PatternLayout">
                    <param name="ConversionPattern" value="%-d{yyyy-MM-dd HH:mm:ss} [%5p] %m%n" />
                </layout>
                <filter class="org.apache.log4j.varia.LevelRangeFilter">
                    <param name="LevelMin" value="INFO" />
                    <param name="LevelMax" value="WARN" />
                </filter>
            </appender>
        
            <!--
                logger的作用:
                1.[name屬性]:指定你定義Logger對象時候的name
                2. additivity : children-logger是否使用 rootLogger的配置,
                   additivity在log4j默認為true。這解釋了為什么有些時候,一個日志信息在屏幕上會有多次輸出。
                3.還可以指定level(輸出級別)、appender-ref(指定哪個append)
             -->
            <!-- loggers -->
            <logger name="com.raycloud.picture.task.consumer.PictureVideoTaskExcutor" additivity="true">
                <!-- 如果1個包想對應多個 Appender 就這樣,對于每個Appender自定義的日志級別可以在Appender上加上filter -->
                <appender-ref ref="taskExcutorAppend" />
            </logger>
            <logger name="com.raycloud.picture.task.handle.impl.DefaultVideoProcessorHandleImpl" additivity="true">
                <appender-ref ref="processHandlerAppend" />
            </logger>
            <logger name="com.raycloud.picture.service.command.NodeJsCommandInvoke" additivity="true">
                <appender-ref ref="nodejsAppend" />
            </logger>
            <logger name="com.raycloud.picture.service.command.FfmpegCommandInvoke" additivity="true">
                <appender-ref ref="ffmpegAppend" />
            </logger>
        
            <!--
                root的作用(相當于全局的意思):
                1.[priority ]:指定默認的全局輸出級別
                2.[appender-ref ]:指定一些默認的append(沒有指出特殊包或者類,即那些沒有指定<logger>元素的append)的輸出;
            -->
        	<root>
        		<priority value="INFO" />
                <!-- 將 logger 中 additivity=true 的日志或者沒有指定<logger>的append輸出到控制臺 -->
                <appender-ref ref="consoleAppend" />
                <!-- 將全局的 error 日志輸出到error文件中 -->
        		<appender-ref ref="errorAppend" />
                <appender-ref ref="bizAppend" />
            </root>
        
        </log4j:configuration>
    2. log4j.xml在web.xml中的配置

      1. <!-- log4j -->
            <context-param>
                <param-name>log4jConfigLocation</param-name>
                <param-value>classpath:log4j-server.xml</param-value>
            </context-param>
            <context-param>
                <param-name>log4jRefreshInterval</param-name>
                <param-value>3000</param-value>
            </context-param>
            <!-- 先開啟Log4J,再去啟動spring等一些你需要的東西,有助于報錯時日志的輸出 -->
            <listener>
                <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
            </listener>
    3. log4j.properties配置

      1. ####################################################
        # 將日志按照包分類輸出的配置文件
        ####################################################
        
        #根針對所有的日志包
        log4j.rootLogger = debug , appendConsole
        #下面兩個配置是指定包的特殊處理,針對兩個指定的日志級別,如果不指定的話則使用父日志記錄器(rootLogger)的,指定了就覆蓋掉了父日志記錄器的
        #設置dao包的日志配置
        log4j.logger.com.xun.log4j.dao = debug, appendDao
        #設置service包的日志配置
        log4j.logger.com.xun.log4j.service = info, appendService
        
        
        #控制臺的配置
        log4j.appender.appendConsole = org.apache.log4j.ConsoleAppender
        #Threshold:設置此appender的日志級別,這里會覆蓋全局的(rootLogger中)定義的日志級別
        log4j.appender.appendConsole.Threshold = error
        #設置日志輸出編碼方式為UTF-8,如果不指定,會以當前運行操作系統的編碼方式記錄
        log4j.appender.appendConsole.encoding = UTF-8
        log4j.appender.appendConsole.layout = org.apache.log4j.SimpleLayout
        
        #appendDao配置
        log4j.appender.appendDao = org.apache.log4j.FileAppender
        log4j.appender.appendDao.layout = org.apache.log4j.PatternLayout
        log4j.appender.appendDao.layout.ConversionPattern = [%d{yyyy-MM-dd HH:mm:ss}]--[%t] [%p] -%l -%m%n%n
        log4j.appender.appendDao.Append = false
        log4j.appender.appendDao.File = e:/test/log4j/dao.txt
        
        #appendService
        log4j.appender.appendService = org.apache.log4j.FileAppender
        log4j.appender.appendService.layout = org.apache.log4j.PatternLayout
        log4j.appender.appendService.layout.ConversionPattern = [%d{yyyy-MM-dd HH:mm:ss}]--[%t] [%p] -%l -%m%n%n
        log4j.appender.appendService.Append = false
        log4j.appender.appendService.File = e:/test/log4j/service.txt
      2. //方式一:自動快速的使用Log4J缺省的環境
        //        BasicConfigurator.configure();
        
                //方式二:讀取properties文件(自定義位置),但是注意這里文件的加載路徑
        //        PropertyConfigurator.configure("E:/workspace-idea/study-demo/log4j-test/src/main/resources/log4j/log4j.properties");
        //        PropertyConfigurator.configure(HowUseLog4JDemo.class.getClassLoader().getResource("log4j/log4j.properties").getFile());
        
                //方式三:讀取XML文件
        //        DOMConfigurator.configure("xxx");

到此,關于“logger4j.properties和log4j.xml怎么配置”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

仪陇县| 怀宁县| 乌审旗| 依安县| 永州市| 临武县| 石楼县| 定边县| 平阴县| 阿克苏市| 壤塘县| 东丰县| 红原县| 墨玉县| 砀山县| 镇平县| 锦屏县| 花莲县| 鸡东县| 勃利县| 芜湖县| 招远市| 徐州市| 吴桥县| 缙云县| 青川县| 扶沟县| 九江市| 丹阳市| 府谷县| 丹棱县| 昆山市| 屏东市| 汨罗市| 乌兰察布市| 新兴县| 深水埗区| 涪陵区| 时尚| 宁阳县| 上思县|