Mongo java驱动程序从v3.x.x开始是冗长的,存储这样的日志日志并不是最佳选择。想隐瞒其中一些。
以下是我的依赖项(maven / pom.xml)
<dependency>
<groupId>org.mongodb</groupId>
<artifactId>mongo-java-driver</artifactId>
<version>3.0.1</version>
</dependency>
<!-- LOGS -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.5</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jcl-over-slf4j</artifactId>
<version>1.7.5</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jul-to-slf4j</artifactId>
<version>1.7.5</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.5</version>
</dependency>
我想隐藏mongo java驱动程序日志:
2015-05-16 10:43:22 023 DEBUG command:56 - Sending command {count : BsonString{value='skydatas'}} to database rizze on connection [connectionId{localValue:2, serverValue:9}] to server 127.0.0.1:27017
2015-05-16 10:43:22 041 DEBUG command:56 - Command execution completed
2015-05-16 10:43:22 042 DEBUG command:56 - Sending command {count : BsonString{value='skydatas'}} to database rizze on connection [connectionId{localValue:2, serverValue:9}] to server 127.0.0.1:27017
2015-05-16 10:43:22 060 DEBUG command:56 - Command execution completed
2015-05-16T10:49:34.448Z DEBUG Checking status of 127.0.0.1:27017 | | cluster:56
2015-05-16T10:49:34.452Z DEBUG Updating cluster description to {type=STANDALONE, servers=[{address=127.0.0.1:27017, type=STANDALONE, roundTripTime=1,3 ms, state=CONNECTED}] | | cluster:56
由于
答案 0 :(得分:1)
您应该可以从log4j配置文件中执行此操作。
我要做的第一件事是暂时将完全限定的类名添加到log4j appender格式(%C
,如果你正在使用基于PatternLayout的格式化程序)。这将为您提供要排除的日志记录语句源的包和类名。
然后按照log4j manual中的示例,专门提高您不希望看到的包/类的日志记录级别(在页面中搜索文本,从下面的代码段中查找文本更多背景信息):
# Print only messages of level WARN or above in the package com.foo.
log4j.logger.com.foo=WARN
如果您排除了所有不想看到的套餐,请不要忘记将%C
从您的模式中删除。
答案 1 :(得分:0)
这是一个log4j配置,我正在使用log4j:
# Log4J logger file
log = ./log4j
log4j.rootLogger = WARN, CONSOLE
log4j.logger.com.rizze.db=INFO
# Direct log messages to stdout
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.Target=System.out
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss SSS} %-5p %m / %c{1}:%L %n
这项工作是做什么的 - 为包com.rizze.db显示级别为&gt; = INFO的日志 - 显示其他日志级别&gt; = WARN
答案 2 :(得分:0)
这对我有用。
将此行添加到log4j配置中以解决此问题。
log4j.logger.org.mongodb.driver=ERROR