Windowsサーバーには(Windows10などのクライアントOSにもありますが)、パフォーマンスカウンタという機能があり、これを設定することでOS稼働中の色々な値を定期的に記録することができます。
サーバー運用において、ハードウェアリソースの利用状態等を定期的に取得したものをサーバーメトリクスと言い、障害発生の予兆やサーバーサイジングの根拠としたりします。
取得した記録の出力先に、ファイルと SQL Serverを選択できますが、ここではオーソドックスにファイルへ出力してみます。
これは取得したデータは数字や文字の羅列であり、人間が認識するためにはグラフ化するなど何かしらの加工が必要になるからです。
CSV形式のファイルにすれば Excelでグラフ化ができますね。
以下 Windows Server 2022で設定をしていきます。
Windows Server 2022のインストールについては、「Windows Server 2022 インストール」に書いています。
ここでは CPU使用率・Cドライブ使用量を1分単位に取得して CSVファイルに記録してみます。
[スタート]-[Windows管理ツール]-[パフォーマンスモニター]を選択します。
パフォーマンスモニターのウィンドウが開くので、左ペインのツリーで[データコレクターセット]-[ユーザー定義]を選択します。
[ユーザー定義]で右クリックするとメニューが出るので、[新規作成]-[データコレクターセット]を選択します。
名前は任意でOKです。
[手動で作成する(詳細)]を選択して、次へを押します。
[データログを作成する]を選択し、[パフォーマンスカウンター]にチェックして、次へを押します。
追加を押します。
取得できる値が左上の枠の中にツリー構造で出てきますので、
[Processor]-[Processor Time]と選択、[選択したオブジェクトのインスタンス]で[_Total]を選択、追加を押します。
同様に
[LogicalDisk]-[%Free Space]-[C:]を選択、追加を押します。
[追加されたカウンター]枠に選択したものが一通り入っていることを確認し、OKを押します。
[サンプルの間隔]を「1」に、[単位]を「分」にして、次へを押します。
このまま次へを押します。
実際には「C:¥PerfLogs¥Admin¥テストのデータコレクターセット」フォルダになります。
[このデータコレクターセットのプロパティを開く]を選択し、完了を押します。
[全般]タブはこのまま。
できあがりのファイルはファイル名で管理したほうが楽なので、[ディレクトリ]タブでは[サブディレクトリ][サブディレクトリ名のフォーマット]の両方を空に、[コンピューター名を含むプレフィックスサブディレクトリ]のチェックを外して下さい。
[セキュリティ]タブはこのまま。
[スケジュール]タブはこのまま。
[停止条件]タブでは全てのチェックを外して下さい。
[タスク]タブはこのまま。
OKを押します。
左の枠のツリーに[テストのデータコレクターセット]ができていますので、これを選択します。
右側の枠に[DataCollector01]が現れますので、これを右クリックしてメニューを開き、[プロパティ]を選択します。
[パフォーマンスカウンター]タブで、[ログフォーマット]に[カンマ区切り]を選択します。。
[ファイル]タブでは、[ファイル名のフォーマット]を「¥-yyyyMMdd¥-HHmmss」とします。
OKを押します。
設定はこれで完了です。
「テストのデータコレクターセット」を起動時に開始するようにします。
これには WindowsOSのタスク機能を使います。
[スタート]-[Windows管理ツール]-[タスクスケジューラ」を選択します。
[タスクスケジューラ]画面が開きますので、右側にある[基本タスクの作成]をクリックします。
[名前]は任意で構いません。
次へを押します。
[コンピューターの起動時]を選択し、次へを押します。
[プログラムの開始]を選択し、次へを押します。
[プログラム/スクリプト]に「cmd.exe」、
[引数の追加]に「/c "logman start テストのデータコレクターセット"」と設定し、
次へを押します。
[[完了]をクリックした時に、このタスクの[プロパティ]ダイアログを開く]をチェックし、完了を押します。
ユーザーまたはグループの変更を押します。
[選択するオブジェクト名を入力して下さい]に「SYSTEM」と入れOKを押します。
これでパスワードが必要ないシステムユーザーで実行してくれます。
OKを押します。
タスクができました。
Windows Server 2022を再起動して下さい。
再起動後に自動で「テストのデータコレクターセット」が開始され、CSVファイルができています。
中身はこんな感じです。
時刻・Cドライブの空き率(%)・CPU使用率(%)がカンマ区切りで記録されています。
"(PDH-CSV 4.0) (","\\WIN2022\LogicalDisk(C:)\% Free Space","\\WIN2022\Processor(_Total)\% Processor Time"
"06/16/2022 16:50:44.429","66.272565678968049951"," "
"06/16/2022 16:51:43.919","66.272565678968049951","2.0051941644908533036"
"06/16/2022 16:52:43.904","66.272565678968049951","1.623650767283912888"
"06/16/2022 16:53:43.902","66.272565678968049951","1.2650490956787829866"
"06/16/2022 16:54:43.888","66.272565678968049951","0.44576757359692242844"
"06/16/2022 16:55:43.906","66.272565678968049951","0.20047781125668295843"
"06/16/2022 16:56:43.875","66.270934916260344494","1.0349171555255387567"
"06/16/2022 16:57:43.887","66.270934916260344494","15.895743584946341542"
"06/16/2022 16:58:43.897","66.270934916260344494","0.27694759085944431476"
これで Excelに持ってくれば綺麗なグラフを作ることができると思います。
パフォーマンスカウンタで取得できる値は色々ありますので、Windowsサーバーの用途に合わせて適宜取得してみて下さい。
コレは良い本でした。
詳解システム・パフォーマンス [ Brendan Gregg ] 価格:5,940円 |