您的位置:首页 > 数据库 > Mongodb

【mongodb】 log4j输出信息到mongodb

2016-01-29 16:05 886 查看

前提

已完成mongodb的安装 (/article/11857726.html 安装教程)

所需jar包

<dependency>
<groupId>org.mongodb</groupId>
<artifactId>mongo-java-driver</artifactId>
<version>2.13.2</version>
</dependency>
<dependency>
<groupId>org.log4mongo</groupId>
<artifactId>log4mongo-java</artifactId>
<version>0.7.4</version>
</dependency>


log4j.properties配置

直接在原配置后加

log4j.rootLogger=INFO, stdout

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout

log4j.logger.MongoDB=INFO,MongoDB
log4j.appender.MongoDB=org.log4mongo.MongoDbPatternLayoutAppender
log4j.appender.MongoDB.Threshold=INFO
log4j.appender.MongoDB.databaseName=mydb
log4j.appender.MongoDB.collectionName=optlog
log4j.appender.MongoDB.hostname=10.25.193.16
log4j.appender.MongoDB.port=9933
log4j.appender.MongoDB.layout=org.log4mongo.MongoDbPatternLayout
#传入jsonObject出错使用下面配置即可(此种配置将把所有类型value值以字符型插入)
log4j.appender.MongoDB.layout=org.apache.log4j.PatternLayout


测试类

public static void main(String[] args) {
Logger logger = Logger.getLogger("MongoDB");
logger.info("{'provinceCode': null, 'channelSubCode': null, 'platFormCode': '002', 'optCode': null, 'startTimeLong': 1384599600000, 'processTime_sum': 10081,'count': 404, 'suc_count': 0,'suc_rate': '0.00000'}");

Logger logger2 = Logger.getLogger("MongoDB2");
logger2.info("{'provinceCode':123}");
}


扩展

把日至存储在多台服务器上

log4j.appender.MongoDB.hostname=Server01 Server02
log4j.appender.MongoDB.port=10001 10002


官网教程

http://log4mongo.org/display/PUB/Log4mongo+for+Java
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: