【发布时间】:2019-04-29 18:43:47
【问题描述】:
我想通过perf top 捕获一些间歇性性能问题。问题是间歇性的,所以我想编写一个脚本,在问题发生时运行perf top,以便我可以保存数据并在以后查看。
我似乎无法弄清楚如何让perf top 将其输出放入文件中,它似乎需要以交互方式运行。到目前为止,这是我尝试过的:
# timeout 10 perf top --stdio -E 20 > 'perf-top'
这不会杀死性能,只是让它永远在后台运行,直到我创建另一个控制台会话,找到 PID 并杀死它。
# timeout --signal=9 10 perf top --stdio -E 20 > 'perf-top'
这会在预期的 10 秒内杀死 perf,但输出不会写入我指定的文件。
是否有一些特殊的方式需要运行此命令?如果我从交互式 ssh 会话运行它,它可以工作,但我真的希望能够从脚本运行它。我正在尝试将其与其他一些指标收集程序一起放入 ansible 任务中。
【问题讨论】: