问题标签 [babeltrace]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
196 浏览

centos7 - 使用 rpms 在 CentOS 7.2 上使用 Babeltrace 构建 Perf

我希望将 CTF 转换与 perf 一起使用。从周围稀缺的信息中,我发现我需要重新编译 perf。

我已经安装了epel存储库并使用yum安装

对于运行时间以及

用于编译。

我克隆了 git.kernel.org(作为替代方案,我也尝试了 github.com/torvalds)并使用了

使用 babeltrace 支持构建 perf。但是,我收到错误:

所以我尝试添加LIBBABELTRACE_DIR/usr但这也失败了。检查 Makefile.conf,我发现配置在错误的位置:它被设置为使用本地编译的 babeltrace 以及定义明确的子目录(include 和 lib),但是从 rpm 安装时不使用这些(yum )。rpm 将它们放在 /usr/include/babeltrace 和 /usr/lib64 中。

修补 Makefile 也无济于事。

所以,除了被迫使用本地编译的 babeltrace,我还有什么选择?

这是针对 26 个节点的集群,我真的更喜欢简单的“yum 安装”,因为这可以在节点损坏时简化重新暂存节点(我们对它们进行研究并定期损坏东西),并且不需要设置特定的环境。

附录:

我尝试从以下位置编译 babeltrace https://github.com/efficios/babeltrace.git:这也失败并出现错误:

而且,当然,popt.h 没有定义POPT_ARG_LONGLONG.

提前致谢。

0 投票
0 回答
156 浏览

lttng - Babeltrace 连接被拒绝

我正在使用 LTTng 进行实时调试。我正在调试的目标机器只连接到另一台机器(比如 M1),而另一台机器又连接到外部世界。我已经在 M1 上启动了 lttng-relayd。M1 和我的开发主机可以互相 ping 通。在目标机器上,我创建了一个 lttng 会话:

我启用了过滤器并开始了会话。

现在在我的开发主机(或任何其他机器)上运行时

我收到以下错误:

我用谷歌搜索了它,但找不到太多帮助。我的 babeltrace 版本是 1.4.0

0 投票
0 回答
236 浏览

lttng - 如何找出谁在注册 lttng 跟踪点探测?

我在运行我的应用程序时收到如下错误:

LTTng-UST:注册跟踪点探测时出错 (-17)。不允许重复注册具有相同名称的跟踪点探测器。

基于错误,看起来多个组件正在尝试注册相同的跟踪点探测器。我试图找出哪些是那些组件。有没有办法查看谁都在注册跟踪点探针?

谢谢,凯拉斯

0 投票
1 回答
154 浏览

python - 使用 python 绑定在“Trace Compass”中生成表现良好的跟踪

我正在使用 babeltrace python 绑定从我拥有的一些数据中创建一个跟踪文件:数据表示系统执行信息,因此有正在创建和运行的任务。

我可以在 Trace Compass 中显示跟踪文件:直方图面板中会弹出信息。

我希望它在控制流面板中正确显示。

我转储了一个用 lttng 获取的跟踪文件,我可以看到线程信息在这些标签内

Trace Compass 不显示这些行,另一方面,“控制流”面板显示系统中的所有线程

示例行:

我试图在我的 python 中创建一个类似的 stream_class,但是你看到 cpu_id 是空的,这些行显示在 Trace compass 但控制流面板中没有弹出任何内容

  • 如何设置 cpu_id?
  • 我是否走上了让它运行的好道路?
0 投票
0 回答
252 浏览

c - Babeltrace 2.0 C API 使用

我使用 lttng 来跟踪程序的执行并计算某些函数的平均执行时间。由于生成了数百万个跟踪,babeltrace 的 Python 绑定导致分析它们的速度非常慢。

我想知道是否可以在 C 程序上使用 libbabeltrace 库读取跟踪以进行更快的分析,因为我无法找到有关 API 及其用法的大量文档。我有兴趣提取每个事件的时间戳和两个字段。我使用 Babeltrace 2.0.0-pre4。

此外,我对 libbabeltrace 的发现是http://mcs.une.edu.au/doc/libbabeltrace/API.txt

考虑到这一点,我编写了一个简单的程序来开始并创建跟踪的上下文:

但是,我收到以下错误:

有人可以帮我弄这个吗?

提前致谢

0 投票
0 回答
109 浏览

python - 是否可以使用 babeltrace Python API(或任何其他软件工具)来读取“实时”LTTng 跟踪?

我正在使用 LTTng 来跟踪应用程序。要读取 LTTng 跟踪数据,我使用的是 Python API babeltrace

我打开 LTTng 跟踪,跟踪数据存储在一个文件夹中。我使用 Python API babeltrace 来读取记录的跟踪数据。现在,是否可以在live模式下读取 LTTng 跟踪数据?使用 babeltrace 或任何其他软件工具(Python 绑定)。

0 投票
0 回答
18 浏览

c - 有没有办法在 c api 中使用 babeltrace2-sink.text.pretty 组件

我想使用 babeltrace c api 打印出 lttng 跟踪的格式化文本。有没有办法使用已经存在的组件babeltrace2-sink.text.pretty

有人可以帮我弄这个吗?

提前致谢

0 投票
1 回答
63 浏览

c# - 如何在使用 lttng 跟踪 EventSources 期间获取 ThreadId

使用:Linux/lttng/babeltrace 2 上的 .NET Core 6

我使用 lttng 来收集有关在我的程序运行时调用的函数的信息。我想了解调用了哪个线程函数。

我运行这个脚本

并得到这样的痕迹

首先我认为 cpu_id 表示线程号,但是当我在更大的程序上运行时,我得到了跟踪,其中 Enter 和 Leave 具有不同的 cpu_id,这就是为什么我正在寻找在跟踪中获取 threadIds 的方法

0 投票
1 回答
75 浏览

python - 从生成器中克隆 Babeltrace 事件以进行随机访问遍历

我正在尝试使用 Babeltrace 1 检查 LTTNG 事件日志中的某个事件链。使用 Babeltrace 集合加载 LTTNG 日志:

我正在寻找的特殊事件与正在发生的正常事件几乎没有区别,除了链已经开始后还有一些额外的事件。所以我需要寻找这些特殊事件,然后向后搜索真正的开始。

问题是 Babeltrace 只让我在事件列表中前进。简单的解决方案似乎是在我自己的列表中创建事件的克隆:

这样做的问题是列表中的所有事件现在都引用了最后一个事件。这表明 Babeltrace 一遍又一遍地重用同一个对象,并且生成器只返回对该单个对象的引用。

我试过使用copy.copy

这没有帮助,而且copy.deepcopy根本不起作用。我也试过itertools.tee

但这会返回一个_tee不能用作正确事件对象的对象列表。

有没有办法使用 Babeltrace 事件集合生成器向后搜索?或者有没有办法正确克隆事件对象以创建我自己的列表?