web-dev-qa-db-ja.com

ディスク用のWindowsコマンドラインツールIO監視

いくつかのイベントが発生したときにWindows2003でディスクIO統計を抽出することを検討しています。たとえば、CPUリソースを長時間待機している長いフルGCが発生します。ProcessExplorerで次のことが可能になることを読みました。これを行うには、GUIベースのアプリケーションであるため、問題がいつ再び発生するかを知っている必要があり、サーバーに既にログインしている必要があります。ただし、いつ発生するかわからないため、次のことを行う必要があります。最後のGCにx秒以上かかったときに、ディスクIO統計を出力するスクリプトを記述します。

そのプログラムを呼び出すだけで結果を出力できるような、そのようなコマンドラインツールがすでに利用可能になっていますか?

1
louis xie

収集しようとしているデータの正確な種類はわかりませんが、すべてのperfmonカウンターデータは、Server 2003でも typeperfコマンドラインユーティリティ から入手できます。

サンプル使用

使用可能なカウンターのリスト(インスタンスなし):

typeperf -q

10秒間の合計CPU使用率を1回サンプリングし、以下を返します。

typeperf "Processor(_Total)\% Processor Time" -si 10 -sc 1

一般に、perfmon GUIを介して使用できるすべてのカウンターは、typeperfを介して同じ名前で使用することもできます。非MUIシステムでは名前 ローカライズされる場合があります であることに注意してください。

1
the-wabbit

前の答えは良いですが、その例はディスクIOではなくプロセッサ用です。これがそのためのものです:

typeperf -si 2 "\LogicalDisk(_Total)\Disk Bytes/sec"
1
Steven Penny