`
衞酆夼
  • 浏览: 6769 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

log4j学习日志2-写入数据库

阅读更多
1、首先创建日志数据库
用的是MySQL
CREATE TABLE `td_log` (
  `lid` int(11) NOT NULL AUTO_INCREMENT,
  `lusername` varchar(20) DEFAULT NULL,
  `lmessage` varchar(200) DEFAULT NULL,
  `lstartdate` varchar(30) DEFAULT NULL,
  `level` varchar(20) DEFAULT NULL,
  PRIMARY KEY (`lid`)
)

2、配置文件中的部分内容:
log4j.rootLogger=info,jdbc
#直接使用log4j包中的文件
log4j.appender.jdbc=org.apache.log4j.jdbc.JDBCAppender
#与数据库建立连接
log4j.appender.jdbc.URL=jdbc:mysql://localhost:3306/test
log4j.appender.jdbc.driver=com.mysql.jdbc.Driver
log4j.appender.jdbc.user=root
log4j.appender.jdbc.password=admin
log4j.appender.jdbc.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %5p %t %c{2}:%L - %m%n

#指定要插入数据库的格式,与数据库字段对应,与一般SQL区别不大,只是加上了log4j的一些配置参数而已。
log4j.appender.jdbc.sql=insert into td_log(lusername, lstartdate, level, lmessage) values ('%X{lusername}','%d{yyyy-MM-dd HH:mm:ss}','%p','%m')

3、日志工具类源码如下
/**
* 系统日志辅助类
* @author
* @date  */
public class LogUtil{

/**
  * 崩溃级别
  * @param lusername
  * @param message
  */
public static void fatal(Logger logger, String lusername,String message){
  MDC.put("lusername", lusername);
  logger.fatal(message); 
}

/**
  * 错误级别
  * @param username
  * @param message
  */
public static void error(Logger logger, String lusername,String message){
  MDC.put("lusername", lusername);
  logger.error(message); 
}

/**
  * 错误级别
  * @param username
  * @param message
  */
public static void error(Logger logger, String lusername, Object message){
  MDC.put("lusername", lusername);
  logger.error(message); 
}

/**
  * 消息级别
  * @param logger
  * @param username
  * @param message
  */
public static void info(Logger logger, String lusername,String message){
  MDC.put("lusername", lusername);
  logger.info(message); 
}

/**
  * 警告级别
  * @param username
  * @param message
  */
public static void warn(Logger logger, String lusername,String message){
  MDC.put("lusername", lusername);
  logger.warn(message); 
}

/**
  * 调试级别
  * @param username
  * @param message
  */
public static void debug(Logger logger, String lusername,String message){
  MDC.put("lusername", lusername);
  logger.debug(message); 
}
}

4、客户端调用源码
public class test{
private static Logger logger = Logger.getLogger(test.class);

public static void main(String[] args) {
LogUtil.info(logger, "wyw", "看看是否写入了数据库");

}
}
分享到:
评论

相关推荐

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

    下面是一个简单的`log4j.properties`配置示例,用于将日志写入数据库: ``` log4j.rootLogger=DEBUG, DBAppender log4j.appender.DBAppender=org.apache.log4j.jdbc.JDBCAppender log4j.appender.DBAppender.URL=...

    log4j日志写入数据库实例

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

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

    在我们的示例中,我们关注的是如何配置Log4j2以将日志写入MySQL数据库。首先,我们需要在`log4j2.xml`配置文件中定义一个使用JDBC Appender的配置: ```xml <ConnectionFactory class="org.apache.logging....

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

    要将日志写入数据库,我们需要配置一个使用数据库Appender的Log4j配置文件。以下是一个基本的配置示例: ```xml <appender name="DB" class="org.apache.log4j.jdbc.JDBCAppender"> ...

    C# 利用log4net 把日志写入到数据库

    通过log4net,C#开发者可以轻松地将日志信息写入到数据库,便于后期的数据分析和问题排查。合理配置和使用log4net,不仅能提高开发效率,还能确保系统的稳定性和可靠性。在实际项目中,可以根据具体需求调整log4net...

    log4j写入数据库配置

    对于大型系统和分布式环境来说,将日志写入数据库可以提供更强大的查询、分析和故障排查能力。本文将详细阐述如何配置Log4j以将日志信息存储到数据库中。 首先,我们需要在数据库中创建一个适合存储日志数据的表。...

    logging-log4j2-log4j-2.15.0-rc2.7z

    2. **log4j-couchdb**:CouchDB是一个开源的文档数据库,此组件使得Log4j可以将日志数据存储到CouchDB中,便于数据分析和检索。新版本可能增强了数据存储的性能和安全性,以及与CouchDB的兼容性。 3. **log4j-...

    Log4j写入数据库详解

    #### 四、使用JDBCAppender将日志写入数据库 在Log4j中,通过`JDBCAppender`组件可以轻松实现将日志信息写入数据库的功能。`JDBCAppender`利用JDBC技术将日志消息异步写入数据库表中。 ##### 1. 实现步骤: **...

    Log4net日志功能-记录数据库异常和系统异常

    - 例如,要将日志写入文本文件,可以创建一个appender(输出端点)并指定文件路径。 3. **记录数据库异常** - 当数据库操作出现错误时,可以通过捕获`SqlException`或其他特定数据库异常类,然后使用log4net记录...

    使用log4j 记录日志到数据库

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

    log4j学习笔记及写入数据库配置

    在学习Log4j的过程中,阅读“log4j学习笔记及写入数据库配置”这份资料将有助于深入理解Log4j的使用,包括具体的配置步骤、常见问题以及最佳实践。通过实践,你可以更好地掌握如何利用Log4j来提升你的应用程序的可...

    日志配置到文件,数据库

    - `log4j.appender.DATABASE.layout=org.apache.log4j.PatternLayout`:定义输出到数据库的日志格式。 **5. 按天滚动的日志文件配置** - `log4j.appender.A1=org.apache.log4j.DailyRollingFileAppender`:指定...

    apache-log4j-2.8.2-bin.tar

    4. **Appenders**:Appenders是Log4j中负责将日志写入目标(如控制台、文件、数据库等)的组件。2.8.2版本可能会引入新的Appender类型,或者对现有Appender进行性能优化。 5. **异步日志记录**:Log4j 2引入了异步...

    .Net 使用Log4Net 获取系统日志并写入数据库

    在上述配置中,我们设置了AdoNetAppender,它将日志信息存储到SQL Server数据库的ErrorLog表中。如果需要,可以自定义表结构,以便包含更多相关信息,如机器名、用户名等。此外,Log4Net还支持其他类型的Appender,...

    log4j-slf4j-impl.zip

    4. **插件体系**:Log4j拥有强大的插件系统,如Appender和Layout,可以根据需要扩展功能,如发送日志到远程服务器、写入数据库等。 5. **MDC与NDC**:Log4j-SLF4J-Impl支持Mapped Diagnostic Context (MDC) 和...

    log4j输出日志到数据库表中

    6. **性能考虑**:将日志写入数据库可能会对系统性能产生影响,因此需要合理配置日志级别,避免频繁的数据库操作。此外,可以使用异步方式写入日志,减少阻塞。 7. **日志审计与安全**:将日志存储在数据库中有利于...

    log4net写入sql server数据库实例

    5. **日志写入SQL Server**: log4net通过数据库Appender将日志信息写入SQL Server。这需要配置数据库连接字符串、存储过程或者直接的SQL语句来插入日志记录。通常,日志表会包含日期、时间、日志级别、源、消息等...

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

    2. **数据库日志**:要将日志写入数据库,我们需要使用DBAppender。首先,确保你的应用程序连接到数据库,然后配置Log4j连接到同一个数据库。例如,使用JDBCAppender: ``` log4j.appender.DB=org.apache.log4j....

    log4net保存日志到MySql数据库

    在使用log4net将日志写入MySQL之前,需要配置log4net的`AdoNetAppender`。首先,确保安装了`MySql.Data`库,这是MySQL .NET Connector,用于.NET应用程序与MySQL数据库的连接。然后,在log4net配置文件中添加以下...

Global site tag (gtag.js) - Google Analytics