log4j 将日志记录到数据库
需要以下jar包:
---log4j
commons-loggin-1.1.1.jar
log4j-1.2.16.jar
---mysql
mysql-connector-java-5.1.15-bin.jar
---log4j.properties配置内容
log4j.rootLogger=INFO,DATABASE #JDBC Appender log4j.appender.DATABASE=org.apache.log4j.jdbc.JDBCAppender
log4j.appender.DATABASE.layout=org.apache.log4j.PatternLayout #与数据库建立连接
log4j.appender.DATABASE.URL=jdbc:mysql://localhost:/test
log4j.appender.DATABASE.driver=com.mysql.jdbc.Driver
log4j.appender.DATABASE.user=root
log4j.appender.DATABASE.password=
log4j.appender.DATABASE.sql=insert into wlog(class_name,method_name,create_time,log_level,log_info,log_type) values('%C', '%M', '%d{yyyy-MM-dd HH:mm:ss}', '%p', '%m', '%X{type}')
---表结构
CREATE TABLE wlog (
id INT NOT NULL AUTO_INCREMENT,
class_name VARCHAR(100) NULL COMMENT '类名',
method_name VARCHAR(100) NULL COMMENT '方法名',
create_time VARCHAR(45) NULL COMMENT '产生时间',
log_level VARCHAR(45) NULL COMMENT '日志级别',
log_info VARCHAR(45) NULL COMMENT '日志信息',
log_type INT NULL COMMENT '日志类别',
PRIMARY KEY (id));
--Log4jtest.java
private static final Logger lg = Logger.getLogger(Log4jtest.class); public static void main(String[] args) {
MDC.put("type", "1"); lg.error("Log4jtes错误信息");
lg.warn("Log4jtest警告信息");
lg.info("Log4jtest信息");
}
--result
mysql> select * from wlog;
+----+------------------------+-------------+---------------------+-----------+-----------------------+----------+
| id | class_name | method_name | create_time | log_level | log_info | log_type |
+----+------------------------+-------------+---------------------+-----------+-----------------------+----------+
| | com.yan.test.Log4jtest | main | -- :: | ERROR | Log4jtes错误信息 | |
| | com.yan.test.Log4jtest | main | -- :: | WARN | Log4jtest警告信息 | |
| | com.yan.test.Log4jtest | main | -- :: | INFO | Log4jtest信息 | |
+----+------------------------+-------------+---------------------+-----------+-----------------------+----------+
rows in set (0.00 sec)
log4j 将日志记录到数据库的更多相关文章
- 也用 Log4Net 之将日志记录到数据库的后台实现 (二)
也用 Log4Net 之将日志记录到数据库的后台实现 (二) 大家下午好,昨天讲了配置,今天我们讲讲后台实现,在完成了后台实现后,我们才能真正意义上的解决把自定义属性字段值录入到数据库中. 在开写之 ...
- 也用 Log4Net 之将日志记录到数据库的配置 (一)
也用 Log4Net 之将日志记录到数据库的配置 (一) 前段时间我一直想做一个通用一点的日志记录系统,可以便于不同的业务组调用进行日志记录及分析.本来打算着自己下手写一个,后面发现各业务组可能会需 ...
- java注解日志记录到数据库
1. pom添加依赖包 <!--添加aop依赖--><dependency> <groupId>org.springframework.boot</group ...
- Log4Net 之将日志记录到数据库的后台实现 (二)
原文:Log4Net 之将日志记录到数据库的后台实现 (二) 大家下午好,昨天讲了配置,今天我们讲讲后台实现,在完成了后台实现后,我们才能真正意义上的解决把自定义属性字段值录入到数据库中. 在开写之前 ...
- Log4Net 之将日志记录到数据库的配置 (一)
原文:Log4Net 之将日志记录到数据库的配置 (一) 前段时间我一直想做一个通用一点的日志记录系统,可以便于不同的业务组调用进行日志记录及分析.本来打算着自己下手写一个,后面发现各业务组可能会需要 ...
- log4j教程 12、日志记录到数据库
log4j API提供 org.apache.log4j.jdbc.JDBCAppender 对象,它能够将日志信息在指定的数据库. JDBCAppender 配置: Property 描述 buff ...
- springmvc+log4j操作日志记录,详细配置
没有接触过的,先了解一下:log4j教程 部分内容来:log4j教程 感谢! 需要导入包: log包:log4j-12.17.jar 第一步:web.xml配置 <!-- log4j配置,文件路 ...
- Log4j(一):Log4j将日志信息写入数据库
前言 为了监听一些数据的采集等功能,需要随时监听设备的状态,所以需要运行的时候将日志打入到数据库中. 正文 第一步: 首先是jar包,由于我使用的是springboot,所以,在springboot- ...
- log4j日志记录到数据库
log4j API提供 org.apache.log4j.jdbc.JDBCAppender 对象,它能够将日志信息在指定的数据库. JDBCAppender 配置: Property 描述 buff ...
随机推荐
- 如何删除textarea的移动版Safari的阴影?
如何删除textarea的移动版Safari的阴影? 在iphone的Safari上运行网页,textarea无法使用box-shadow样式,而且顶部有内阴影,如何清除? 添加评论 分享 赞同1 ...
- 三元运算符和GridView数据显示
三元运算符嵌套使用:<%# Eval("InsertType").ToString() == "0" ? "数据库" : Eval(& ...
- Keil C51处理可重入函数问题的探讨
在程序设计中,变量具体可以分为四种类型:全局变量.静态全局变量.局部变量.静态局部变量.这几种变量类型对函数的可重入产生的重大的影响,因为不同的编译器采用不同的策略. 针对51的存储区有限,keil ...
- Qt HTTP请求同步调用
在Qt中,进行HTTP就行现在官方提倡使用QNetworkAccessManager,其和QNetworkRequest和QNetworkReply配合使用,来完成,其是只支持异步的操作.最近使用QM ...
- 方案:手动升级WordPress系统
对于WordPress系统及时进行更新维护是十分必须的操作,更新维护不仅可以更新系统服务功能,还能够完善安全系统. 如果你是虚拟主机的用户,可以使用FTP账户进行自动更新服务,但是如果你是V ...
- 苹果拒绝App内部使用版本检测功能
10.6 - Apple and our customers place a high value on simple, refined, creative, well thought through ...
- InnoDB和MyISAM存储引擎的区别
在MySQL数据库的使用过程中我们经常会听到存储引擎这个名词.MySQL的存储引擎有好多种如InnoDB.MyISAM.Memory.NDB等等,多存储引擎也是MySQL数据库的特色. InnoDB和 ...
- php创建带logo的二维码
<?php /** php使用二维码 **/ class MyQrcode{ const SIZE = 150; const LEVEL = "L"; const MARGI ...
- Hadoop集群启动之后,datanode节点未正常启动的问题
Hadoop集群启动之后,用JPS命令查看进程发现datanode节点上,只有TaskTracker进程.如下图所示 master的进程: 两个slave的节点进程 发现salve节点上竟然没有dat ...
- [Hapi.js] Using the response object
When you use reply method: let resp = reply('hello world') It actually return an response object. By ...