top または htop を使用してフィルタリングされた時系列を収集する方法

top または htop を使用してフィルタリングされた時系列を収集する方法

私の目標は、簡単に分析できる時系列で特定のコマンドのリソース使用量を追跡することです。以下は、node3つのバッチのすべてのコマンドを追跡する例です。

top -b -n3 | grep node                
 222097 root      20   0  954444 672616  32452 S 105.9   4.1  46:23.02 node
 221922 root      20   0  305792  51408  23900 S   0.0   0.3   0:00.58 node
 222113 root      20   0  554304 343092  23736 S   0.0   2.1   0:26.25 node
 222097 root      20   0  954444 672616  32452 S 159.8   4.1  46:27.83 node
 221922 root      20   0  305792  51408  23900 S   0.0   0.3   0:00.58 node
 222113 root      20   0  554304 343092  23736 S   0.0   2.1   0:26.25 node
 222097 root      20   0  954444 672616  32452 S 167.1   4.1  46:32.86 node
 221922 root      20   0  305792  51408  23900 S   0.0   0.3   0:00.58 node
 222113 root      20   0  554304 343092  23736 S   0.0   2.1   0:26.25 node

問題は、バッチを区別する簡単な方法がないことです。この簡単な例ではブレークポイントを簡単に見ることができますが、より長いシリーズまたはより多くのプロセスがあるシリーズではブレークポイントを確認することは困難です。

少し重いスクリプティングを使えば素晴らしい仕事をすることができますが、私は単純にしたいと思いました。希望の出力:

 221922 root      20   0  305792  51408  23900 S   0.0   0.3   0:00.58 node
 222113 root      20   0  554304 343092  23736 S   0.0   2.1   0:26.25 node
------------------------------------------------------------------------------
 222097 root      20   0  954444 672616  32452 S 159.8   4.1  46:27.83 node
 221922 root      20   0  305792  51408  23900 S   0.0   0.3   0:00.58 node
 222113 root      20   0  554304 343092  23736 S   0.0   2.1   0:26.25 node
------------------------------------------------------------------------------
 222097 root      20   0  954444 672616  32452 S 167.1   4.1  46:32.86 node
 221922 root      20   0  305792  51408  23900 S   0.0   0.3   0:00.58 node
 222113 root      20   0  554304 343092  23736 S   0.0   2.1   0:26.25 node

ベストアンサー1

この不完全なbashスクリプトは、この記事を書くよりも時間がかかりませんでした。

# /bin/bash

echo "Monitor process $1"
echo " for $2 batches"


for i in $(seq 1 $2); do 
    top -b -n 1 | grep $1
    echo "-------------------------------------------------";
    sleep 1
done

おすすめ記事