如何使用slf4j记录嵌入的orientdb数据库

时间:2014-10-22 11:45:22

标签: logging slf4j orientdb

我使用嵌入式数据库(plocal)启动我的应用程序。 OrientDB版本是2.0 M2。

ODatabasePoolBase<ODatabaseDocumentTx> pool = new ODatabaseDocumentPool("plocal:" + database, getUsername(), getPassword());

在我的应用程序中,我使用slf4j和“Log4j 2 SLF4J Binding”进行记录。

我在日志文件中看到了我的应用程序生成的任何日志消息。 现在我想在同一个日志文件中获取orientdb服务器日志消息以进行调试。

到目前为止我尝试过的(失败的):

  • 将jul-to-slf4j-1.7.7.jar添加到类路径并调用 SLF4JBridgeHandler.removeHandlersForRootLogger(); SLF4JBridgeHandler.install(); 在启动时。

2 个答案:

答案 0 :(得分:1)

可以通过将jul-to-slf4j添加到classpath:

来实现日志记录
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>jul-to-slf4j</artifactId>
    </dependency>

将此添加到您的初始化代码

    SLF4JBridgeHandler.removeHandlersForRootLogger();
    SLF4JBridgeHandler.install();
    java.util.logging.Logger logger = java.util.logging.Logger.getLogger("com.orientechnologies");
    logger.setLevel(Level.ALL);

现在,您可以在log4j配置中设置单独的日志级别:

    <Logger name="com.orientechnologies" level="INFO" />

答案 1 :(得分:0)

OrientDB Server使用自己的LogFormatter。要通过您的应用程序调用使用它:

OLogManager.installCustomFormatter();

LogFormatter由Server自动安装。要将其停用,请将orientdb.installCustomFormatter设置定义为false。例如:

java ... -Dorientdb.installCustomFormatter=false=false ...

有关更多信息,请查看官方文档: http://orientdb.com/docs/2.0/orientdb.wiki/Logging.html