log4j 将日志记录到数据库

需要以下jar包:

---log4j

commons-loggin-1.1.1.jar

log4j-1.2.16.jar

---mysql

mysql-connector-java-5.1.15-bin.jar

 

---log4j.properties配置内容

log4j.rootLogger=INFO,DATABASE

#JDBC Appender

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

#与数据库建立连接   
log4j.appender.DATABASE.URL=jdbc:mysql://localhost:3306/test
log4j.appender.DATABASE.driver=com.mysql.jdbc.Driver
log4j.appender.DATABASE.user=root
log4j.appender.DATABASE.password=
log4j.appender.DATABASE.sql=insert into wlog(class_name,method_name,create_time,log_level,log_info,log_type) values(%C, %M, %d{yyyy-MM-dd HH:mm:ss}, %p, %m, %X{type})

---表结构

CREATE TABLE wlog (
  id INT NOT NULL AUTO_INCREMENT,
  class_name VARCHAR(100) NULL COMMENT 类名,
  method_name VARCHAR(100) NULL COMMENT 方法名,
  create_time VARCHAR(45) NULL COMMENT 产生时间,
  log_level VARCHAR(45) NULL COMMENT 日志级别,
  log_info VARCHAR(45) NULL COMMENT 日志信息,
  log_type INT NULL COMMENT 日志类别,
  PRIMARY KEY (id));

 

--Log4jtest.java

    private static final Logger lg = Logger.getLogger(Log4jtest.class);
   
    
    public static void main(String[] args) {
         MDC.put("type", "1");
         
        lg.error("Log4jtes错误信息");
        lg.warn("Log4jtest警告信息");
        lg.info("Log4jtest信息");
    }

--result

mysql> select * from wlog;
+----+------------------------+-------------+---------------------+-----------+-----------------------+----------+
| id | class_name             | method_name | create_time         | log_level | log_info              | log_type |
+----+------------------------+-------------+---------------------+-----------+-----------------------+----------+
|  1 | com.yan.test.Log4jtest | main        | 2014-06-19 15:25:04 | ERROR     | Log4jtes错误信息      |        1 |
|  2 | com.yan.test.Log4jtest | main        | 2014-06-19 15:25:04 | WARN      | Log4jtest警告信息     |        1 |
|  3 | com.yan.test.Log4jtest | main        | 2014-06-19 15:25:04 | INFO      | Log4jtest信息         |        1 |
+----+------------------------+-------------+---------------------+-----------+-----------------------+----------+
3 rows in set (0.00 sec)

 

 

log4j 将日志记录到数据库,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。