最代码广告位
kisn888的gravatar头像
kisn8882016-08-01 16:08:16

apache log4j实现日志插入mysql数据库

最近做项目时,出现了一个bug,环境为was,出现一次请求,返回多次处理结果,最终查询原因为was配置的超时转发(server1超时自动转发server2,3,4..)引起的.

为了快速定位问题的根源,所以希望能把log4j的输入写入到数据库中,因此才有了本此的文章。

1.创建mysql数据库log4j,数据表ibs_log

--建库
CREATE DATABASE `log4j`;
--建表
CREATE TABLE `ibs_log` (                                                              
           `log_id` int(10) NOT NULL AUTO_INCREMENT,                                           
           `log_date` datetime NOT NULL COMMENT '日期',                                      
           `log_file` varchar(255) DEFAULT NULL COMMENT '文件名',                           
           `log_line` varchar(255) DEFAULT NULL COMMENT '行号',                              
           `log_thread` varchar(255) DEFAULT NULL COMMENT '线程',                            
           `log_level` varchar(255) DEFAULT NULL COMMENT 'Log级别 info warndebug error等',  
           `log_message` varchar(2048) DEFAULT NULL COMMENT 'Log信息',                       
           PRIMARY KEY (`log_id`,`log_date`),                                                  
           KEY `INDEX_LOG_DATE` (`log_date`) USING BTREE                                       
         ) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8     

2.新建一个java project工程。

  • 引入jar包

      apache log4j实现日志插入mysql数据库

  • 配置log4j.properties
log4j.rootLogger=INFO,appender1,appender2,appender3
log4j.logger.org.springframework=ERROR
log4j.appender.appender1=org.apache.log4j.ConsoleAppender
log4j.appender.appender1.layout=org.apache.log4j.PatternLayout
log4j.appender.appender1.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss:SSS}[%p]: %m%n
log4j.appender.appender2=org.apache.log4j.FileAppender
log4j.appender.appender2.File=log/IceColdMonitor.log
log4j.appender.appender2.layout=org.apache.log4j.PatternLayout
log4j.appender.appender2.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss:SSS}[%p]: %m%n
#database
log4j.appender.appender3=org.apache.log4j.jdbc.JDBCAppender
log4j.appender.appender3.driver=com.mysql.jdbc.Driver
log4j.appender.appender3.URL=jdbc:mysql://127.0.0.1:3306/log4j
log4j.appender.appender3.user=root
log4j.appender.appender3.password=root
log4j.appender.appender3.sql=INSERT INTO ibs_log (log_date,log_file,log_line,log_thread,log_level,log_message) VALUES ('%d{yyyy-MM-dd hh:mm:ss}','%c','%l','%t','%p','%m')
  • 编写测试类
    package com.log4j.test;
    import org.apache.log4j.Logger;
    
    /**
     * @author kisn
     *
     */
    public class Test {
    	public static void main(String[] args) {
    		Logger logger = Logger.getLogger(Test.class);
    	    logger.info("test logger info");
    	    logger.debug("test logger debug");
    	    logger.error("test logger error");
    	    logger.fatal("test logger fatal");
    	}
    }

     

项目截图:

  apache log4j实现日志插入mysql数据库

运行截图:

  apache log4j实现日志插入mysql数据库apache log4j实现日志插入mysql数据库

  


打赏

文件名:logTmysql.rar,文件大小:852.575K下载
  • /
      • /logTmysql
        • /logTmysql/.classpath
        • /logTmysql/.project
          • /logTmysql/.settings
            • /logTmysql/.settings/org.eclipse.jdt.core.prefs
          • /logTmysql/bin
              • /logTmysql/bin/com
                  • /logTmysql/bin/com/log4j
                      • /logTmysql/bin/com/log4j/test
                        • /logTmysql/bin/com/log4j/test/Test.class
            • /logTmysql/bin/log4j.properties
          • /logTmysql/lib
            • /logTmysql/lib/log4j-1.2.16.jar
            • /logTmysql/lib/mysql-connector-java-3.1.13-bin.jar
          • /logTmysql/log
            • /logTmysql/log/IceColdMonitor.log
最代码最近下载分享源代码列表最近下载
3969138 LV152019年9月19日
月亮月亮月亮星星星星星星
liwyu123456 LV82018年12月27日
月亮月亮
weixh7 LV242018年11月15日
太阳月亮月亮
fangen0005 LV222018年6月3日
太阳月亮星星星星
wuhanrjh LV82018年5月19日
月亮月亮
ZWJ_farocity LV12018年5月15日
星星
fengyaofei LV162017年12月13日
太阳
gxpcwm LV202017年9月6日
太阳月亮
zuoshaochao LV152017年9月5日
月亮月亮月亮星星星星星星
yt346220756 LV12017年8月2日
星星
最代码最近浏览分享源代码列表最近浏览
里更debug LV96月17日
月亮月亮星星
18720962954 LV36月1日
星星星星星星
郑君尧5月19日
暂无贡献等级
xuueye4月24日
暂无贡献等级
小舟呀 LV124月7日
月亮月亮月亮
cgyin20093月26日
暂无贡献等级
仲恺小霸王 LV43月17日
月亮
t5577881月7日
暂无贡献等级
小雨阁楼 LV72019年12月31日
月亮星星星星星星
此用户很懒 LV22019年12月22日
星星星星
顶部客服微信二维码底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友