Java 如何查看Opendaylight项目中的调试日志
我使用MD-SAL启动原型创建了一个项目,并添加了一些调试日志来检查代码。项目已成功编译并安装。但是在运行karaf和log:display之后,我似乎找不到我输入的任何日志。 我刚刚使用ODL,可能遗漏了一些东西。有人能帮我搜索我需要的日志吗? 例如,我在某个地方读到,我们可以对特定的bundle进行Java 如何查看Opendaylight项目中的调试日志,java,debugging,opendaylight,Java,Debugging,Opendaylight,我使用MD-SAL启动原型创建了一个项目,并添加了一些调试日志来检查代码。项目已成功编译并安装。但是在运行karaf和log:display之后,我似乎找不到我输入的任何日志。 我刚刚使用ODL,可能遗漏了一些东西。有人能帮我搜索我需要的日志吗? 例如,我在某个地方读到,我们可以对特定的bundle进行setLogLevelorg.opendaylight.bundlename跟踪或调试,但在我的例子中,启动原型创建了一个包含其他几个api、features、karaf和impl文件夹的文件夹。
setLogLevelorg.opendaylight.bundlename跟踪或调试
,但在我的例子中,启动原型创建了一个包含其他几个api、features、karaf和impl文件夹的文件夹。我主要在impl文件夹中添加了代码并创建了不同的类,这些类中的每个类都有我想要检查的调试日志,那么在这种情况下如何指定包名称和路径呢?我应该在哪里使用该代码?因为在karaf控制台中,我只能执行log:list、log:display DEBUG
等操作。
如果这是一个令人困惑的问题,我很抱歉,但如果有任何帮助,我将不胜感激
谢谢 它不是使用set log level命令指定的捆绑包名称,而是完全限定的Java包或类名。您也可以直接编辑etc/org.ops4j.pax.logging.cfg来设置包/类的日志级别,例如: package org.opendaylight.mypackage; public class MyClass { private static final Logger LOG = LoggerFactory.getLogger(MyClass.class); ... }
log4j.logger.org.opendaylight.mypackage=DEBUG
在代码中,可以为每个类创建记录器实例,例如:
package org.opendaylight.mypackage;
public class MyClass {
private static final Logger LOG = LoggerFactory.getLogger(MyClass.class);
...
}
包org.opendaylight.mypackage;
公共类MyClass{
私有静态最终记录器LOG=LoggerFactory.getLogger(MyClass.class);
...
}
日志输出转到data/Log/karaf.Log。您可以从karaf CLI执行以下命令
log:set debug <your package name>