2016-04-15 121 views
0

我知道这个问题听起来有点有趣,但是如何禁用neo4j-ogm中的日志记录?我已将一个logback.xml文件添加到我的类路径中的conf目录中。 logback.xml如下所示:如何在neo4j-ogm中禁用日志记录

<?xml version="1.0" encoding="UTF-8"?> 
<configuration>  
    <!-- 
     ~ Set the required log level for the OGM components here. 
     ~ To just see Cypher statements set the level to "info" 
     ~ For finer-grained diagnostics, set the level to "debug". 
    --> 
    <logger name="org.neo4j.ogm" level="OFF" /> 

    <root level="off"> 
       <appender-ref ref="console" /> 
    </root> 

</configuration> 

它取自here。 loglevel = off取自here

我想部署我的程序进行生产,我需要从控制台登录。但随着Neo4j的登录日志文件增加了1GB每天有以下类型的日志:

14:20:13.281 [Thread-14] DEBUG o.n.o.d.http.request.HttpRequest - Response is OK 
14:20:13.289 [Thread-14] DEBUG org.neo4j.ogm.MetaData - looking for concrete class to resolve label: Leaf 
14:20:13.289 [Thread-14] DEBUG org.neo4j.ogm.MetaData - concrete class found: com.mycompany.Leaf. comparing with what's already been found previously... 
14:20:13.289 [Thread-14] DEBUG org.neo4j.ogm.MetaData - Page resolving class: com.mycompany.Leaf 
14:20:13.290 [Thread-14] DEBUG org.neo4j.ogm.MetaData - looking for concrete class to resolve label: Root 
etc... 

详情:

该计划是一个的jsvc守护进程登录控制台登录/ log.txt中。

Neo4j的版本:2.0.0 - M01

Java的版本:甲骨文的Java 7

+0

你是否解决了这个问题,因为它让我感到困惑! – urosjarc

+0

没有。我最终写了我自己的小实现(这只是我想要的)。 – Vahagn

回答

0

我不知道这是否会帮助你的情况,但我已经爆炸“开卷”日志问题,并发现这个哈克的方式来解决它。它只是禁用了我在源代码中找到的内部记录器。你可以做同样的事情,如果你的发现记录器类的源代码:

java.util.logging.Logger.getLogger("org.neo4j.ogm.drivers.bolt.request.BoltRequest").setLevel(Level.WARNING); 
0

后它的工作时间,我终于找到了问题! 我正在使用“slf4j”的错误依赖关系。

错误的依赖:

<dependency> 
     <groupId>org.slf4j</groupId> 
     <artifactId>slf4j-simple</artifactId> 
     <version>1.6.4</version> 
</dependency> 

正确的依赖性:

<dependency> 
     <groupId>org.slf4j</groupId> 
     <artifactId>slf4j-log4j12</artifactId> 
     <version>1.7.25</version> 
</dependency> 

而我只是用文件 “log4j2.xml” 做日志的正确的水平。 我希望这可以帮助任何人!