<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 70,comments - 408,trackbacks - 0

       log4j,顧名思義是專門用來做日志的,有一些書和教程經常把這種非常簡單的東西講的亂作一團,讓一些處于學習階段的朋友看了以后,感覺暈頭轉向的,我曾經就是受害人之一,所以今天發表一篇,讓學習的人一看就懂的小文章,希望對一些學習log4j和沒用過log4j的朋友起到幫助.

       log4jApache組織的一個開源項目,它是一個日志操作包,通過使用Log4j可以指定日志信息輸出的目的地,如控制臺,文件,GUI組件,NT的時間記錄器,還可以控制每一條日志輸出的格式,此外通過定義日志的級別,能夠非常細致的控制日志的輸出,最好的地方是這些功能可以通過一個配置文件來靈活的進行配置,而不需要修改程序代碼.在應用程序中輸出日志有三個目的:

    1)     監視代碼變量的變化情況,把詳細信息記錄到文件中,進行統計分析.

    2)     跟蹤代碼運行軌跡,作為日后審計的依據.

    3)     擔當集成開發環境中的調試器的作用,向文件和控制器打印代碼的調試信息.

     

       首先我們要先了解點概念的東西,很簡單,先知道它的6個基本類別,就是日志的級別.

    1)     fatal致命的

    2)     error錯誤

    3)     warn警告

    4)     info信息

    5)     debug調試

    6)     trace細節

       在強調可重用組件的今天,除了自己從頭到尾開發一個可重用的日志操作類以外,還有一個Apache為我們提供的一個強有力的現成的日志操作包Log4j.主要由三大組件構成:

    1)     Logger:負責生成日志,并能夠對日志信息進行分類篩選.

    2)     Appender:定義了日志信息輸出的目的地,指定日志信息應該被輸出到什么地方.

    3)     Layout:指定日志信息的輸出格式.

       概念的東西就這么點,看看記住就OK.主要是配置文件,這里我們就以一個JAVA工程當例子,因為這樣簡單明了,讓人容易理解.我相信如果在一個簡單的JAVA工程里能把log4j理解透徹了.就算換到別的工程里也應該融會貫通了.首先建一個JAVA工程,然后把log4jjar包放入工程的classpath,就是放在工程的根目錄就OK.然后創建一個log4j.properties的文件,記住這個文件的名字是固定的.log4j會自己來尋找這個文件,至于這個文件的配置我們稍后在說.OK現在包導好了,配置文件也弄好了.我們在類里簡單的調用log4j就可以使用了.下邊是例子:

    import org.apache.log4j.Logger;

    public class Log {

           static Logger log = Logger.getLogger(Log.class);

           public static void main(String[] args) {

                  log.fatal("致命...");

                  log.error("錯誤...");

                  log.info("信息...");

                  log.debug("調試...");

           }

    }

     

    #這里是定義了日志輸出的級別DUBUG,然后聲明一個控制臺和文件,名字隨便起.

    log4j.rootLogger=DEBUG,console,file

     

    #這里是配置日志輸出控制臺的相關屬性

    log4j.appender.console=org.apache.log4j.ConsoleAppender

    log4j.appender.console.layout=org.apache.log4j.PatternLayout

    log4j.appender.console.layout.ConversionPattern=%-5p %d [%t] (%F,%L) - %m%n

     

    #這里是配置日志輸出文件的相關屬性

    log4j.appender.file=org.apache.log4j.RollingFileAppender

    log4j.appender.file.File=log.log

    log4j.appender.file.MaxFileSize=100KB

    log4j.appender.file.MaxBackupIndex=1

    log4j.appender.file.layout=org.apache.log4j.PatternLayout

    log4j.appender.file.layout.ConversionPattern=%-5p %d [%t] (%F,%L) - %m%n

     

       OK,你調試通過了么?如果通過了,但是想知道配置文件里各各屬性的具體含義,那么我在附件里上傳了一份比較間接的log4j文檔,PDF格式的.Log4J.pdf在熟悉了文檔里的相關配置的含義之后,稍加練習靈活運用就算掌握了log4j.

    posted on 2007-05-10 16:07 我心依舊 閱讀(2551) 評論(8)  編輯  收藏

    FeedBack:
    # re: 簡單化 log4j
    2007-05-11 09:20 | BeanSoft
    是呀,先跑個例子,再深入...現在的教程都是介紹的一塌糊涂,把各種概念都說一遍,就是沒突出重點.  回復  更多評論
      
    # re: 簡單化 log4j
    2007-05-11 10:32 | 交口稱贊
    不錯,就喜歡這種簡潔的文章,
    沒有廢話,直觀。

    有些人寫的東西就喜歡扯概念,唬人。
    嚴重同意樓上。  回復  更多評論
      
    # re: 簡單化 log4j [未登錄]
    2007-05-11 10:43 | 小木
    不錯啊  回復  更多評論
      
    # re: 簡單化 log4j
    2007-05-11 11:12 | yyuan
    但有些人使用Log4j時,不是簡單的調用:
    Logger logger = Logger.getLogger(XXX.class);

    而是自己又寫了個singleton把Logger封裝起來,甚至封裝Logger.debug等方法,就是不理解他們!  回復  更多評論
      
    # re: 簡單化 log4j
    2007-05-11 11:18 | BeanSoft
    Log4j 貌似本身就是單例的... 哈哈, 大概他們是為了用 Spring 依賴注入吧, 或者想將來自己實現一套 logger 或者換別的實現.  回復  更多評論
      
    # re: 簡單化 log4j
    2007-05-11 16:36 | 久城
    學習!~的確簡單明了!  回復  更多評論
      
    # re: 簡單化 log4j
    2007-05-13 23:00 | Alex
    log4j支持動態切換不同的實現,建議import apache commons 的 Logger,可以實現多態  回復  更多評論
      
    # re: 簡單化 log4j [未登錄]
    2008-02-26 12:43 | sky
    有研究啊  回復  更多評論
      

    只有注冊用戶登錄后才能發表評論。


    網站導航:
    博客園   IT新聞   Chat2DB   C++博客   博問  
     
    主站蜘蛛池模板: 亚洲AV无码之国产精品| 国产精品免费一区二区三区| 国产免费一区二区三区VR| 相泽南亚洲一区二区在线播放| 亚洲av手机在线观看| 一级毛片免费不卡在线| 亚洲日本在线电影| 亚洲中文字幕成人在线| 亚洲一区免费视频| 污污免费在线观看| 亚洲男女性高爱潮网站| www亚洲精品少妇裸乳一区二区| 日韩免费观看一区| 亚洲大尺度无码无码专线一区| 亚洲日本乱码在线观看| 性色av无码免费一区二区三区| 国产黄在线播放免费观看| 亚洲av一本岛在线播放 | 亚洲色婷婷综合开心网| 久久国产精品免费观看| 国产一区二区三区亚洲综合| 久久夜色精品国产噜噜噜亚洲AV| 国产在线19禁免费观看国产| 午夜视频在线免费观看| 色多多A级毛片免费看| 亚洲AV无码乱码在线观看代蜜桃 | 亚洲精品第一综合99久久| 亚洲欧洲无码AV电影在线观看| 在线免费观看中文字幕| 午夜视频免费在线观看| 好吊色永久免费视频大全| 亚洲中文无码永久免| 西西人体44rt高清亚洲 | 亚洲国产精品乱码一区二区| 日韩精品无码人妻免费视频| 中文字幕免费在线观看| 国产99视频精品免费视频76| 亚洲另类无码专区首页| 亚洲综合久久久久久中文字幕| 亚洲国产另类久久久精品黑人| 四只虎免费永久观看|