log4mongo的使用(MongoDB3.4)

 

#ERROR,WARN,INFO,DEBUG,这里不显示DEBUG级别的日志,语法为
#log4j.rootLogger=[level],appenderName,appenderName,...
log4j.rootLogger=INFO,stdout,MongoDB

#如果使用layout属性,则配置MongoDbPatternLayoutAppender,即使用自定义的json数据,不使用已有的字段信息
#log4j.appender.MongoDB=org.log4mongo.MongoDbPatternLayoutAppender
#log4j.appender.MongoDB.layout=org.log4mongo.MongoDbPatternLayout
#ConversionPattern属性值(string,arrays)必须是有效的json文档,嵌套文档
#log4j.appender.MongoDB.layout.ConversionPattern={"timestamp":"%d{yyyy-MM-dd'T'HH:mm:ss'Z'}","level":"%p","class":"%c{1}","message":"%m","filename":"%F","NDC":"%x","eventLocation":"%l","threadName":"%t","elapsed time":"%r"}

#ExtendedMongoDbAppender是在已有的字段信息上做扩展,可使用rootLevelProperties属性配置扩展字段
#log4j.appender.MongoDB=org.log4mongo.ExtendedMongoDbAppender
#log4j.appender.MongoDB.rootLevelProperties=applicationName=log&eventType=Development


#可以配置多个host和port,但是要一一对应否则会抛异常
#appender是一个接口,MongoDB是appenderName,对应于接口中的setName方法
log4j.appender.MongoDB=org.log4mongo.MongoDbAppender
log4j.appender.MongoDB.databaseName=log
log4j.appender.MongoDB.collectionName=log
#需要创建admin库和admin用户,然后在创建其他的库和用户以及对应的角色权限
log4j.appender.MongoDB.userName=log
log4j.appender.MongoDB.password=log
log4j.appender.MongoDB.hostname=nosql
log4j.appender.MongoDB.port=27017

#目前writeConcern建议的几种级别:UNACKNOWLEDGED,ACKNOWLEDGED,W1,W2,W3,JOURNALED,MAJORITY
#w1,2,3分别代表客户端向mongo中写操作时成功写入number个节点才算成功,可设置wTimeoutMS选项(只针对number>1),如果超过这个时间写入失败。
#MAJORITY:数据写入到副本集大多数成员后向客户端发送确认,适用于对数据安全性要求比较高的场景,该选项会降低写入性能
#JOURNALED:如果要求Primary写入持久化了(提交journal文件到磁盘上)才向客户端确认,则指定该选项为true
#ACKNOWLEDGED:默认级别,mongod会去确认它接收到了这个写操作并且将这个写操作应用到内存数据中
#UNACKNOWLEDGED:mongodb服务器不会去确认写操作是否真正收到了
#log4j.appender.MongoDB.writeConcern=ACKNOWLEDGED

#Replica Sets示例:
#如果是使用mongodb复制集,可以使用如下配置,可以写mongos的端口号,也可以指定副本集下某个主机的端口号
#如果使用mongos的端口号,mongos会将数据写入信息存储到config配置服务器下
#log4j.appender.MongoDB.hostname=nosql
#log4j.appender.MongoDB.port=30000

#三个端口分别是三个副本集下主机的端口号,如果要使用分片,必须在某个数据库下开启分片功能并且指定要分片的集合和片键,
#然后数据就可以分布在不同的副本集上,做数据量的负载均衡,在配置服务器下会记录整个分片的过程,
#超过每个chunk设置的大小,默认64M,引发split(sharding分片)-->每个分片下的chunk数量不一样引发数据不平衡,做下列操作
#moveChunk.from-->moveChunk.start-->moveChunk.to-->moveChunk.commit(banlance)
#multi-split(每个分片服务器下chunk的拆分)
#log4j.appender.MongoDB.hostname=nosql nosql nosql
#log4j.appender.MongoDB.port=11001 21001 31002

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n

 

转载于:https://my.oschina.net/lzhaoqiang/blog/844860

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值