0

我在应用程序中使用 Lttng。我启用了重迹线,我发现迹线丢失了。有没有办法知道是否有任何痕迹丢失或有关它的任何信息。是否有任何 API 调用可以了解它们。

谢谢和问候。,KVRanganadh。

4

1 回答 1

0

LTTng 跟踪的两个查看器都应该能够报告跟踪是否丢失了其中的事件。

命令行跟踪读取工具 Babeltrace 在 stderr 上打印丢失的事件。因此,找到这些的快速方法是将标准输出重新路由到其他地方,这样您就只能在控制台中看到丢失的事件,使用如下命令:

babeltrace /path/to/trace > /dev/null

或者,图形查看器 Trace Compass 在其统计视图中显示丢失的事件。

通常,当机器负载过大并且跟踪器无法跟上传入的事件时,会发生丢失事件。为了减少丢失事件的机会,您可以考虑增加子缓冲区的大小和数量(请参阅“lttng”手册页),或者在您的跟踪会话中启用较少的事件(而不是执行 'lttng enable-event ... -a',只启用您需要的事件)。

于 2014-12-09T18:35:40.567 回答