首页 存档 技术 查看内容

如何选择Linux上的跟踪器

2018-3-30 13:00 |来自: 互联网 347 0

摘要: tracer是一个高级的性能分析和诊断工具,但是不要让这名词唬住你,如果你使用过 strace 和 tcpdump,其实你就已经使用过跟踪器了。系统跟踪器可以获取更多的系统调用和数据包。它们通常能跟踪任意的内核和应用程序。 ...

tracer是一个高级的性能分析和诊断工具,但是不要让这名词唬住你,如果你使用过 strace 和 tcpdump,其实你就已经使用过跟踪器了。系统跟踪器可以获取更多的系统调用和数据包。它们通常能跟踪任意的内核和应用程序。

有太多的 Linux 跟踪器可以选择。每一种都有其官方的(或非官方的)的**的独角兽吉祥物,足够撑起一台"儿童剧"了。

那么我们应该使用哪个跟踪器呢?

我会为两类读者回答这个问题,多数人和性能/内核工程师。过一段时间这些可能会发生变化,我会持续跟进并补充,大概会一年更新一次。

对于多数人

多数人 (开发者,系统管理员,开发管理者,运维人员,评测人员,等等) 不关心系统追踪器的细节。下面是对于追踪器你应该知道和做的:

1. 使用 perf_events 分析 CPU 性能

使用 perf_events 做 CPU 性能分析。性能指标可以使用 flame graph 等工具做可视化。

  1. git clone --depth 1 https://github.com/brendangregg/FlameGraph

  2. perf record -F 99 -a -g -- sleep 30

  3. perf script | ./FlameGraph/stackcollapse-perf.pl | ./FlameGraph/flamegraph.pl

声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

相关分类

返回顶部