動的ファイル名のサポート
実際のファイル名の代わりにファイル名のパターンを指定するには、動的ファイル名のサポートを使用します。
- 正規表現 (推奨)。
- IBM® Tivoli® Universal Agent 動的ファイル名の構文 (非推奨)。
正規表現のファイル名パターン
ファイル名のパターンを指定するために、International Components for Unicode (ICU) 構文に従った正規表現を使用できます (この構文については、ICU 正規表現 を参照してください)。この機能を使用するには、 「詳細なログ・ファイル属性グループ情報」ページで「ファイル名が正規表現に一致する」チェック・ボックスを 選択する必要があります。正規表現のパターンを指定する場合は、 「詳細なログ・ファイル属性グループ情報」ページの「複数のファイルが一致する場合は次のファイルを選択」リストから オプションを選択して、一致する最新のファイルを選択するための ガイドラインを指定する必要があります。
詳細なログ・ファイル属性グループ・プロパティーの構成方法について詳しくは、ログ・ファイルのモニター、ステップ 6 を参照してください。例えば、 以下のファイル名パターンを指定したとします。
d:¥program files¥logs¥tivoli.* このパターンは、d:¥program files¥logs ディレクトリーにあり、 tivoli で始まるファイル名を検索します。正規表現を指定できるのはファイル名の部分だけです。 パス名の部分には指定できません。
動的ファイル名の構文
動的ファイル名の構文を使用すると、一度に 1 つだけのファイルを モニターできます。ファイル・データ・プロバイダーは、指定されたパス・ロケーション内のすべてのファイルを調べて、 定義されたパターンに一致するファイルを探します。ファイル・データ・プロバイダーは、一致するファイル名の中で最も大きい番号を持つものを判別するか、日時値に基づいて、常に最新の一致ファイルをモニターします。モニター対象とするファイルは、 ファイルの作成日時などの基準ではなく、ファイル名によって判別されます。
パターンは、任意の数の可変部分を持つファイル名に対して 指定できます。 例えば Log{###} は、Log010 や Log456 など、可変部分が 1 個所のファイル名の場合に 一致します。可変部分が複数のファイル名の場合、パターン文字は、 ファイル名の任意の部分 (つまり複数の可変部分) で指定できます。例えば、aaa.bbb{???}.ccc は 有効なパターンであり、aaa.bbb{???}.ccc{###} も有効です。
ファイル名パターンの仕様を以下の例で説明します。
- {########}.abc
- 長さが 8 でファイル拡張子が .abc の数字ファイル名に一致します (10252006.abc や 10262006.abc など)。10262006 は 10252006 より大きいため、 ファイル 10262006.abc がモニターされます。
- {########}.*
- 長さが 8 の数字ファイル名に一致します。ファイル拡張子は 無視します。例えば 20061025.log、20061101.log、10252006.abc が該当します。 20061101 が最大であるため、ファイル 20061101.log がモニターされます。
- {######??}.abc
- 長さが 8 でファイル拡張子が .abc の数字ファイル名に一致します。 名前部分の最後の 2 桁は無視します。例えば 02110199.abc、02110200.abc、021101AZ.abc が 該当します。021102 が最大であるため、ファイル 02110200.abc がモニターされます。
- Console.{######}
- 名前部分に Console を含み、拡張子部分に 6 桁の 数値を含むファイル名に一致します。例えば Console.000133、Console.000201、Console.000134 が 該当します。ファイル Console.000201 がモニターされます。
- IN{######}.log
- IN で始まり、その後に 6 桁の数字およびファイル拡張子 .log が続く ファイル名に一致します。例えば IN021001.log、IN021002.log、IN021004.log が 該当します。ファイル IN021004.log がモニターされます。
- PS{###}FTP.txt
- PS で始まり、その後に 3 桁の数字が続き、さらに FTP および 拡張子 .txt が続くファイル名に一致します。例えば PS001FTP.txt、PS005FTP.txt、PS010FTP.txt が 該当します。ファイル PS010FTP.txt がモニターされます。
- 中括弧 {} を使用してファイル名の中のパターン文字を囲みます。中括弧の中に パターン文字が存在することで、ファイル名のパターンが使用されていることが 示されます。
- アスタリスク (*) は、ファイル拡張子またはファイル名の中のすべての後続文字を
無視するためにワイルドカードとして使用します。例えば、Myapp{###}.log* は、Myapp で始まり、その後に 3 桁の数字が続き、さらに .log が続くファイル名が、その後に続く文字に関係なくすべて一致することを示します。
アスタリスクは、中括弧 ({ }) の後に指定しなければならず、 ファイル名の先頭で使用することはできません。ファイル名拡張子に アスタリスクを使用する場合は、アスタリスクを単独で 使用しなければなりません。
正しいワイルドカード (*) の使用例を以下に示します。- err{??}.*
- error{$}.*
- error.20*
- アスタリスク (*) の前に中括弧がありません。
- error*.{###}
- アスタリスクがファイル名の末尾で使用されていません。
- error.*
- アスタリスク (*) の前に中括弧がありません。
- 特定のファイル拡張子を定義した場合は、それと同じ拡張子を持つ ファイルのみが考慮されます。
- ファイル名の各数字要素を示すには、番号記号を使用します。
- 疑問符は、命名規則の各要素のうち、 該当するファイル名を判別するときの検索基準として扱わない要素を 除外するために使用します。
- ドル記号 ($) は、任意の文字または文字なしのいずれかを 表すために使用します。例えば、Log および LogA の 2 つのファイルに 一致させるには、Log{$} と指定します。ドル記号の使用には いくつかの制約があります。{$$$$$$}_abc.log のように 1 つ以上のドル記号をファイル名の前に記述した場合、ドル記号数は、ファイル名のその位置にある文字の数に正確に一致しなければなりません。また、ファイル名パターンの中で複数の位置にドル記号を指定することはできません。例えば、{$$$}b{$$$}.log は abc.log に一致しません。ドル記号にはこのような制約があるため、ファイル名に含まれる文字の数が予測できない場合は、正規表現のファイル名パターンを使用してください。
- 中括弧で囲んだ番号記号および疑問符の総数は重要です。これは、ファイル名の一部に正確に一致しなければなりません。 例えば、パターン AA{####} は、AA0001 などのファイルを 検索するようにファイル・データ・プロバイダーに指示します。AA001 や AA00001 などの ファイル名は考慮に入れられません。
- 厳密なファイル名パターン (定数および数値部分) は、 ファイル名に正確に一致しなければなりません。例えば、パターン AA{###} は、ファイル AA101 を 検査するようにファイル・データ・プロバイダーに指示します。XAA101、AA222X、AA55555 などの ファイル名は考慮に入れられません。
- 予約済みパターン・ストリング {TIVOLILOGTIME} は、Tivoli Monitoring の
エージェントまたはサーバー・ログ・ファイルの 16 進タイム・スタンプおよび
ファイル・シーケンス番号の代わりとして使用します。このパターン・ストリングは、Tivoli Monitoring コンポーネントの自己モニターを実行しているときに役立ちます。例えば、/opt/IBM/ITM/logs ディレクトリーにある最新の モニター・サーバー
ログをモニターする場合は、以下のファイル名パターンを指定できます。
Host1_ms_452053c0-01.log、Host1_ms_451f11f4-01.log、Host1_ms_45205946-01.log、および Host1_ms_451f11f4-02.log が /logs ディレクトリーに存在する場合は、Host1_ms_45205946-01.log ファイルがモニター対象として選択されます。/opt/IBM/ITM/logs/Host1_ms_{TIVOLILOGTIME}.log
日付の構成要素 (年、月、および日) で構成されるファイル名を厳密に指定するには、 大文字の Y、M、および D を使用します。これらの文字は中括弧の中で 指定しなければなりません。さもなければ、ファイル名の中のリテラル文字として 扱われてしまいます。
以下に例を示します。
- {YYYYMMDD}.log
- 20060930.log や 20061015.log などのファイル名を指定します。
- {MMDDYY}.log
- 101106.log や 110106.log などのファイル名を指定します。
- {DDMMYYYY}.log
- 01092006.log や 15082006.log などのファイル名を指定します。
- {DDMMMYY}.log
- 24Jan07 や 13Sep06 などのファイル名を指定します。
- {MM-DD-YY}.log
- 11-02-06 や 04-29-07 などのファイル名を指定します。日付フィールドの分離文字 (-) は無視されるため、疑問符 (?) のパターン文字を使用してスキップする必要はありません。
- MY{YYDDD}.log
- MY06202.log、MY06010.log、MY04350.log などのファイル名を指定します。
複雑なケースになると、長いファイル名の内部に日付フィールドが埋め込まれていて、前の例に示した日付パターンでは不十分な場合があります。複雑なケースの場合、番号記号と疑問符を混在させたパターンを作成して数値比較を実行し、最新のファイルをモニター対象として選択することができます。例えば、パターン ABC{?####?##?##?##?##?##?}XYZ.TXT を ABC 2006-04-20 11_22_33 XYZ.TXT などのファイル名に対して使用できます。この例では、#- で示した桁のみを対象にしており、疑問符はプレースホルダーとして機能して、ファイル名の中の他の文字を無視します。
- ファイル・データ・プロバイダーが最初に開始した。
- 現在のモニター対象のファイルが存在しなくなった (多くの場合は名前変更や削除が原因)。
- 既存のファイルの内容が変更された (多くの場合は再書き込みが原因)。
- 検査間隔が経過した。デフォルトの間隔は 10 分です。
環境変数を指定することで、
間隔を長い値または短い値に変更できます。
KUMP_DP_FILE_SWITCH_CHECK_INTERVAL=number-of-seconds