ファイル監視ジョブの注意事項(使用する前に知っておいた方がよいこと)を次に示します。
ファイル監視ジョブを使った例を次に示します。
ファイル監視ジョブで監視する事象,ファイル名の指定方法,およびファイル監視ジョブのオプションを次に説明します。
(1) ファイル監視ジョブで監視する事象
監視する事象を次に示します。
表7-1 監視する事象
監視する事象 | 監視内容 |
---|---|
作成※1,※2 | 指定した名称のファイルが作成されたかを監視します。 |
削除※3 | 指定した名称のファイルが削除されたかを監視します。 |
サイズ変更※2,※4 | 指定した名称のファイルサイズが変更されたかを監視します。 |
最終書き込み時刻変更※2,※4 | 指定した名称のファイルが更新されたかを監視します。更新した時刻を監視し,更新時刻が変わったら条件成立とします。 |
これらの条件は,複数指定することもできます。例えば,ファイルが削除または更新されたら後続ジョブを実行するように定義する場合は,「削除」と「最終書き込み時刻変更」を指定します。ただし,「サイズ変更」と「最終書き込み時刻変更」は同時に指定できません。
ファイル監視ジョブの基本動作例を紹介します。
(a) 監視条件で「作成」を指定した場合
監視条件で「作成」を指定して監視している場合の,ファイル監視ジョブの基本動作を次の図に示します。
なお,図中の「ファイル」とは,監視対象ファイルを指します。
●ジョブの開始時に監視対象ファイルがないとき
ジョブの開始時に監視対象ファイルがないときは,次のように動作します。
図7-3 ジョブの開始時に監視対象ファイルがないとき
●ジョブの開始時に監視対象ファイルがあるとき
ジョブの開始時に監視対象ファイルがあるときは,次のように動作します。
図7-4 ジョブの開始時に監視対象ファイルがあるとき
(b) 監視条件で「削除」「サイズ変更」または「最終書き込み時刻変更」を指定した場合
監視条件で「削除」,「サイズ変更」,または「最終書き込み時刻変更」を指定して監視している場合の,ファイル監視ジョブの基本動作を次の図に示します。この例では,監視条件に「削除」を指定したものとします。
●ジョブの開始時に監視対象ファイルがないとき
ジョブの開始時に監視対象ファイルがないときは,次のように動作します。
図7-5 ジョブの開始時に監視対象ファイルがないとき
●ジョブの開始時に監視対象ファイルがあるとき
ジョブの開始時に監視対象ファイルがあるときは,次のように動作します。
図7-6 ジョブの開始時に監視対象ファイルがあるとき
(c) 監視間隔内に複数回イベントが発生した場合(監視条件が「作成」の場合)
監視条件で「作成」を指定して監視していて,監視間隔内に複数回ファイルが更新されたときの,ファイル監視ジョブの基本動作を次の図に示します。
●ファイルの作成を検知しないとき
ファイルの作成を検知しないときは,次のように動作します。
図7-7 検知しない例
●ファイルの作成を検知するとき
ファイルの作成を検知するときは,次のように動作します。
図7-8 検知する例
(2) ファイル名の指定方法
ファイル名の指定方法には,絶対パス名でファイル名を指定する方法のほかに,絶対パス名と「*(ワイルドカード)」を使用した総称名で指定する方法があります。ワイルドカードを使った監視ファイル名の指定例を次に示します。
表7-2 ワイルドカードを使った監視ファイル名の指定例
指定例 | 指定内容 | 監視ファイル名の例 |
---|---|---|
/jp1/* | /jp1にあるファイルすべてを監視します。ただし,先頭が「.」(ピリオド)で始まるファイルは監視しません。 | /jp1/aaa /jp1/aaa.sh |
/jp1/.* | /jp1にあるファイルで,「.」(ピリオド)で始まるファイルすべてを監視します。 | /jp1/.aaa |
/jp1/aaa* | /jp1にあるファイルで,「aaa」という文字列で始まるファイルすべてを監視します。 | /jp1/aaa /jp1/aaabbb /jp1/aaa.sh |
/jp1/*aaa | /jp1にあるファイルで,「aaa」という文字列が最後に付くファイルすべてを監視します。 | /jp1/aaa /jp1/bbbaaa /jp1/bbb.aaa |
/jp1/aaa*bbb | /jp1にあるファイルで,「aaa」という文字列で始まり,「bbb」という文字列が最後に付くファイルすべてを監視します。 | /jp1/aaabbb /jp1/aaacccbbb /jp1/aaa.bbb |
/jp1/*aaa* | /jp1にあるファイルで,「aaa」という文字列がファイル名に含まれているファイルすべてを監視します。 | /jp1/aaa /jp1/bbbaaa /jp1/bbbaaaccc /jp1/bbbaaa.sh |
(3) ファイル監視ジョブのオプション
ファイル監視ジョブには,次の二つのオプションを設定できます。
上記のオプションについて,次に説明します。
(a) 監視開始オプション
ファイル監視ジョブが実行中の状態になったときに,すでに監視対象ファイルがある場合,ファイル監視ジョブの監視条件を成立させるかどうかをオプションで指定します。このオプションを,監視開始オプションといいます。
なお,監視開始オプションは,ファイルの監視条件で「作成」を選択した場合に有効になります。また,オプションを指定しない場合は,ファイルがあっても,監視条件を成立させません。
監視開始オプションを設定した場合のオプションの基本動作例を紹介します。
●監視開始オプションを設定していない場合の動作例
監視開始オプションを設定していない場合の動作例を次の図に示します。
なお,図中の「ファイル」とは,「監視対象ファイル」を指します。
図7-9 ファイル監視ジョブの実行前に監視対象ファイルが作成されたとき
図7-10 ファイル監視ジョブの実行後に監視対象ファイルが作成されたとき
●監視開始オプションを設定している場合の動作例
監視開始オプションを設定している場合の動作例を次の図に示します。
図7-11 監視対象ファイルをファイル監視ジョブの実行前に作成した場合
図7-12 監視対象ファイルをファイル監視ジョブの実行後に作成した場合
監視開始オプションの指定内容によって,ファイル監視ジョブがどのように動作するかを,次に説明します。
図7-13 ジョブネット中の監視対象ファイル名を指定したファイル監視ジョブ
図7-14 ジョブネット中の監視対象ファイル名を「*(ワイルドカード)」で指定したファイル監視ジョブ
図7-15 起動条件中の監視対象ファイル名を指定したファイル監視ジョブ
図7-16 起動条件中の監視対象ファイル名を「*(ワイルドカード)」で指定したファイル監視ジョブ
なお,クラスタでJP1/AJS3を運用している場合,JP1/AJS3サービスがフェールオーバーしたあとに,監視開始オプションが設定されているファイル監視ジョブが再度実行されると,「ファイル監視ジョブの状態引き継ぎ」を有効にしている場合は,フェールオーバー前の状態で実行され,「ファイル監視ジョブの状態引き継ぎ」を無効にしている場合は,監視開始オプションが再び有効になります。
ファイル監視ジョブの監視開始オプションの指定方法については,マニュアル「JP1/Automatic Job Management System 3 操作ガイド 15.4.17 [詳細定義-[ファイル監視]]ダイアログボックス」またはマニュアル「JP1/Automatic Job Management System 3 コマンドリファレンス2 4.2.10 ファイル監視ジョブ定義情報の記述方法」を参照してください。
(b) ファイル監視ジョブの状態引き継ぎオプション
ファイル監視ジョブが監視対象ファイルを監視している間の情報を,随時退避しておき,ファイル監視ジョブの監視状態を引き継ぐことができます。状態引き継ぎを行うように設定した場合,ファイル監視ジョブ一つにつき,一つの状態引き継ぎ情報格納ファイルが生成されます。
例えば,クラスタで,ファイル監視ジョブの実行中にJP1/AJS3サービスが停止した場合,JP1/AJS3サービスの停止後,再度JP1/AJS3サービスが起動して,サービスが停止する前と同じファイル監視ジョブが実行されたときに,サービスが停止する前のファイル監視ジョブの監視状態を引き継いでジョブが実行されます。なお,クラスタでなくても,ファイル監視ジョブの情報を引き継げます。
監視状態を引き継ぐには,ファイル監視ジョブが継続して動作している必要があります。ファイル監視ジョブが継続して動作するか,終了するかによって,監視状態が引き継がれるかどうかが異なります。
監視状態が引き継がれる条件を,次の表に示します。
表7-3 監視状態の引き継ぎ条件
ファイル監視ジョブの種類 | サービスの再起動 | 停止を伴う フェールオーバー | システムダウンによるフェールオーバー |
---|---|---|---|
ジョブネット中の ファイル監視ジョブ | ジョブが終了するため,引き継がれない※ | ジョブが終了するため,引き継がれない※ | 引き継がれる |
起動条件中のファイル監視ジョブ | 引き継がれる | 引き継がれる | 引き継がれる |
なお,次のような場合には,状態引き継ぎ情報格納ファイルが削除されます。
ファイル監視ジョブの状態引き継ぎオプションを設定した場合の動作例を次の図に示します。
図7-17 ファイル監視ジョブの状態引き継ぎオプションを設定した場合の動作例
なお,2ギガバイト以上のファイルを監視する設定(ラージファイル対応オプション)を「対応する」から「対応しない」に変更し,2ギガバイト以上のファイルの情報を引き継いだ場合は,統合トレースログと実行結果詳細にメッセージKAVT2038-Eが出力され,ジョブは異常検出終了します。
(4) ファイル監視ジョブ定義時の注意事項
ファイル監視ジョブを定義するときの注意事項を次に示します。
表7-4 拡張子による監視対象ファイルの検知の有無
監視対象ファイル名 | 更新されるファイル名 | |||
---|---|---|---|---|
aaa.tx | aaa.txt | aaa.txta | aaa.txtab | |
C:¥Temp¥*.tx | ○ | × | × | × |
C:¥Temp¥*.txt | × | ○ | ○ | ○ |
C:¥Temp¥*.txta | × | × | ○ | × |
C:¥Temp¥*.txtab | × | × | × | ○ |
dir 監視対象ファイルがあるフォルダのフルパス /x
表7-5 ショートファイル名を監視対象にしない場合と監視対象にする場合の監視対象ファイル名の定義例
監視対象ファイル群 | 監視対象ファイル名で指定する総称名 | |
---|---|---|
ロングファイル名 | ショートファイル名 | |
C:¥temp¥ABCDEFGH001.log | C:¥temp¥ABCDEF~1.log |
|
C:¥temp¥ABCDEFGH002.log | C:¥temp¥ABCDEF~2.log | |
C:¥temp¥ABCDEFGH003.log | C:¥temp¥ABCDEF~3.log | |
C:¥temp¥ABCDXXXXXXX.log | C:¥temp¥ABCDEF~4.log |