`
daoshud1
  • 浏览: 555135 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

log4j 日志输出至数据库

 
阅读更多
1、首先配置log4j
 ### set log levels ###
log4j.rootLogger = INFO,stdout,file
#记录日志的内容
log4j.logger.SYSTEM = WARN,DATABASE

###  ###
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target = System.out
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern =%-d{yyyy-MM-dd HH:mm:ss} - [ %p ]  %m%n

log4j.logger.com.ibatis = DEBUG  
log4j.logger.com.ibatis.common.jdbc.SimpleDataSource = DEBUG  
log4j.logger.com.ibatis.common.jdbc.ScriptRunner = DEBUG  
log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate = DEBUG  
log4j.logger.java.sql.Connection = DEBUG   
log4j.logger.java.sql.Statement = DEBUG  
log4j.logger.java.sql.PreparedStatement = DEBUG, fileout  
log4j.logger.java.sql.ResultSet = DEBUG  


log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.Threshold=INFO
log4j.appender.CONSOLE.Target=System.out
log4j.appender.CONSOLE.Encoding=GBK
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n


#输入至数据库的类
log4j.appender.DATABASE=org.apache.log4j.jdbc.JDBCAppender
#日志级别
log4j.appender.DATABASE.Threshold=WARN
#当有10条时一起存入数据库
#log4j.appender.DATABASE.BufferSize=10
log4j.appender.DATABASE.URL=${db.url}
log4j.appender.DATABASE.driver=${db.driver}
log4j.appender.DATABASE.user=${db.user}
log4j.appender.DATABASE.password=${db.password}
#数据库语句
log4j.appender.DATABASE.sql=INSERT INTO "M_TIMEPIECETASK_T_TASK_LOGS" VALUES (sys_guid(),'%m','%d{yyyy-MM-dd HH:mm:ss}','%c','%L','%l','%F','%p')

2、logger声明
log4j.logger.SYSTEM = WARN,DATABASE
第一个代表级别,第二个代表标识
如log4j.appender.DATABASE.BufferSize=10
类中声明时需要以:private Logger logger = Logger.getLogger("SYSTEM");
才能保证持久化到数据库中成功
3、log4j配置参数
以下为log4j中的配置参数:

%m 输出代码中指定的消息

%p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL

%r 输出自应用启动到输出该log信息耗费的毫秒数

%t 输出产生该日志事件的线程名;

%n 输出一个回车换行符,Windows平台为"\r\n",Unix平台为"\n"

%d 输出日志时间的日期或时间,默认格式为ISO8601,也可以在其后指定格式,
比如:%d{yyy MMM dd HH:mm:ss,SSS},输出类似:2008年10月18日22:10:28:832

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

%l  输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数

%L 输出代码中的行数;

%F 输出代码中的文件名;
分享到:
评论

相关推荐

    log4j输出日志到数据库表中

    2. **Log4j配置**:要将日志输出到数据库,需要在`log4j.properties`或`log4j.xml`配置文件中添加一个Appender,指定为JDBC类型。配置包括数据库连接信息(如URL、用户名、密码)、SQL语句(插入日志记录)等。 3. ...

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

    本示例将详细介绍如何配置并使用Log4j2将日志信息记录到MySQL数据库中。 首先,我们要理解Log4j2的核心概念。Log4j2主要包括以下几个组件: 1. **配置文件**:如`log4j2.xml`,这是Log4j2的配置中心,定义了日志...

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

    在实际应用中,可能会根据需求调整日志的输出策略,比如添加过滤器、使用不同的布局模式,或者配置多个Appender同时将日志输出到控制台、文件和数据库。总之,理解和掌握Log4j的使用,能够极大地方便开发者进行日志...

    log4j日志写入数据库实例

    在“log4j日志写入数据库实例”中,我们将关注如何配置Log4j将日志信息存储到数据库中,以便于后期分析和检索。 要实现这个功能,我们需要创建一个Appender,该Appender能够与数据库进行交互。通常,我们会使用...

    如何借助log4j把日志写入数据库中

    本文将深入讲解如何利用Log4j将日志信息存储到数据库中。 首先,我们需要理解Log4j的基本架构。Log4j由三个主要组件构成:Logger(日志器)、Appender(输出端)和Layout(格式化器)。Logger负责生成日志事件,...

    使用log4j 记录日志到数据库

    这篇博客“使用log4j记录日志到数据库”将介绍如何配置和使用Log4j,以便将日志信息存储到数据库中,而非传统的文本文件。数据库存储的日志便于进行结构化查询,有助于进行长期的数据分析和管理。 首先,理解Log4j...

    Log4j 日志信息存储到数据库中

    - `log4j.appender.stdout=org.apache.log4j.ConsoleAppender`: 定义了一个 ConsoleAppender 实例,用于将日志输出到控制台。 - `log4j.appender.stdout.layout=org.apache.log4j.PatternLayout`: 设置了日志格式...

    log4j添加日志到数据库和文件中

    Log4j的核心优势在于其可配置性,可以根据不同的需求将日志输出到控制台、文件、数据库甚至网络上。 在"log4j添加日志到数据库和文件中"的场景中,我们首先需要理解Log4j的基本架构。它主要由三个组件构成:Logger...

    无法打出log4j日志的问题排查

    当我们遇到“无法打出log4j日志的问题”,这通常是由于配置、环境或代码实现中的某些错误导致的。这篇长文将深入探讨如何排查和解决这类问题。 首先,我们要理解Log4j的基本工作原理。Log4j通过配置文件(通常是log...

    Log4j写入数据库详解

    2. **多样化的输出目的地**:除了标准的控制台输出和文件输出外,Log4j还支持输出至数据库、邮件系统、网络套接字等多种途径。 #### 三、Log4j与数据库集成 在众多日志输出目标中,将日志写入数据库是一种常见且...

    log4j按功能保存日志

    - **Logger**: 日志记录器,是Log4j的核心组件,负责实际的日志输出。你可以为每个功能模块创建一个独立的Logger,以便区分日志来源。 - **Appender**: 输出目的地,用于定义日志信息被发送到哪里,如控制台、文件...

    log4j日志配置以及配置文件详解

    这是log4j框架的配置文件,使用Java Properties格式,用于定义日志输出的行为。主要包括以下几个核心部分: 1. **Logger**: 定义日志级别,例如DEBUG、INFO、WARN、ERROR和FATAL。日志级别决定了哪些信息会被记录。...

    mybatis,log4j打印日志到后台和文件

    总结,通过以上步骤,你已成功配置了 MyBatis 使用 Log4j 来记录日志,同时将日志输出到后台控制台和文件,这有助于在开发和调试过程中追踪问题,提高代码的可维护性。记得根据实际需求调整日志级别和输出格式,以...

    log4j的详细配置,log4j.xml和log4j.properties,日志输出到文件,邮件,数据库,控制台等

    - **配置示例**:例如,`log4j.rootLogger=DEBUG, FILE`表示根日志器的级别设为DEBUG,并将日志输出到名为FILE的appender。 - **Appender配置**:在properties文件中,每个appender都有自己的配置,如`log4j....

    log4j 日志输出

    Log4j有两种主要的配置方式:`log4j.properties`(基于属性)和`log4j.xml`(基于XML)。它们都用于定义Log4j的行为,包括Logger、Appender和Layout的设置。 - **log4j.properties**: 这是一个基于文本的配置文件,...

    日志配置到文件,数据库

    通过上述解析,我们可以看出这份文档提供了非常详尽的日志配置指南,覆盖了控制台输出、文件输出、数据库输出以及特定级别的异常日志输出等多种场景。这对于开发者而言是非常有价值的参考资料。虽然文档中存在一些小...

    log4j多文件输出打印

    总结来说,Log4j提供了丰富的功能来满足日志输出的需求。通过配置多个Appender,我们可以实现日志的多文件输出;通过定制日志级别,我们可以更精细化地控制日志记录。这使得在复杂的项目环境中,日志管理变得更加...

    打log4j日志-ibatis的sql输出

    Log4j的配置文件通常是`log4j.properties`或`log4j.xml`,在这里你可以设置不同级别的日志输出,例如DEBUG、INFO、WARN、ERROR等。 对于Ibatis,这是一个轻量级的持久层框架,它将SQL语句与Java代码分离,提供了...

    log4j 日志打印

    《深入理解Log4j日志打印》 在Java开发领域,日志打印是不可或缺的一环,它对于系统调试、性能监控、故障排查等都起着至关重要的作用。Log4j作为Java中最常用的日志框架之一,深受广大开发者喜爱。本文将深入探讨...

Global site tag (gtag.js) - Google Analytics