gr8vyguy@Blogjava

          Log4j的學習筆記

          Log4j支持
          Java,C/C++, C#,PHP,Perl,  Python,  Ruby, Eiffel languages, LotusScript ...

          下載地址 http://logging.apache.org/log4j/

          性能

          在AMD Duron 800Mhz,JDK 1.3.1的環境下,  Log4j判斷要不要輸出log的操作需要約5納秒,如果使用SimpleLayout的話, 具體輸出一個log需要約21毫秒, 用TTCCLayout.約37毫秒。(摘自Log4j的文檔)

          Log4主要有3部分組成: loggers, appenderslayouts. logger是具體執行logging命令的對象, 可以指定等級(Level), 如果沒有指定logger的等級,它會繼承最近上一層logger的等級設置。.appender是log輸出的目的地, 比如ConsoleAppender將log輸出到System.out或者System.err, FileAppender將log輸出到一個文件. 了layout指定輸出的格式.

          例子1
           1 public class Log4jTest1{
           2 
           3     private static Logger logger = Logger.getRootLogger();
           4 
           5     public static void main(String[] args) {
           6         try {
           7             SimpleLayout layout = new SimpleLayout();
           8             ConsoleAppender consoleAppender = new ConsoleAppender(layout);
           9             logger.addAppender(consoleAppender);
          10             FileAppender fileAppender = new FileAppender(layout, "test.log", false);
          11
          12             logger.addAppender(fileAppender);
          13 
          14             // ALL | DEBUG | INFO | WARN | ERROR | FATAL | OFF:
          15             logger.setLevel(Level.WARN);
          16         } catch (Exception ex) {
          17             System.out.println(ex);
          18         }
          19 
          20         logger.debug("A debug log");
          21         logger.info("A info log");
          22         logger.warn("A warn log");
          23         logger.error("A error log");
          24         logger.fatal("A fatal log");
          25     }
          26 }

          要編譯和運行上面的代碼你的ClASSPATH里要有log4j-version.jar.
          Log4jTest1將輸出下面3行到你的Console上
                  WARN - A warn log
                 
          ERROR - A error log
                  FATAL - A fatal log
          因為第15行設置logger的等級是Level.WARN, 比它低的等級DEBUG和INFO就不會被輸出。
          例子2
          例子1的logging設置信息是在代碼里指定。更好的方法是在另外的描述性的文件中設置logging。Log4j支持兩種配置文件,Properties格式和XML格式.

          posted on 2007-02-25 00:45 gr8vyguy 閱讀(1376) 評論(0)  編輯  收藏 所屬分類: Java

          <2007年2月>
          28293031123
          45678910
          11121314151617
          18192021222324
          25262728123
          45678910

          導航

          統計

          公告

        1. 轉載請注明出處.
        2. msn: gr8vyguy at live.com
        3. 常用鏈接

          留言簿(9)

          隨筆分類(68)

          隨筆檔案(80)

          文章分類(1)

          My Open Source Projects

          搜索

          積分與排名

          最新評論

          主站蜘蛛池模板: 桦南县| 华安县| 鸡西市| 弥勒县| 三都| 华容县| 娄烦县| 科技| 双城市| 华阴市| 武鸣县| 长沙县| 榆林市| 晋中市| 团风县| 渝北区| 景东| 通州区| 靖安县| 靖江市| 嵊州市| 富裕县| 武义县| 垣曲县| 山阳县| 正安县| 江城| 都昌县| 个旧市| 沂水县| 台中县| 于田县| 眉山市| 成安县| 玉树县| 金寨县| 张掖市| 中牟县| 湖南省| 成安县| 仙桃市|