log4j Logger 使用簡介


項目結構:

log4j.properties 內容:

log4j.rootCategory=info,stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyy MMM dd HH:mm:ss,SSS} %p [%t] %C.%M(%L) : %m%n

maven 依賴:

        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>1.2.17</version>
        </dependency>

 

代碼樣例:

package com.jason

import org.apache.log4j.Logger

object LogTest {
  def main(args: Array[String]): Unit = {
    val LOGGER = Logger.getLogger(getClass)
    LOGGER.info("this is a info demo")
    LOGGER.warn("this is a warn demo")
    LOGGER.error("this is a error demo")
    LOGGER.debug("this is a debug demo")
  }
}

結果輸出:

2018 八月 26 23:44:30,379 INFO [main] com.jason.LogTest$.main(8) : this is a info demo
2018 八月 26 23:44:30,389 WARN [main] com.jason.LogTest$.main(9) : this is a warn demo
2018 八月 26 23:44:30,389 ERROR [main] com.jason.LogTest$.main(10) : this is a error demo

為什么輸出只有三個?

log中的日志級別如下

debug < info < warn < error,默認只顯示大於等於所設置級別的日志,我們在log4j.properties 中所設置的級別為 info(log4j.rootCategory=info,stdout)所以debug未被打印

如何關閉日志?做如下設置即可

log4j.rootCategory=off,stdout

打印日志在程序調試中非常有用,可以很方便的打印調試語句,並通過配置文件關閉打印,不用刪除或注釋代碼

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM