第 19 章 使用 perf 环形缓冲监控性能瓶颈的进程
您可以创建环形缓冲区,它使用 perf 工具获取特定于事件的数据快照,以监控您系统上运行的特定进程或部分性能瓶颈。在这种情况下,perf 仅将数据写入 perf.data 文件,以便在检测到指定事件时进行后续分析。
19.1. 使用 perf 环缓冲缓冲和特定于事件的快照 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
使用 perf 在进程或应用程序中调查性能问题时,在发生特定事件前几小时内可能无法记录数据。在这种情况下,您可以使用 perf record 来创建自定义环形缓冲,该缓冲区在特定事件后拍摄快照。
-overwrite 选项使 perf record 将所有数据存储在可覆盖循环缓冲区中。当缓冲区已满时,perf record 会自动覆盖最旧的记录,因此永远不会被写入 perf.data 文件。
将-- overwrite 和 --switch-output-event 选项一起配置循环缓冲区,记录并持续转储数据,直到它检测到 --switch-output-event 触发器事件。对 perf record 的触发器事件信号发生与用户相关的内容,并将 circular 缓冲区中的数据写入 perf.data 文件。这会收集您感兴趣的特定数据,同时减少运行 perf 进程的开销,方法是不需要写入 perf.data 文件。