posts - 89,  comments - 98,  trackbacks - 0

          首先創建一數據庫表說明:

          字段 描述
          GUID 流水號
          DATE 時間
          THREAD 當前線程
          LEVEL 當前級別
          CLASS 當前java程序/方法
          MESSAGES 當前輸出信息

          log4j.properties如下配置:

           

          log4j.rootLogger=DEBUG,CONSOLE,DATABASE

          log4j.addivity.org.apache=true

          ########################

          # JDBC Appender

          #######################

          log4j.appender.DATABASE.Threshold=INFO

          log4j.appender.DATABASE=org.apache.log4j.jdbc.JDBCAppender

          #log4j.appender.DATABASE.BufferSize=10

          log4j.appender.DATABASE.URL=you jdbcurl

          log4j.appender.DATABASE.driver=you jdbc driver

          log4j.appender.DATABASE.user=

          log4j.appender.DATABASE.password=

          log4j.appender.DATABASE.sql=INSERT INTO YOU_LOG_TABLE  VALUES ('%d{yyyy-MM-dd HH:mm:ss}', '%t', '%p', '%l', '%m')

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

           

          下面我們對“%d %t %p %l %m %n”一一講解:

          l         %d輸出日志時間點的日期或時間,默認格式為ISO8601,也可以在其后指定格式,比如:%d{yyyy-MM-dd HH:mm:ss},輸出類似:2005-7-19 17:49:27,剛好適合插入SQLServer

          l         %t  產生該日志事件的線程名

          l         %p 日志的log_level,如DEBUGWARN或者INFO

          l         %c  輸出所屬的類目,通常就是所在類的全名,如“iNotes.Default”;

          l         %m 日志的內容;

          l         %l  輸出日志事件的發生位置,包括類目名、發生的線程,以及在代碼中的行數。如write2database.main(write2database.java:33)

          l         %n  輸出一個回車換行符,Windows平臺為“ ”,Unix平臺為“

           

          程序代碼:

           

          import sun.jdbc.odbc.*;

          import java.sql.*;

          import org.apache.log4j.Category;

          import org.apache.log4j.Level;

          import org.apache.log4j.Logger;

          import org.apache.log4j.PropertyConfigurator;

          import org.apache.log4j.jdbc.*;

          /*

              add for log4j: class Logger is the central class in the log4j package.

              we can do most logging operations by Logger except configuration.

              getLogger(...): retrieve a logger by name, if not then create for it.

              */

              static Logger logger = Logger.getLogger

                      ( write2database.class.getName () ) ;

                 

          /*

                  add for log4j: class BasicConfigurator can quickly configure the package.

                  print the information to console.

                  */

                  PropertyConfigurator.configure ( "log4j2database.properties" ) ;

                 

                  logger.info ( "just test" ) ;

           

          posted on 2006-03-03 21:31 水煮三國 閱讀(2194) 評論(0)  編輯  收藏 所屬分類: Log4J

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


          網站導航:
           
          <2025年5月>
          27282930123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          常用鏈接

          留言簿(4)

          隨筆分類(85)

          隨筆檔案(89)

          文章分類(14)

          文章檔案(42)

          收藏夾(37)

          java

          oracle

          Sybase

          搜索

          •  

          積分與排名

          • 積分 - 211039
          • 排名 - 266

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 丹棱县| 砚山县| 额济纳旗| 萍乡市| 家居| 北安市| 紫金县| 汉寿县| 龙门县| 兴山县| 通河县| 清苑县| 贞丰县| 新郑市| 大兴区| 广饶县| 乃东县| 广州市| 大埔区| 永定县| 越西县| 磴口县| 新安县| 永平县| 农安县| 永定县| 广水市| 泽库县| 东光县| 五寨县| 三河市| 饶阳县| 额敏县| 彰化市| 武强县| 青铜峡市| 图木舒克市| 望都县| 万荣县| 芒康县| 岚皋县|