如何配置log4j2日志记录至数据库

log4j2可灵活的将日志打印在控制台、通过SMTP邮件发送、记录至文件、保存至数据库。本文介绍如何配置log4j2将日志记录至数据库


建立用于保存日志的数据库表:


CREATE TABLE `sys_log` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `level` varchar(32) NOT NULL,
  `logger` varchar(100) NOT NULL,
  `message` varchar(1000) DEFAULT NULL,
  `exception` varchar(10000) DEFAULT NULL,
  `date_add` datetime NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=19 DEFAULT CHARSET=utf8mb4;


配置 databaseAppender :



     
     
     
     
     
     
   


其中 cc.s2m.web.s2mBlog.util.StaticProp 类的getDatabaseConnection方法为获取可用的datasource:


DriverManagerDataSource ds = new DriverManagerDataSource();
ds.setDriverClassName("com.mysql.jdbc.Driver");

ds.setUrl("jdbc:mysql://127.0.0.1/s2mBlog?characterEncoding=utf8");

ds.setUsername("root");

ds.setPassword("123456");

return ds.getConnection();


然后指派您需要记录的日志,使用 databaseAppender 即可:



       


你可能感兴趣的:(j2ee)