log4j+mongodb
maven 配置:
<dependency>
<groupId>org.mongodb</groupId>
<artifactId>mongo-java-driver</artifactId>
<version>3.3.0</version>
</dependency>
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-mongodb</artifactId>
<version>1.8.4.RELEASE</version>
</dependency>
<dependency>
<groupId>org.log4mongo</groupId>
<artifactId>log4mongo-java</artifactId>
<version>0.7.4</version>
</dependency>
log4j.properties
#MongoDB
log4j.logger.MongoDB=INFO,MongoDB
log4j.appender.MongoDB=org.log4mongo.MongoDbAppender
log4j.appender.MongoDB.databaseName=mq
log4j.appender.MongoDB.collectionName=log
log4j.appender.MongoDB.hostname=mongoDB
log4j.appender.MongoDB.port=27017
log4j.appender.MongoDB.Append = true
log4j.appender.MongoDB.Threshold = INFO
测试类
private static final Logger logger = LoggerFactory.getLogger("MongoDB");
public void testLog() throws Exception {
logger.info("testMongoDbLog");
}
进入mongodb查看
> use mq
switched to db mq
> db.log.find();
{ "_id" : ObjectId("584e00a75f519d16cc41746f"), "timestamp" : ISODate("2016-12-12T01:43:03.165Z"), "level" : "INFO", "thread" : "qtp632707967-34", "message" : "mongodb log info", "loggerName" : { "fullyQualifiedClassName" : "MongoDB", "package" : [ "MongoDB" ], "className" : "MongoDB" }, "fileName" : "UserInfoController.java", "method" : "testLog", "lineNumber" : "155", "class" : { "fullyQualifiedClassName" : "com.shanjin.mq.controller.UserInfoController", "package" : [ "com", "shanjin", "mq", "controller", "UserInfoController" ], "className" : "UserInfoController" }, "host" : { "process" : "5836@PC-20160604TRVJ", "name" : "PC-20160604TRVJ", "ip" : "192.168.1.33" } }
{ "_id" : ObjectId("584e00a75f519d1630e15735"), "timestamp" : ISODate("2016-12-12T01:43:03.220Z"), "level" : "INFO", "thread" : "DubboServerHandler-192.168.1.33:20882-thread-3", "message" : "UserInfoServiceImpl log", "loggerName" : { "fullyQualifiedClassName" : "MongoDB", "package" : [ "MongoDB" ], "className" : "MongoDB" }, "fileName" : "UserInfoServiceImpl.java", "method" : "testLog", "lineNumber" : "178", "class" : { "fullyQualifiedClassName" : "com.shanjin.mq.service.impl.UserInfoServiceImpl", "package" : [ "com", "shanjin", "mq", "service", "impl", "UserInfoServiceImpl" ], "className" : "UserInfoServiceImpl" }, "host" : { "process" : "5680@PC-20160604TRVJ", "name" : "PC-20160604TRVJ", "ip" : "192.168.1.33" } }
{ "_id" : ObjectId("584e00a75f519d16cc417470"), "timestamp" : ISODate("2016-12-12T01:43:03.192Z"), "level" : "ERROR", "thread" : "qtp632707967-34", "message" : "mongodb log error", "loggerName" : { "fullyQualifiedClassName" : "MongoDB", "package" : [ "MongoDB" ], "className" : "MongoDB" }, "fileName" : "UserInfoController.java", "method" : "testLog", "lineNumber" : "156", "class" : { "fullyQualifiedClassName" : "com.shanjin.mq.controller.UserInfoController", "package" : [ "com", "shanjin", "mq", "controller", "UserInfoController" ], "className" : "UserInfoController" }, "host" : { "process" : "5836@PC-20160604TRVJ", "name" : "PC-20160604TRVJ", "ip" : "192.168.1.33" } }
{ "_id" : ObjectId("584e010e5f519d16cca462d0"), "timestamp" : ISODate("2016-12-12T01:44:46.602Z"), "level" : "INFO", "thread" : "qtp632707967-30", "message" : "mongodb log info", "loggerName" : { "fullyQualifiedClassName" : "MongoDB", "package" : [ "MongoDB" ], "className" : "MongoDB" }, "fileName" : "UserInfoController.java", "method" : "testLog", "lineNumber" : "155", "class" : { "fullyQualifiedClassName" : "com.shanjin.mq.controller.UserInfoController", "package" : [ "com", "shanjin", "mq", "controller", "UserInfoController" ], "className" : "UserInfoController" }, "host" : { "process" : "5836@PC-20160604TRVJ", "name" : "PC-20160604TRVJ", "ip" : "192.168.1.33" } }
{ "_id" : ObjectId("584e010e5f519d16cca462d1"), "timestamp" : ISODate("2016-12-12T01:44:46.628Z"), "level" : "ERROR", "thread" : "qtp632707967-30", "message" : "mongodb log error", "loggerName" : { "fullyQualifiedClassName" : "MongoDB", "package" : [ "MongoDB" ], "className" : "MongoDB" }, "fileName" : "UserInfoController.java", "method" : "testLog", "lineNumber" : "156", "class" : { "fullyQualifiedClassName" : "com.shanjin.mq.controller.UserInfoController", "package" : [ "com", "shanjin", "mq", "controller", "UserInfoController" ], "className" : "UserInfoController" }, "host" : { "process" : "5836@PC-20160604TRVJ", "name" : "PC-20160604TRVJ", "ip" : "192.168.1.33" } }
{ "_id" : ObjectId("584e010e5f519d1630e15736"), "timestamp" : ISODate("2016-12-12T01:44:46.630Z"), "level" : "INFO", "thread" : "DubboServerHandler-192.168.1.33:20882-thread-8", "message" : "UserInfoServiceImpl log", "loggerName" : { "fullyQualifiedClassName" : "MongoDB", "package" : [ "MongoDB" ], "className" : "MongoDB" }, "fileName" : "UserInfoServiceImpl.java", "method" : "testLog", "lineNumber" : "178", "class" : { "fullyQualifiedClassName" : "com.shanjin.mq.service.impl.UserInfoServiceImpl", "package" : [ "com", "shanjin", "mq", "service", "impl", "UserInfoServiceImpl" ], "className" : "UserInfoServiceImpl" }, "host" : { "process" : "5680@PC-20160604TRVJ", "name" : "PC-20160604TRVJ", "ip" : "192.168.1.33" } }
{ "_id" : ObjectId("584e1bb55f519d16cca462d2"), "timestamp" : ISODate("2016-12-12T03:38:29.642Z"), "level" : "INFO", "thread" : "qtp632707967-30", "message" : "mongodb log info", "loggerName" : { "fullyQualifiedClassName" : "MongoDB", "package" : [ "MongoDB" ], "className" : "MongoDB" }, "fileName" : "UserInfoController.java", "method" : "testLog", "lineNumber" : "155", "class" : { "fullyQualifiedClassName" : "com.shanjin.mq.controller.UserInfoController", "package" : [ "com", "shanjin", "mq", "controller", "UserInfoController" ], "className" : "UserInfoController" }, "host" : { "process" : "5836@PC-20160604TRVJ", "name" : "PC-20160604TRVJ", "ip" : "192.168.1.33" } }
{ "_id" : ObjectId("584e1bb55f519d16cca462d3"), "timestamp" : ISODate("2016-12-12T03:38:29.643Z"), "level" : "ERROR", "thread" : "qtp632707967-30", "message" : "mongodb log error", "loggerName" : { "fullyQualifiedClassName" : "MongoDB", "package" : [ "MongoDB" ], "className" : "MongoDB" }, "fileName" : "UserInfoController.java", "method" : "testLog", "lineNumber" : "156", "class" : { "fullyQualifiedClassName" : "com.shanjin.mq.controller.UserInfoController", "package" : [ "com", "shanjin", "mq", "controller", "UserInfoController" ], "className" : "UserInfoController" }, "host" : { "process" : "5836@PC-20160604TRVJ", "name" : "PC-20160604TRVJ", "ip" : "192.168.1.33" } }
{ "_id" : ObjectId("584e1bb55f519d1ca8b12503"), "timestamp" : ISODate("2016-12-12T03:38:29.647Z"), "level" : "INFO", "thread" : "DubboServerHandler-192.168.1.33:20882-thread-4", "message" : "用户身份核实通过", "loggerName" : { "fullyQualifiedClassName" : "MongoDB", "package" : [ "MongoDB" ], "className" : "MongoDB" }, "fileName" : "UserInfoServiceImpl.java", "method" : "testLog", "lineNumber" : "178", "class" : { "fullyQualifiedClassName" : "com.shanjin.mq.service.impl.UserInfoServiceImpl", "package" : [ "com", "shanjin", "mq", "service", "impl", "UserInfoServiceImpl" ], "className" : "UserInfoServiceImpl" }, "host" : { "process" : "7336@PC-20160604TRVJ", "name" : "PC-20160604TRVJ", "ip" : "192.168.1.33" } }
>
log4j+mongodb的更多相关文章
- 利用log4j+mongodb实现分布式系统中日志统一管理
背景 在分布式系统当中,我们有各种各样的WebService,这些服务可能分别部署在不同的服务器上,并且有各自的日志输出.为了方便对这些日志进行统一管理和分析.我们可以将日志统一输出到指定的数 ...
- log4j mongoDB配置
log4j.rootCategory=INFO, stdout log4j.appender.stdout=org.springframework.data.document.mongodb.log4 ...
- ycsb安装和使用介绍
nosql性能测试工具ycsb0.1的使用 使用文档参考地址:https://www.cnblogs.com/SailorXiao/p/5808828.html ycsb地址:https://gith ...
- log4j输出信息到mongodb
官网 http://log4mongo.org/display/PUB/Log4mongo+for+Java 保存主机信息,方法等 http://my.oschina.net/chi ...
- MongoDB log4j 日志整合
在分布式系统当中,这些服务可能分别部署在不同的服务器上,并且有各自的日志输出.为了方便对这些日志进行统一管理和分析.我们可以将日志统一输出到指定的数据库系统中,而再由日志分析系统去管理.而这个储存日志 ...
- log4j配置目标到mongodb
首先,具体采用什么技术作为集中式存储方案在99%的应用中应该来说并没有多大区别,最重要的是要定期清理不必要的日志,以及日志格式设计(也可以重写org.log4mongo.MongoDbPatternL ...
- Spring Boot log4j实现把日志存入mongodb
准备工作 1.自定义appender的实现 log4j提供的输出器实现自Appender接口,要自定义appender输出到MongoDB,只需要继承AppenderSkeleton类,并实现几个方法 ...
- Spring Boot中使用log4j实现http请求日志入mongodb
之前在<使用AOP统一处理Web请求日志>一文中介绍了如何使用AOP统一记录web请求日志.基本思路是通过aop去切web层的controller实现,获取每个http的内容并通过log4 ...
- apache log4j将日志保存在mongodb数据库中(转)
og4j与mongodb整合 Mongo Java driver jar包 log4mongo-java jar包 配置log4j.properties文件,使之整合mongodb: #将Mongod ...
随机推荐
- python学习笔记(1)
python简介 python是Guido van Rossum在圣诞节打发无聊的时间时候写出来的语言. python是解释性的语言. python是动态类型的语言. python是强类型定义语言(高 ...
- 【Java EE 学习 47】【Hibernate学习第四天】【sesion】【一级缓存】【懒加载】
一.Session概述 1.Session 接口是 Hibernate 向应用程序提供的操纵对数据库的最主要的接口, 它提供了基本的保存, 更新, 删除和加载Java 对象的方法. 2.理解Sessi ...
- 【Java EE 学习 45】【Hibernate学习第二天】【对象的三种状态】【一对多关系的操作】
一.对象的三种状态. 1.对象有三种状态:持久化状态.临时状态.脱管状态(游离状态) 2.Session的特定方法能使得一个对象从一个状态转换到另外一个状态. 3.三种状态的说明 (1)临时状态:临时 ...
- 2.goldengate日常维护命令(转载)
goldengate日常维护命令 发表于 2013 年 7 月 4 日 由 Asysdba 1.查看进程状态 GGSCI (PONY) 2> info all 2.查看进程详细状态,有助于排错 ...
- 反射 + 抽象工厂模式切换DB数据源(附Demo)
首先,设计模式的文章源自于程杰的<大话设计模式>这本书,这本书个人感觉很适合我,看着不累,能够安安心心的阅读学习.在这里十分感谢程杰的这本书,我博文中的例子会根据书上的例子来.为了不侵犯这 ...
- java中方法的重写与重载的区别
重载: 方法名相同,但是参数必须有区别(参数不同可以使类型不同,顺序不同,个数不同).前提: 同一个类中,方法名相同,参数列表不同的2个或多个方法构成方法的重载 参数列表不同指参数的类型,参数的个数, ...
- Daily Scrum Meeting ——SecondDay
一.Daily Scrum Meeting照片 二.Burndown Chart 燃尽图是的粒度较大,今天并没完成具体的issues 三.项目进展 1.完成侧滑框,测试功能中 放张图 2.M层,编写参 ...
- inner join on 和 where = 的区别!
请看下面两条语句:select * from table1 inner join table2 on table1.id = table2.idselect * from table1,table2 ...
- sql server存储过程中SELECT 与 SET 对变量赋值的区别
SQL Server 中对已经定义的变量赋值的方式用两种,分别是 SET 和 SELECT. 对于这两种方式的区别,SQL Server 联机丛书中已经有详细的说明,但很多时候我们 并没有注意,其实这 ...
- 修改AspNetPager的CustomInfoHTML,添加自定义样式
AspNetPager控件有一个属性叫CustomInfoHTML,可以把它写在前台页面,如下: <webdiyer:AspNetPager ID=" HorizontalAlign= ...