java log4j日志 写入数据库

本文介绍了一种使用Log4j将应用程序日志记录到数据库的方法。通过配置log4j.properties文件,实现了不同级别的日志信息存储,并详细说明了数据库连接及日志格式设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

因一个群朋友log4j日志 写入数据库,写了这个

log4j.properties

-----------------------------------------

#可以设置级别:debug>info>error  
#debug:显示debug、info、error  
#info:显示info、error  
#error:只error  
log4j.rootLogger=debug,info,database
#注意的地方database 对应 log4j.appender.database.URL的database 若认log4j.rootLogger=debug,info,db 那么 log4j.appender.database.URL的database 要改成db
#log4j.appender.logfile=org.apache.log4j.DailyRollingFileAppender
#log4j.appender.logfile.DatePattern=.yyyy-MM-dd
#log4j.appender.logfile.layout=org.apache.log4j.PatternLayout 
#输出到控制台  
#log4j.appender.appender1=org.apache.log4j.ConsoleAppender  
#样式为TTCCLayout  
#log4j.appender.appender1.layout=org.apache.log4j.TTCCLayout 
#设置级别:  
#log4j.rootLogger=debug,appender1  
 
#输出到文件(这里默认为追加方式)  
#log4j.appender.appender1=org.apache.log4j.FileAppender  
#设置文件输出路径  
#【1】文本文件  
#log4j.appender.appender1.File=c:/Log4JDemo02.log  
#【2】HTML文件  
log4j.appender.appender1.File=c:/Log4JDemo02.html  
#设置文件输出样式  
#log4j.appender.appender1.layout=org.apache.log4j.TTCCLayout  
log4j.appender.appender1.layout=org.apache.log4j.HTMLLayout 
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %p [%c] - - <%m>%n
log4j.appender.logfile=org.apache.log4j.DailyRollingFileAppender
log4j.appender.logfile.DatePattern=.yyyy-MM-dd
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%d %p [%c] wang- <%m>%n
#log4j.appender.db=com.neam.commons.MyJDBCAppender
#下面是配置将日志信息插入数据库,
#配置输出目标为数据库(假如要将日志在控制台输出,配置为log4j.appender. stdout =org.apache.log4j.ConsoleAppender;将日志写入文件,配置为log4j.appender.logfile=org.apache.log4j.DailyRollingFileAppender
#这样的配置在许多地方都要有,需要可查有关资料),当然你也可以自己扩展org.apache.log4j.jdbc.JDBCAppender这个类,只需要在这里配置就可以了例如我们配置我自己扩展的MyJDBCAppender,配置为#log4j.appender.db=com.neam.commons.MyJDBCAppender
log4j.appender.database.Threshold=info
#定义什么级别的错误将写入到数据库中
log4j.appender.database.BufferSize=1
#设置缓存大小,就是当有1条日志信息是才忘数据库插一次
log4j.appender.database=org.apache.log4j.jdbc.JDBCAppender
log4j.appender.database.driver=oracle.jdbc.OracleDriver
#设置要将日志插入到数据库的驱动
log4j.appender.database.URL=jdbc:oracle:thin:@127.0.0.1:1521:orcl
log4j.appender.database.user=nctest
log4j.appender.database.password=1
log4j.appender.database.sql=insert into WDZLOG (Class,Mothod,createTime,LogLevel,MSG) values ('%C','%M','%d{yyyy-MM-dd HH:mm:ss}','%p','%m')log4j.appender.database.layout=org.apache.log4j.PatternLayout

------------------------------------

sql文件

CREATE TABLE WDZLOG (

    Class varchar (255)   NULL ,--类名
    Mothod varchar (255)   NULL ,--方法名
    CreateTime varchar (255)   NULL ,--产生时间
    LogLevel varchar (20)   NULL ,--日志级别
    MSG varchar (555)   NULL --日志信息

)

 

项目截图:参见附件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值