Windows TIPS
[Management]
TIPS   Windows TIPS TOPへ
Windows TIPS全リストへ
内容別分類一覧へ

収集したパフォーマンス・カウンタ・ログをrelogコマンドで再編集する

解説をスキップして操作方法を読む

デジタルアドバンテージ 打越 浩幸
2009/12/11
対象OS
Windows XP
Windows Server 2003
Windows Vista
Windows Server 2008
Windows 7
Windows Server 2008 R2
パフォーマンス・モニタのスケジュール機能で収集したデータ・ファイルを編集し、再サンプリングするにはrelogコマンドを利用する。
relogを使うと、複数のファイルをまとめたり、特定の期間やカウンタ値だけを抜き出したり、フォーマットの変換ができる。

解説

 TIPS「typeperfコマンドでシステムのパフォーマンス・カウンタのデータを収集する」や「パフォーマンス・カウンタのデータをスケジュールに従って収集する(Windows XP/Windows Server 2003編)」「パフォーマンス・カウンタのデータをスケジュールに従って収集する(Windows Vista/Windows 7/Windows Server 2008編)」などでは、システムのパフォーマンス・カウンタの値を自動的に収集する方法を紹介した。

 これらのツールで収集されたデータは、設定したスケジュールのプロパティに応じて、複数のファイルに分割されているのが普通である(開始/停止を行うごとに、別ファイルに保存されるため)。また、1つファイルに複数のシステムのカウンタ値が混在していることもあるだろうし、データのサンプリング期間も統一されていないことがあるだろう。

 このような場合は、集計処理の前にデータ・ファイルの編集を行って、必要なデータだけを抜き出して1つのファイルにまとめたり、逆に複数のファイルを結合して1つにまとめたりできると便利である。注目したいデータだけを抜き出して不要なデータを捨ててしまえば、保存に必要なファイル・サイズも少なくできる。

 このような用途には、relog.exeコマンドを利用するとよい。relogコマンドでは、入力されたデータ・ファイルから、指定されたカウンタ値や特定の期間のカウンタ値だけを抜き出すことができる。ソース・ファイルを複数指定できるので、これを使えば、データの結合も可能である。本TIPSではrelogコマンドの使い方について解説する。

操作方法

relogコマンドの使い方

 「relog /?」とすると使い方が表示される。

C:\PerfLogData>relog /? …ヘルプの表示

Microsoft (R) Relog.exe (5.1.2600.0) …これはWindows XP Professionalの例
(C) Microsoft Corporation. All rights reserved.

Relog は、サンプリング レートの変更、ファイル形式の変更、またはその両方によって、既存のパフォーマンス ログのデータから
新しいパフォーマンス ログを作成します。Windows NT 4.0 圧縮ログを含むすべてのパフォーマンス ログの形式はサポートされます


使い方:
relog <ファイル名 [ファイル名 ...]> [オプション]

パラメータ:
  <ファイル名 [ファイル名 ...]> ログを再記録するためのパフォーマンス ファイルです。

オプション:
  -?                            状況に応じたヘルプを表示します。
  -a                            出力を既存のバイナリ ファイルに追加します。
  -c <パス [パス ...]>          入力ログからフィルタしようとするカウンタです。
  -cf <ファイル名>              入力ログからフィルタするパフォーマンス カウンタを一覧表示したファイルです。既定値は、元
                                のログ ファイルのすべてのカウンタです。
  -f <CSV|TSV|BIN|SQL>          出力ファイルの形式です。
(以下省略)

 基本的には、最初のパラメータとしてパフォーマンス・カウンタのデータを記録したデータ・ファイル名を指定し、その後に、再サンプリングするカウンタや抽出期間、出力フォーマット、出力ファイル名などのオプションを指定する。ソース・ファイルはバイナリ・フォーマット(.blgファイル)の場合に限り複数指定可能である(ワイルドカードも使用できる。CSV/TSV形式の場合は1ファイルのみ)。

収集したデータの確認

 relogにソース・ファイル名だけを指定して実行すると、記録されているデータの期間と件数が確認できる。

C:\PerfLogData>relog samplingdata.blg …データの確認


入力
----------------
ファイル:
     samplingdata.blg (バイナリ) …入力ファイル

開始:           2009/10/16 0:43:53 …最初のデータの時刻
終了:           2009/10/18 23:25:23 …最後のデータの時刻
サンプル:       16967 …総サンプリング・データ数

コマンドは、正しく完了しました。

 この機能を使ってまず対象のデータを確認し、その後、再サンプリングによる出力を行うとよいだろう。

データの出力(再サンプリングによる出力)

 データを出力させるには「-o <ファイル名>」を指定する。ファイル名を省略すると、「出力.blg」や「output.blg」などというファイルに出力される(コンソールが日本語モードになっている場合は前者、英語モードだと後者の名前で出力される)。入力ファイルが複数あると、それらすべてのデータが結合され、1つのファイルに出力される。出力ファイルはデフォルトではバイナリ・ファイル(.blgファイル)となるが、「-f csv」のように指定すると、CSV形式でも出力できる。また「-t <数字>」オプションを付けると再サンプリングの割合を変更できる。例えば「-t 4」とすると、4つに1つしか出力されなくなるので(データ数が4分の1になるので)、元ファイルが15秒おきにサンプリングしたデータなら、1分おきのデータになる。

C:\PerfLogData>relog Network* -o newdata …ファイルの結合例

入力
----------------
ファイル:
     Network Perf_000001.blg (バイナリ) …入力ファイル1
     Network Perf_000002.blg (バイナリ) …入力ファイル2
     Network Perf_000003.blg (バイナリ) …入力ファイル3

開始:           2009/11/27 14:44:45
終了:           2009/11/27 15:56:49
サンプル:       286

出力
----------------
ファイル:     newdata.blg …出力ファイル

開始:           2009/11/27 14:44:45
終了:           2009/11/27 15:56:49
サンプル:       285 …総サンプル数

コマンドは、正しく完了しました。

期間を指定しての抽出

 特定の期間のデータだけを抜き出すには、「-b <開始日時>」「-e <終了日時>」で期間を限定すればよい。

※relog.exeのバージョンに注意

Windows XP Professionalに付属しているrelog.exe(バージョン5.1.2600.0。バージョンは「relog /?」で確認できる)は、日本語モードのコンソールだとこの日付指定がうまく動作しないようなので、注意していただきたい(英語モードだと日付指定が異なるので、それについても注意のこと)。日付指定を利用する場合は、Windows Server 2003以降のOS上で実行するのがよいだろう。


※2009/10/17のデータだけを抽出する例
C:\PerfLogData>relog samplingdata.blg -b 2009/10/17 -e 2009/10/18 -o 20091017

入力
----------------
ファイル:
     samplingdata.blg (バイナリ) …入力ファイル

開始:           2009/10/16 0:43:53 …入力ファイルの概要
終了:           2009/10/18 23:25:23
サンプル:       16967

100.00%

出力
----------------
ファイル:     20091017.blg …出力ファイル

開始:           2009/10/17 0:00:00 …再サンプリング期間
終了:           2009/10/18 0:00:00
サンプル:       5760 …総サンプル数

コマンドは、正しく完了しました。

特定のカウンタ値の抜き出し

 特定のカウンタ値のみを抜き出すには、-cオプションに続けてカウンタ値を指定すればよい。カウンタ値が複数ある場合は-cfオプションでカウンタ名のリストのファイルを指定する。この指定方法はtypeperfコマンドのパラメータと同じなので、具体的な指定方法についてはTIPS「typeperfコマンドでシステムのパフォーマンス・カウンタのデータを収集する」を参照していただきたい。End of Article

※特定のカウンタのみを抽出する例
C:\PerfLogData>relog samplingdata.blg -c "\Processor(*)\*" -o

入力
----------------
ファイル:
     samplingdata.blg (バイナリ) …入力ファイル

開始:           2009/10/16 0:43:53
終了:           2009/10/18 23:25:23
サンプル:       16967

出力
----------------
ファイル:     出力.blg …出力ファイル

開始:           2009/10/16 0:43:53
終了:           2009/10/18 23:25:23
サンプル:       1001

コマンドは、正しく完了しました。

「Windows TIPS」


Windows Server Insider フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Windows Server Insider 記事ランキング

本日 月間