概述
Tracepoint
是一种在 Linux 内核中插入的静态探测点,用于跟踪和调试内核行为。它允许开发者在特定位置插入代码,收集运行时信息,而不会显著影响性能。
原理
特性
- 静态探测点: 在内核预定义, 自定义的函数可以插入在这里
- 动态启用: 默认不启用, 减少性能开销
- 低开销
Tracepoint
是一种在 Linux 内核中插入的静态探测点,用于跟踪和调试内核行为。它允许开发者在特定位置插入代码,收集运行时信息,而不会显著影响性能。
bpftrace是一个基于eBPF的高级跟踪工具, 用于动态追踪Linux系统的行为和性能.
用于可以用简单的一行命令或者简洁的脚本,实现监控分析内核和用户空间程序的运行,而无需修改或者重新编译
sudo apt-get install bpftrace |
-x 扩展信息
-m 使用MB单位
命令后跟数字x y 每x秒刷新, 显示y次
#每隔 2 秒显示一次详细的设备统计信息,共显示 5 次。 |
-c 显示cpu相关的信息
-p 指定特定设备信息,比如-p sda只展示sda下的\
sda
表示第一个SCSI磁盘设备。确保已安装 perf
和 FlameGraph
工具。
FlameGraph
通过以下命令下载
git clone https://github.com/brendangregg/FlameGraph.git |
perf
是一个强大的 Linux 性能分析工具,它可以用来收集和分析性能数据。
perf的命令有很多,下文将就其中常用的几条进行阐述
|