`

java中使用log4j将日志信息写入数据库中

    博客分类:
  • java
阅读更多

  首先将log4jjar包Logging的jar包导入到你的工程中,然后在工程src目录创建一个属性文件:log4j.properties,也可以放在某个包中,但是获取这个属性文件的时候就需要制定路径。
1.创建日志数据表:

CREATE TABLE log (
    [Id] [int] IDENTITY (1, 1) primary key NOT NULL ,
    [Lg_Date] [datetime] NOT NULL ,
    [Lg_Thread] [varchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    [Lg_Level] [varchar] (20) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    [Lg_Class] [varchar] (200) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    [Lg_Message] [varchar] (2000) COLLATE Chinese_PRC_CI_AS NOT NULL
)
GO

 

2.写log4j.properties文件,这里我的数据库举动是用的JTDS

# level : 是日志记录的优先级,分为OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL或者您定义的级别。
# Log4j建议只使用四个级别,优先级从高到低分别是ERROR、WARN、INFO、DEBUG。
log4j.rootLogger=ERROR,DATABASE
log4j.addivity.org.apache=true

# 用于数据库
log4j.appender.DATABASE=org.apache.log4j.jdbc.JDBCAppender
log4j.appender.DATABASE.URL=jdbc:jtds:sqlserver://localhost:1433;DatabaseName=databasename
log4j.appender.DATABASE.driver=net.sourceforge.jtds.jdbc.Driver
log4j.appender.DATABASE.user=username
log4j.appender.DATABASE.password=password
# 本处设置为"WARN"以上级别在数据库存储(默认情况使用rootLogger中的设置)
log4j.appender.DATABASE.Threshold=DEBUG
log4j.appender.DATABASE.sql=INSERT INTO log(optime,thread,infolevel,class,message) VALUES ('%d{yyyy-MM-dd HH:mm:ss}', '%t', '%p', '%l', '%m')
# 写入数据库中的表LOG4J的Message字段中,
# 内容%d(日期)%c: 日志信息所在地(类名)%p: 日志信息级别%m: 产生的日志具体信息 %n: 输出日志信息换行

log4j.appender.DATABASE.layout=org.apache.log4j.PatternLayout
log4j.appender.DATABASE.layout.ConversionPattern=[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n

3.在程序中需要将日志信息写入数据库的地方写入如下代码:

private Log logger = LogFactory.getLog(this.getClass());
logger.info("信息:......");
logger.debug("调试:......");
logger.warn("警告:......");
logger.error("错误:......");

 

分享到:
评论

相关推荐

    log4j使用与java中log4j记录日志如何写入数据库

    详细介绍了log4j的使用方法,介绍了java中日志记录如何写入数据库,对于初学者来说很不错的一个文档

    log4j2.xml记录日志到到数据库

    演示了java记录通过log4j2记录日志到mysql数据库中

    Log4j写入数据库详解

    log4j是一个优秀的开源日志记录项目,我们不仅可以对输出的日志的格式自定义,还可以自己定义日志输出的目的地,比如:屏幕,文本文件,数据库,甚至能通过socket输出。本节主要讲述如何将日志信息输入到数据库...

    Loger_slf4j写入数据表Demo

    一、运行部署 1、将LogerWriteMySqlDemo项目导入Eclipse 2、修改db.properties文件中数据库...三、配置文件db.properties、log4j.properties两个配置文件可以通过servlet配置来使用,也可以直接先用DbUtil.java中先测试

    JAVA 日志包 log4j-1.2.14.jar

    java 日志架包 log4j-1.2.14.jar,用于java生日志记录,可以写入数据库,文件或者控制台

    日志配置到文件,数据库

    非常实用,但是有些小瑕疵,自己注意修改,有更好的也希望上传,欢迎下载。

    PB下文件日志/数据库日志功能(源码)

    PB下文件日志/数据库日志功能,类似java的log4j功能,作用就不说了,见识过log4j功能的人应该都深有体会。 功能模块化,调用简单。

    log4j培训+源码

    log4j的培训文档和源码,包括java项目和web项目。从文件的配置,初始化,到写入文件,控制台和数据库等。

    微信小程序版某乎日报

    运用到的技术:Spring,SpringMVC,Mybatis,Log4J2用来监听日志, 爬取数据模块的日志 PageHelper实现了微信小程序端的上拉继续加载功能 jsoup爬虫技术. 定时任务 : 定时6小时爬取一次数据写入数据库中

    java查看sun包源码-LogWeb:高性能在线记录日志系统(支持集群管理)

    java查看sun包源码 LogWeb 高性能在线记录日志系统(支持集群...等关系性数据库正常后,重启本服务即可自动恢复日志数据并写入到数据库中。 是否启用可以配置sys.config.xml中设置,开启后安全性提高,但性能所有下降。

    jexcelapi_2_6_12.zip

    Java Excel API—用于读取、写入和修改Excel电子表格的Java API JExcelApi Java Excel API是一个成熟的开放源码Java API,允许开发...支持使用Jakarta Commons logging、log4j、JDK 1.4 Logger等进行日志记录 更多...

    Oracle9i的init.ora参数中文说明

    请注意所有用户均可读取或写入 UTL_FILE_DIR 参数中指定的所有文件。 值范围: 任何有效的目录路径。 默认值: 无 plsql_v2_compatibility: 说明: 设置 PL/SQL 兼容级。如果设置为 FALSE, 将执行 PL/SQL V3 行为, ...

    oracle数据库经典题目

    7.如果需要向表中插入一批已经存在的数据,可以在INSERT语句中使用Select语句。 8.使用Describe命令可以显示表的结构信息。 9.使用SQL*Plus的Get命令可以将文件检索到缓冲区,并且不执行。 10.使用Save命令可以将...

    log-searcher-indexer:原型日志搜索器和索引器应用程序

    此应用程序的目的是展示将​​应用程序日志内容写入数据库(SQL/NoSQL,尽管 NoSQL 最适合写入密集型应用程序)并在需要时将其读回的能力。 这个应用程序基本上是一个简单的 Web 应用程序,它有一个非常简单的前端...

    【白雪红叶】JAVA学习技术栈梳理思维导图.xmind

    log4j logback commong logging jdk logger 测试框架 测试框架 junit easymock testng mockito bug管理 禅道 jira 开发工具 编程工具 eclipse myeclipse idea vi VS webstorm sublime text ...

    oracle数据库笔记

    2.LGWR(日志写入进程) 22 3.ARCH(归档进程)-可选进程 22 4.CKPT(检查点进程)-可选进程 22 5.SMON (系统监控进程) 22 6.PMON (进程监控进程) 22 7.RECO (恢复进程) 22 8. Dnnn (调度进程)-可选进程(略)...

    java-cli-maven-sqlserver-aggregate

    java-cli-maven-sqlserver-aggregate描述创建一个称为dog的小型数据库... 该项目似乎挂起,但是必须将容器中的日志写入该项目,这可能需要3分钟。技术栈Java专家log4j ms sql驱动程序Docker堆栈openjdk:11-jdk mcr.mic

    java-cli-maven-sqlserver-com-tbl-exp

    java-cli-maven-sqlserver-com-tbl-exp描述创建一个称为dog的小型数据库表。 该表dog已被标准化为3NF。... 该项目似乎挂起,但是必须将容器中的日志写入该项目,这可能需要3分钟。科技栈Java专家log4j m

    MySQL高频面试题大汇总

    解析MySQL的binlog,实现将数据库中的数据同步到Redis。可以通过canal实现。canal是阿里巴巴旗下的一款开源项目,基于数据库增量日志解析,提供增量数据订阅&消费。 canal的原理如下: 1. canal模拟mysql slave的...

    Android开发人员不得不收集的代码

    writeFileFromBytesByStream : 将字节数组写入文件 writeFileFromBytesByChannel: 将字节数组写入文件 writeFileFromBytesByMap : 将字节数组写入文件 writeFileFromString : 将字符串写入文件 readFile2List : 读取...

Global site tag (gtag.js) - Google Analytics