无法从java示例生成lttng跟踪

无法从java示例生成lttng跟踪,java,lttng,Java,Lttng,我正在执行java示例以登录Lttng跟踪会话。为此,我使用lttng ust jul&java日志库 我遵循了这里给出的所有步骤: 但是仍然lttng视图不输出任何内容。。表示在会话文件中没有跟踪到任何内容 以下是我遵循的详细步骤及其各自的输出: Test.Java: import java.util.logging.Logger; import java.util.logging.Level; import org.lttng.ust.agent.LTTngAgent; public cl

我正在执行java示例以登录Lttng跟踪会话。为此,我使用lttng ust jul&java日志库

我遵循了这里给出的所有步骤: 但是仍然lttng视图不输出任何内容。。表示在会话文件中没有跟踪到任何内容

以下是我遵循的详细步骤及其各自的输出:

Test.Java:

import java.util.logging.Logger;
import java.util.logging.Level;
import org.lttng.ust.agent.LTTngAgent;

public class Test
{
    private static final int answer = 42;

    public static void main(String[] argv) throws Exception
    {
        // create a logger
        Logger logger = Logger.getLogger("jello");

        // call this as soon as possible (before logging)
        LTTngAgent lttngAgent = LTTngAgent.getLTTngAgent();

        logger.setLevel(Level.FINEST);

        // log at will!
        logger.info("some info");
        logger.warning("some warning");
        Thread.sleep(500);
        logger.finer("finer information; the answer is " + answer);
        Thread.sleep(123);
        logger.severe("error!");

        // not mandatory, but cleaner
        lttngAgent.dispose();
    }
}
命令:

lttng创建新闻会话

Session newSession created.
Traces will be written in /home/XXX/lttng-traces/newSession-20160308-005717
lttng启用事件-j-a

All JUL events are enabled in channel channel0
lttng启动

Tracing started for session newSession
javac-cp/usr/share/java/liblttng-ust-agent.jar Test.java

java-cp/usr/share/java/liblttng-ust-agent.jar:。试验

Mar 08, 2016 12:58:54 AM Test main
INFO: some info
Mar 08, 2016 12:58:54 AM Test main
WARNING: some warning
Mar 08, 2016 12:58:55 AM Test main
SEVERE: error!
lttng停止

Waiting for data availability.
Tracing stopped for session newSession
lttng视图

Trace directory: /home/XXX/lttng-traces/newSession-20160308-005717
“lttng view”命令所需的输出应类似于

[22:46:14.940125765] (+0.000004944) XXX : { cpu_id = 8 }, { my_string_field = "some info" }
[22:46:14.940131743] (+0.000005978) XXX : { cpu_id = 8 }, { my_string_field = "some warning" }
...
我也从root用户那里尝试过。。因此,可以排除用户无权写入文件的可能性

<>也可以,C++样本运行良好,样本可以跟踪数据。因此,我们甚至可以排除lttng配置不正确的可能性

Machine Configuration:
Ubuntu 15.04
lttng version - 2.7

如何使用jul进一步调试此问题?

要稍微调试此问题,可以做的一件事是在一次
Thread.sleep()
调用期间发出
lttng list-j
命令,并可能稍微延长其持续时间。您注册的“果冻”记录器应显示在列表中。如果不是,那么您就知道问题可能出在Java代理上,而不是UST方面

我还建议看一下LTTng UST的版本。对Java代理进行了大量的修改。以前的版本使用奇怪的反射机制来加载JUL和log4j插件,并且在某些错误情况下会自动失败。这可能就是你在这里所经历的

新版本应该与LTTNG2.8一起发布,它引入了一个更加明确的新API。应用程序直接控制日志处理程序,并且应立即报告常见错误(找不到Java类、找不到本机库等)。您可以在更新的API中查看新的API


在所有情况下,请确保使用相同版本的Java agent、lttng ust和lttng工具(2.7或2.8/master),并且系统上不存在其他版本以避免兼容性错误。

调试什么?您没有描述任何实际问题,只是显示了代码以及运行该代码的结果。关于您期望的内容以及实际结果如何与之偏离的描述在哪里?@Mike'Pomax'Kamermans-logger在Java文件中应该跟踪到某个lttng会话跟踪文件。我现在在我的问题中发布了所需的输出。请检查,让我知道,如果仍然有一些问题..它是-请开始你的文章与实际的问题陈述。“我试图让记录器跟踪到lttng会话,但没有看到它记录到我的会话,而是记录了应该显示的信息。具体来说,在以下代码中:…,XYZ行运行时没有错误,但不会导致登录…”等等。请描述问题,不要只转储代码,并假设有足够的信息让人们理解正在发生的事情。lttng list-j:outputs None。我使用的是ppa ie.2.7的最新版本。那么,我现在应该怎么做才能让这一切顺利进行呢?