8.3 イベントジョブの注意事項

イベントジョブの注意事項(使用する前に知っておいた方がよいこと)について説明します。イベントジョブの説明については,マニュアル「JP1/Automatic Job Management System 2 解説」を参照してください。

注意
JP1/AJS2が発行したJP1イベント,Windowsイベントログ,syslog,HNTRLib2,およびスケジューラーログなどのログファイルの内容については,事象を発生させたJP1/AJS2自身では正しく検知できません。イベントジョブの監視対象の詳細については,「8.5.2 JP1/AJS2が発行するイベントやメッセージを監視する」を参照してください。

イベントジョブの種類を次の表に示します。

表8-13 イベントジョブの種類

イベントジョブ名ジョブの内容
JP1イベント受信監視ジョブJP1/Baseから特定のイベントを受け取ったときにイベントジョブが終了する。
ファイル監視ジョブ特定のファイルが作成,削除,または更新されたときにイベントジョブが終了する。
メール受信監視ジョブ特定のメールを受信したときにイベントジョブが終了する。
メッセージキュー受信監視ジョブ※1TP1/Message QueueまたはMQSeriesから特定のメッセージを受信したときにイベントジョブが終了する。
MSMQ受信監視ジョブ※2MSMQから特定のメッセージを受信したときにイベントジョブが終了する。
ログファイル監視ジョブJP1/Baseのログファイルトラップ機能と連携し,指定したログファイルに,特定の情報が書き込まれたときにイベントジョブが終了する。
Windowsイベントログ監視ジョブJP1/Baseのイベントログトラップ機能と連携し,Windowsイベントログに特定の情報が書き込まれたときにイベントジョブが終了する。
実行間隔制御ジョブ指定した時間が経過したらイベントジョブが終了する。
注※1
Linuxは対象外です。
注※2
UNIXは対象外です。

イベントジョブで受信した情報は,後続ジョブで参照できます。後続ジョブで参照できる情報を,引き継ぎ情報と呼びます。

後続ジョブでイベント情報を参照するには,イベントジョブに情報を引き継ぐためのマクロ変数名を定義し,後続ジョブで,引き継ぐイベントのマクロ変数を指定します。マクロ変数は「?AJS2xxxxxxxxx?:引き継ぎ情報名」の形式で指定します。マクロ変数の定義例については,マニュアル「JP1/Automatic Job Management System 2 解説 3.2.4(6) イベントジョブの受信情報の引き継ぎ」を参照してください。また,引き継ぎ情報の詳細については,「JP1/Automatic Job Management System 2 解説 付録A イベントジョブで引き継ぐ情報」を参照してください。

注意事項
  • 起動条件中のイベントジョブについては,起動条件監視中にJP1/AJS2 - Managerが停止した場合,再起動後に再びイベント監視を始められます。また,起動条件で複数のイベントを監視していた場合,条件が成立していたイベントの受信情報を,再起動後も保持しておけます。
  • 起動条件を定義してジョブネットを起動するのと同じように,イベントジョブをジョブネットの先頭に定義すると,条件が成立するのを待ってジョブネットを実行できます。起動条件を定義した場合,イベント受信の監視中は,ジョブネットが起動条件待ち状態になります。イベントジョブを定義した場合,イベント受信の監視中は,ジョブネットが実行中状態になります。イベントジョブを先頭に定義する場合は,計画的に発生することがわかっている事象を待つ場合に使うことをお勧めします。
  • 複数のイベントを監視する場合,正規表現などで一つのイベントジョブとしてまとめて監視すると,性能が向上します。
    例えば,JP1イベント受信監視ジョブで,イベントIDが00004131でメッセージがKAVS0272-EとKAVS0273-EのJP1イベントを監視する場合,イベントIDだけを指定する,またはイベントIDに「00004131」を指定し,メッセージに「KAVS」を指定するなどの方法で,イベントジョブを一つにまとめてください。なお,引き継ぎ情報を利用すると,イベントの内容を識別できます。
  • イベントジョブに打ち切り時間を指定した場合,打ち切り時間は実行エージェントでカウントします。このため,監視中に実行エージェントが電源ダウンなどで再起動し,イベントの監視が継続された場合,打ち切り時間は実行エージェントが再起動した時刻からカウントされます。これを「相対時刻による打ち切り時間の監視」と呼びます。なお,打ち切り時間のカウントの再開始,および再開始された時刻は,イベントジョブの実行結果詳細で確認できます。
    また,実行エージェントの状態にかかわらず,ジョブ登録からの絶対時刻で監視を打ち切りたい場合は,実行エージェントで監視する監視イベントを,起動条件で監視し,起動条件成立後,マネージャーにJP1イベントを送信し,マネージャーのJP1イベント受信監視ジョブで打ち切り時間を指定して監視します。これを「絶対時刻による打ち切り時間の監視」と呼びます。
  • Windowsでは,JP1/AJS2のイベントジョブは,実行時のJP1ユーザーには依存しません。JP1/AJS2サービスのアカウント権限に依存します。
    JP1/AJS2サービスのアカウントに与える必要がある権限を次に示します。
    ・ファイル監視ジョブでの,監視対象ファイルおよびフォルダに対する書き込みの権限。また,監視対象ファイルが読み取り専用になっていないこと。
    ・MQSeries連携での,メッセージキューに対する書き込みの権限。
    ・TP1/Message Queue連携での,メッセージキューに対する書き込みの権限。
    権限が与えられていない場合,次に示す現象が起こります。
    ・イベントジョブ(ファイル監視ジョブ,メッセージキュー受信監視ジョブ)が異常終了する。
    ・イベントが発生しないなど。
  • JP1/AJS2のイベントジョブは,JP1/Baseの環境設定に定義されているJP1ユーザー,およびおのおののジョブに定義されているJP1ユーザーの権限には依存しません。
  • イベントジョブを使用する場合,イベントジョブを実行した時間と実際に実行エージェントでイベントの監視が実行中になるまでのタイムラグが発生することがあります。この場合,実際にイベントの監視が実行中になってから発生したイベントが検知の対象となります。このため,イベントジョブを実行する時間は監視対象とするイベントが発生する時間を考慮し,余裕を持った時間に実行する必要があります。
  • イベントジョブ(起動条件内のものを含む)を実行した場合,実行したイベントジョブの定義データや,監視条件が成立した際のイベントの情報などがイベント・アクション制御マネージャーやイベント・アクション制御エージェントなどのプロセス間で通信されます。その際,一時的なネットワーク障害や通信相手のプロセスがビジー状態などで通信できないと,いったん通信する情報をファイルに保存し,時間をおいて再試行します。JP1/AJS2ではこのファイルを「未通知情報」と表現しています。再試行に成功すると,未通知情報を削除します。
  • JP1/AJS2を使用する場合,JP1/Baseのイベントサービス環境の設定で,API設定ファイルのserverパラメーターの通信タイプに「keep-alive」を設定してください。「close」に設定すると,JP1/AJS2が起動時に発行するJP1イベントが発行できなくなったり,統合トレースログにKAVT1040-Eメッセージが出力されてJP1イベント受信監視ジョブ・ログファイル監視ジョブ・Windowsイベントログ監視ジョブがイベントを検知できなくなったりするなど,正常に動作しない問題が発生することがあります。設定方法およびAPI設定ファイルについては,マニュアル「JP1/Base 運用ガイド」を参照してください。
  • マネージャー・エージェント構成において,次の操作を行った際に,ネットワーク障害などでイベント・アクション制御マネージャーとイベント・アクション制御エージェントが通信できないと,イベントジョブおよび起動条件中のイベントジョブはマネージャー上で終了状態となってもエージェント上では動作し続けます。
    ・イベントジョブを強制終了
    ・イベントジョブの状態を状態変更により終了状態に遷移させる
    ・起動条件付きジョブネットを強制終了する
    このようなイベントジョブおよび起動条件中のイベントジョブがエージェント上で動作していると,マネージャーとエージェントで,管理しているジョブに矛盾が生じます。
    管理に矛盾が生じているイベントジョブでは再実行ができなくなったり,その他の正常なイベントジョブの処理を遅延させるなどの影響を与えたりします。
    そのため,ネットワーク障害などが発生している間に,上記の操作を行った場合は,マネージャーホストで実行したjpomanjobshowコマンドの結果とエージェントホストで実行したjpoagtjobshowコマンドの結果を比較して,マネージャー上で終了しているイベントジョブおよび起動条件中のイベントジョブがエージェント上では監視中となっていないか確認してください。
    確認の結果,監視中となっていた場合には,エージェントホストのJP1/AJS2サービスを再起動し,エージェント上で動作し続けているイベントジョブおよび起動条件中のイベントジョブを終了させてください。
<この節の構成>
8.3.1 JP1イベント受信監視ジョブの注意事項
8.3.2 ファイル監視ジョブの注意事項
8.3.3 メール受信監視ジョブの注意事項
8.3.4 メッセージキュー受信監視ジョブおよびMSMQ受信監視ジョブの注意事項
8.3.5 ログファイル監視ジョブの注意事項
8.3.6 Windowsイベントログ監視ジョブの注意事項
8.3.7 実行間隔制御ジョブの注意事項
8.3.8 引き継ぎ情報定義時の注意事項
8.3.9 イベントジョブを実行したままサービスを再起動する場合の注意事項