用Log4j 将日志保存到数据库

本文介绍如何使用Log4j将日志信息记录到数据库中,包括创建日志表、配置log4j.properties文件等内容。

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

 

Log4j 的这一功能不错比较实用,  近段时间需要用到这个, 在此之前一直没怎么用过. 网上搜索一下, 还不少这样的文章,  随后又公司前段时间对开发人员做的培训资料翻个遍找到了. 现在将这些记录一下.  以备不时之需啊!

 

 

1. 创建日志表

 

CREATE TABLE [dbo].[LogInfo] (
 [GUID] [int] IDENTITY (1, 1) NOT NULL ,   -- 流水号
 [DATE] [datetime]NULL ,  --时间
 [THREAD] [varchar] (200) COLLATE Chinese_PRC_CI_AS NULL ,  --当前线程
 [LEVEL] [varchar] (200) COLLATE Chinese_PRC_CI_AS NULL ,--当前级别

 [CLASS] [varchar] (200) COLLATE Chinese_PRC_CI_AS NULL ,--当前java程序/方法

[MESSAGES] [varchar] (2000) COLLATE Chinese_PRC_CI_AS NULL ---当前输出信息
)

 

2. 配置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=jdbc:microsoft:sqlserver://localhost;DatabaseName=LogInfoTest  

log4j.appender.DATABASE.driver=com.microsoft.jdbc.sqlserver.SQLServerDriver

log4j.appender.DATABASE.user= sa

log4j.appender.DATABASE.password= 1234

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  说明:

 

1) %d输出日志时间点的日期或时间,

2) %t  产生该日志事件的线程名

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

4) %c  输出所属的类目,通常就是所在类的全名,如“iNotes.Default”;

5) %m 日志的内容;

6) %l  输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。 <script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type=text/javascript></script>

7) %n  输出一个回车换行符,Windows平台为“ ”,Unix平台为“

 

程序代码: 略(相信自己的能力, 这些应该可以写的出来)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值