単一プロセスのCPU使用率をcsv形式でエクスポートする

単一プロセスのCPU使用率をcsv形式でエクスポートする

時間の経過に伴う単一プロセスの CPU 使用率に関するデータを収集したいと考えています。データの収集 (例: pidstat を使用) を while ループで 1 秒間スリープさせてラップしようとしましたが、うまくいきませんでした。collectl も使用してみましたが、単一プロセスのデータを収集するオプションを見つけることができませんでした (--procfilter p を試しましたが、出力は信頼できませんでした)。

時間の経過に伴う単一プロセス (PID を使用) の CPU 使用率を測定し、これらのデータを csv ファイルにダンプできる標準 (オープン ソースの可能性あり) ツールはありますか?

答え1

これはうまくいきます:

#!/bin/bash
真実である一方、
ピッドスタットgrep 1117 >>pidload.csv
睡眠1
終わり

それをシェル スクリプトに記述するだけです。この場合、1117 は追跡するプロセス ID です。chmod +x SCRIPTNAME と実行すれば準備完了です。

特定のデータが必要な場合は、次のように awk で取得できます。

pidstat | grep 1117 | awk '{ print $3, $8 }' >>pidload.csv

関連情報