如何查看来自我的Opendaylight项目的调试日志

时间:2018-01-03 16:33:41

标签: java debugging opendaylight

我使用MD-SAL Startup Archetype创建了一个项目,并添加了一些调试日志来检查代码。该项目已成功编译和安装。但是在运行karaf和log:display之后,我似乎无法找到我输入的任何日志。 我是使用ODL的新手,可能缺少一些东西。有人可以帮助我如何搜索我需要的日志吗? 例如,我读到某个地方我们可以为特定的包做setLogLevelorg.opendaylight.bundlename TRACE or DEBUG但在我的情况下,启动原型创建了一个文件夹,其中包含其他几个来自api,features,karaf到impl文件夹的文件夹。我主要在impl文件夹中添加了代码并创建了不同的类,这些类中的每一个都有我想检查的调试日志,所以如何在这种情况下指定包名称和路径?我应该在哪里使用该代码?因为在karaf控制台中我只能log:list, log:display DEBUG等。 对不起,如果这是一个令人困惑的问题,我将不胜感激。

谢谢!

2 个答案:

答案 0 :(得分:3)

它不是您使用set log level命令指定的包名称,而是完全限定的Java包或类名称。您也可以直接编辑 etc / org.ops4j.pax.logging.cfg 来设置包/类的日志级别,例如:

log4j.logger.org.opendaylight.mypackage=DEBUG

在代码中,您可以为每个类创建Logger实例,例如:

package org.opendaylight.mypackage;

public class MyClass {
    private static final Logger LOG = LoggerFactory.getLogger(MyClass.class);
    ...
}

日志输出转到 data / log / karaf.log

答案 1 :(得分:2)

您可以在karaf CLI中执行以下命令。

  1. 设置特定包的日志级别。

    log:set debug <your package name>
    
  2. 查看日志

    log:tail