CPU使用率を10秒ごとにテキストファイルに書き込む方法を探しています。
これを設定するにはどうすればよいですか? Ubuntu12.04を実行しています。
CPU使用率は簡単です:
コマンドラインから:while ( sleep 10 ) ; do cat /proc/loadavg >> mylogfile ; done
Sleepコマンドは10秒間スリープし、その後、戻り値0(成功)で戻ります。私たちはそれを悪用してコンパクトなwhile(true)sleep10を取得します。
/ proc/loadavgには、過去5分間および過去15分間のnowのロード平均が含まれています。 10秒ごとにログを記録している場合は、最初の値のみに関心があります。
またはスクリプト内(bashを使用)。
#!/ bin/sh #すべてのposixシステムに存在することが保証されている/ bin/shの使用。 #シェル固有のパーツをスクリプトに追加する場合これを置き換えるより。 #例: bash固有のものを使用する場合は、次のように変更します。 ##!/ usr/bin/env bash #Shebangがスクリプトの最初の行にあることを確認します(コメントなし)その上!) #trueの場合、10秒間一時停止してから、Mylogfile # while(sleep 10);に情報を追加します。 cat/proc/loadavg >> mylogfileを実行します;完了
ログファイルに追加する情報にcat/proc/meminfoを追加できます。/proc/meminfoは非常に広範囲であり、多くのログを記録します。特定のメモリ情報のみでフィルタリングしたい場合は、それを投稿に追加してください。
その最も単純な形式は、次のようになります。while (sleep 10) ; do cat /proc/loadavg /proc/meminfo >> mylogfile ; done
)。
atop
をデーモンとして実行すると、CPU使用率、プロセスリスト、ディスクI/O、メモリ使用率など、大量のシステム状態データがログに記録されます。次に、atop -r [filename]
を使用してデータをステップスルーできます。