利用log4mongo-java+mongodb复制集搭建java日志系统
来源:互联网 发布:毕业分布图制作软件 编辑:程序博客网 时间:2024/06/05 15:34
- Download and install MongoDB from http://www.mongodb.org/downloads
- Start mongod running on localhost on the default port
- Download the Mongo Java driver jarfile
- Download Log4J jarfile
- Download log4mongo-java jarfile
- Place these three jar files in your classpath
- Create a file called log4j.properties in your classpath
- Add the following lines to the log4j.properties file
- log4j.rootLogger=INFO, MongoDB
- log4j.appender.MongoDB=org.log4mongo.MongoDbAppender
- log4j.appender.MongoDB.databaseName=appname
- log4j.appender.MongoDB.collectionName=log
- Create a Java class like:
log4j.rootLogger=debug, stdout, Rlog4j.appender.stdout=org.apache.log4j.ConsoleAppenderlog4j.appender.stdout.layout=org.apache.log4j.PatternLayoutlog4j.appender.stdout.layout.ConversionPattern=%-d{MM-dd HH:mm:ss.SSS} %-5p - [%c{1}.%t] %m%nlog4j.appender.R=org.apache.log4j.RollingFileAppenderlog4j.appender.R.File=logs/client.loglog4j.appender.R.MaxFileSize=1000KBlog4j.appender.R.MaxBackupIndex=1log4j.appender.R.layout=org.apache.log4j.PatternLayoutlog4j.appender.R.layout.ConversionPattern=%-d{MM-dd HH:mm:ss.SSS} %-5p - [%c{1}.%t] %m%n8、要增加的mongodb的相关配置
log4j.rootLogger=debug, stdout, R, MongoDBb、配置文件照搬不用更改
log4j.appender.MongoDB.hostname=Server202log4j.appender.MongoDB.port=10001
log4j.rootLogger=debug, stdout, R, MongoDBlog4j.appender.stdout=org.apache.log4j.ConsoleAppenderlog4j.appender.stdout.layout=org.apache.log4j.PatternLayoutlog4j.appender.stdout.layout.ConversionPattern=%-d{MM-dd HH:mm:ss.SSS} %-5p - [%c{1}.%t] %m%nlog4j.appender.R=org.apache.log4j.RollingFileAppenderlog4j.appender.R.File=logs/client.loglog4j.appender.R.MaxFileSize=1000KBlog4j.appender.R.MaxBackupIndex=1log4j.appender.R.layout=org.apache.log4j.PatternLayoutlog4j.appender.R.layout.ConversionPattern=%-d{MM-dd HH:mm:ss.SSS} %-5p - [%c{1}.%t] %m%nlog4j.appender.MongoDB=org.log4mongo.MongoDbAppenderlog4j.appender.MongoDB.databaseName=appnamelog4j.appender.MongoDB.collectionName=loglog4j.appender.MongoDB.hostname=Server202log4j.appender.MongoDB.port=10001运行测试程序,然后在数据库服务器上可以看到如下信息
PRIMARY> show dbsadmin 0.0625GBapache 0.25GBappname 0.999755859375GBapppname (empty)local 0.125GBtest 0.0625GB
PRIMARY> db.log.find().sort({"_id":-1}){ "_id" : ObjectId("5076678bbc9b2fb9255fab6d"), "timestamp" : ISODate("2012-10-11T06:30:35.375Z"), "level" : "INFO", "thread" : "main", "message" : "printRows(DBCollection) - DBCursor cur=Cursor id=1889841098239787423, ns=test.test, query={ }, numIterated=24621, addr=Server202/192.168.19.202:10001, readPreference=ReadPreference.PRIMARY", "loggerName" : { "fullyQualifiedClassName" : "MongoTest", "package" : [ "MongoTest" ], "className" : "MongoTest" }, "fileName" : "MongoTest.java", "method" : "printRows", "lineNumber" : "108", "class" : { "fullyQualifiedClassName" : "MongoTest", "package" : [ "MongoTest" ], "className" : "MongoTest" }, "host" : { "process" : "2016@Songjie", "name" : "Songjie", "ip" : "192.168.19.12" } }{ "_id" : ObjectId("5076678bbc9b2fb9255fab6c"), "timestamp" : ISODate("2012-10-11T06:30:35.375Z"), "level" : "INFO", "thread" : "main", "message" : "printRows(DBCollection) - DBCursor cur=Cursor id=1889841098239787423, ns=test.test, query={ }, numIterated=24620, addr=Server202/192.168.19.202:10001, readPreference=ReadPreference.PRIMARY", "loggerName" : { "fullyQualifiedClassName" : "MongoTest", "package" : [ "MongoTest" ], "className" : "MongoTest" }, "fileName" : "MongoTest.java", "method" : "printRows", "lineNumber" : "108", "class" : { "fullyQualifiedClassName" : "MongoTest", "package" : [ "MongoTest" ], "className" : "MongoTest" }, "host" : { "process" : "2016@Songjie", "name" : "Songjie", "ip" : "192.168.19.12" } }
The log4mongo-java 0.6 release added full support for replica sets. While earlier releases would work with replica sets, you could specify only one host in the hostname property. If the appender happened to be initialized when that host was not available, the appender would not be able to connect to other members of the set.
With the 0.6 release, you should specify the names of all the hosts that can become master. The Mongo Java driver will automatically find the current master. For example:
log4j.appender.MongoDB.hostname=mongo1.example.com mongo2.example.com
If MongoDB is listening on the same port on each host, you can specify just that port. If it's the default port of 27017, you can omit the property.
log4j.appender.MongoDB.port=27000
If the same port is not used by each host, then you must specify the port for all hosts. For example, if the hosts mongo1 and mongo2 are listening on 27000 and 28000, respectively:
log4j.appender.MongoDB.port=27000 28000
When a master becomes available, the next attempt to log will fail and the insert will be lost. The Mongo driver will then check for the new master and the next insert should go to the new master. Log inserts between the time of the original master's failure and the election of the new master will be lost.
log4j.appender.MongoDB.hostname=Server202 Server201log4j.appender.MongoDB.port=10001 10002
- 利用log4mongo-java+mongodb复制集搭建java日志系统
- 利用log4mongo-java+mongodb复制集搭建java日志系统
- 利用log4mongo-java+mongodb复制集搭建java日志系统
- [NoSQL]使用Log4Mongo搭建日志分析系统
- mongodb复制集搭建
- 搭建mongodb复制集
- mongodb复制集搭建
- MongoDB -- 复制集搭建
- mongodb复制集搭建
- 搭建mongodb复制集
- java服务器搭建(一)日志系统
- java利用websocket搭建即时聊天系统
- 利用JAVA操作MongoDB
- 利用JAVA操作MongoDB
- mongodb复制集的搭建
- MongoDB复制集环境搭建
- mongodb学习:复制集搭建
- 利用Mongodb的复制集搭建高可用分片,Replica Sets + Sharding的搭建过程
- c#利用qq的smtp服务器发邮件
- MySQL5.5服务器命令选项中文版(服务器部分)
- Tab组件的使用
- Apache TomEE 1.5版发布
- POJ3749 破译密码
- 利用log4mongo-java+mongodb复制集搭建java日志系统
- 同步和异步的区别
- 委托和事件
- 做饭记
- MySQL5.5服务器命令选项中文版(复制相关部分)
- java继承
- XML介绍之DTD约束语法详解五
- HTC 官解刷机失败的请注意
- 小问题