【发布时间】:2014-01-16 21:52:53
【问题描述】:
我刚刚开始探索使用 LTTng 来诊断网络性能问题,它看起来是一个很好的工具。我知道我可以使用 lttng list -k 获得可以捕获的事件列表,但我找不到任何关于事件含义的文档。
例如,因为我对应用程序的网络性能感兴趣,所以看起来我对事件感兴趣:
net_dev_xmit (loglevel: TRACE_EMERG (0)) (type: tracepoint)
net_dev_queue (loglevel: TRACE_EMERG (0)) (type: tracepoint)
netif_receive_skb (loglevel: TRACE_EMERG (0)) (type: tracepoint)
netif_rx (loglevel: TRACE_EMERG (0)) (type: tracepoint)
我几乎可以直观地看出 net_dev_xmit 和 net_dev_queue 之间的区别是什么,但是 netif_recieve_skb 是什么意思呢?
这是使用 Ubuntu 12.04 LTS。
如果事实证明该文档只是内核源代码,那么就这样吧——但我不想深入研究它,如果它的参考在某处并且我错过了它。
【问题讨论】:
-
这里的文档恐怕只有源代码了。内核开发人员是那些添加跟踪点的人,他们并不完全是那种编写漂亮的明显文档的人(除了 Documentation/ 中的一些宝石)。添加相关跟踪点的提交消息可能会解释为什么它有用或必要(那么 git blame 将成为您的朋友)。
标签: lttng