1. <strong id="7actg"></strong>
    2. <table id="7actg"></table>

    3. <address id="7actg"></address>
      <address id="7actg"></address>
      1. <object id="7actg"><tt id="7actg"></tt></object>

        Java接口自動(dòng)化之log4j日志框架

        共 3032字,需瀏覽 7分鐘

         ·

        2021-01-27 15:58










        上一篇Java接口自動(dòng)化系列文章:Java接口自動(dòng)化之IDEA創(chuàng)建及運(yùn)行maven項(xiàng)目,主要介紹如何用IDEA創(chuàng)建maven項(xiàng)目、maven項(xiàng)目結(jié)構(gòu)介紹及maven項(xiàng)目運(yùn)行實(shí)戰(zhàn)。


        以下主要介紹Java日志框架Log4j。


        01
        log4j簡(jiǎn)介


        1 log4j介紹

        Log4j(log for java)是java流行的日志框架,可以方便的記錄日志。


        2 log4j特點(diǎn)

        ①靈活的配置日志的輸出方式、優(yōu)先級(jí)及輸出格式;
        ②方便顯示程序運(yùn)行時(shí)的調(diào)試信息。


        3 log4j日志級(jí)別

        log日志,按照嚴(yán)重程度分為五個(gè)等級(jí):DEBUG、INFO、WARN、ERROR和FATAL。


        Log4j默認(rèn)日志級(jí)別為INFO,規(guī)則是只輸出比默認(rèn)日志級(jí)別高的等級(jí),即只輸出INFO、WARN、ERROR和FATAL等級(jí),DEBUG等級(jí)則不會(huì)輸出。



        02
        log4j日志三大部分

        Log4j三大組成部分:

        • Loggers 日志等級(jí)

        • Appenders ?日志輸出到哪,控制臺(tái)or文件?

        • Layouts 日志輸出格式


        接下來(lái)根據(jù)這三大組成部分分別介紹如何配置日志。



        1 Loggers 日志等級(jí)


        log日志,按照嚴(yán)重程度分為五個(gè)等級(jí):DEBUG、INFO、WARN、ERROR和FATAL。

        Log4j默認(rèn)日志級(jí)別為INFO,規(guī)則是只輸出比默認(rèn)日志級(jí)別高的等級(jí),即只輸出INFO、WARN、ERROR和FATAL等級(jí),DEBUG等級(jí)則不會(huì)輸出。


        在log4j.properties中,設(shè)置日志等級(jí)及輸出源:

        #?設(shè)置日志等級(jí)及輸出源
        log4j.rootLogger?=?INFO,console,file

        其中,INFO為日志等級(jí),console,file表示需要輸出到控制臺(tái)和文件中。



        2?
        Appender 日志輸出位置


        Appender 主要是用于定義日志輸出到哪里,比如控制臺(tái)、日志文件、數(shù)據(jù)庫(kù)及郵件等。上面我們?cè)O(shè)置日志輸出到console,file,那么接下來(lái)如何配置日志輸出到console及file中呢。在log4j.properties中,設(shè)置日志輸出位置。


        輸出到控制臺(tái):

        #?輸出到控制臺(tái)
        log4j.appender.console=org.apache.log4j.ConsoleAppender
        log4j.appender.console.Target=System.out




        輸出到日志文件
        #?將日志記錄在文件中,?每天一個(gè)備份文件
        log4j.appender.file?=?org.apache.log4j.DailyRollingFileAppender
        #?輸出日志到具體文件中
        log4j.appender.file.File?=?target/logs/auto_api.log
        log4j.appender.file.Append?=?true

        03
        log4j日志實(shí)戰(zhàn)

        ①創(chuàng)建maven項(xiàng)目(上篇介紹過(guò),這里不再重復(fù)),在resources資源目錄下新建文件log4j.properties。

        log4j.properties內(nèi)容如下:
        #?設(shè)置日志等級(jí)及輸出源
        log4j.rootLogger?=?INFO,console,file
        #?輸出到控制臺(tái)
        log4j.appender.console=org.apache.log4j.ConsoleAppender
        log4j.appender.console.Target=System.out
        log4j.appender.console.layout=org.apache.log4j.PatternLayout
        log4j.appender.console.layout.ConversionPattern=?%p?%d{yyyy-MM-dd?HH:mm:ss}?-->?[%t]?%l:?%m?%x?%n
        #?輸出到文件
        log4j.appender.file?=?org.apache.log4j.DailyRollingFileAppender
        log4j.appender.file.File?=?target/logs/auto_api.log
        log4j.appender.file.Append?=?true
        log4j.appender.file.layout?=?org.apache.log4j.PatternLayout
        log4j.appender.file.layout.ConversionPattern?=?%p?%d{yyyy-MM-dd?HH:mm:ss}?-->?[%t]?%l:?%m?%x?%n

        創(chuàng)建Log4jTest類,編寫(xiě)代碼。
        import?org.apache.log4j.Logger;
        public?class?Log4jTest?{
        ????public?static?Logger?logger?=?Logger.getLogger(Log4jTest.class);
        ????public?static?void?main(String[]?args)?{
        ????????test();
        ????}
        ????public?static?void?test(){
        ????????logger.debug("這是debug級(jí)別");
        ????????logger.info("這是info級(jí)別");
        ????????logger.warn("這是warn級(jí)別");
        ????????logger.error("這是error級(jí)別");
        ????????
        ????}
        }


        代碼說(shuō)明:

        • Logger.getLogger(Log4jTest.class),其中參數(shù)Log4jTest.class中的Log4jTest表示當(dāng)前Log4jTest這個(gè)類,作用是追蹤Log4jTest類產(chǎn)生的日志。

        • logger.debug,logger.info,logger.warn,logger.error表示要輸出的日志級(jí)別,默認(rèn)級(jí)別info。


        ④運(yùn)行代碼,查看實(shí)際日志運(yùn)行效果。

        控制臺(tái)日志輸出:

        INFO?2020-12-31?16:17:04?-->?[main]?com.vivi.Log4jTest.test(Log4jTest.java:15):?這是info級(jí)別??
        WARN?2020-12-31?16:17:04?-->?[main]?com.vivi.Log4jTest.test(Log4jTest.java:16):?這是warn級(jí)別??
        ERROR?2020-12-31?16:17:04?-->?[main]?com.vivi.Log4jTest.test(Log4jTest.java:17):?這是error級(jí)別


        之前配置文件log4j.properties里,將日志輸入到target/logs下的auto_api.log中,日志記錄如下:


        (完)




        ITester測(cè)試開(kāi)發(fā)小棧(ID:TestDevZone),技術(shù)人茶余飯后的充電寶,每周上午11:30更新文章。從精進(jìn)的軟件測(cè)試到硬核的測(cè)試開(kāi)發(fā)、從精細(xì)的前端開(kāi)發(fā)到縝密的后端開(kāi)發(fā),前沿互聯(lián)網(wǎng)資訊傳送,寶藏IT資源分享,熱門(mén)招聘發(fā)布。

        喜歡記得星標(biāo)置頂,讓我們一起守護(hù)成長(zhǎng)

        瀏覽 61
        點(diǎn)贊
        評(píng)論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報(bào)
        評(píng)論
        圖片
        表情
        推薦
        點(diǎn)贊
        評(píng)論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報(bào)
        1. <strong id="7actg"></strong>
        2. <table id="7actg"></table>

        3. <address id="7actg"></address>
          <address id="7actg"></address>
          1. <object id="7actg"><tt id="7actg"></tt></object>
            岛国Av在线成人 俺去也激情 | 精品午夜豆花视频 | 午夜理论视频 | av五月天在线 | 久久成人秘 18免费观看 | 美国美女操逼 | 嗯~啊~快点死我在线观看 | 张柏芝xxxxxbbbbb性 | 中文字幕成人影视 | 成人做爰无码A片韩国电影网斗生 |