2.6.10 マネージャーホストでジョブの状態がわからなくなったときの対処方法
JP1/AJS3サービスをウォームスタートまたはディザスターリカバリースタートしたり,マネージャーホストとエージェントホストの間で通信障害が発生したりすると,エージェントホストで実行したジョブの状態が,マネージャーホストでわからなくなることがあります。
このような場合に,エージェントホストで出力される次のファイルを確認することで,ジョブのリカバリーができます。
-
ジョブ実行結果ログファイル
-
イベントジョブ実行結果ログファイル
- メモ
-
ジョブ実行結果ログファイルおよびイベントジョブ実行結果ログファイルは,バージョンアップインストール時はデフォルトでは出力されません。出力したい場合は,環境設定パラメーターJOBEXECRESULTLOGおよびEVJOBEXECRESULTLOGに「1」または「2」を設定します。詳細については,マニュアル「JP1/Automatic Job Management System 3 設計ガイド(システム構築編) 3.4.9 ジョブ実行結果ログファイルおよびイベントジョブ実行結果ログファイルのサイズを見積もる」を参照してください。
ジョブの種別と出力されるログファイルの対応を次の表に示します。
項番 |
ジョブ種別 (ユニット) |
出力されるログファイル |
---|---|---|
1 |
PCジョブ※ |
ジョブ実行結果ログファイル |
2 |
UNIXジョブ※ |
|
3 |
アクションジョブ※ |
|
4 |
サブミットジョブ |
|
5 |
QUEUEジョブ |
|
6 |
カスタムジョブ |
|
7 |
HTTP接続ジョブ |
|
8 |
引き継ぎ情報設定ジョブ |
|
9 |
フレキシブルジョブ |
|
10 |
イベントジョブ |
イベントジョブ実行結果ログファイル |
11 |
ORジョブ |
出力されない |
12 |
判定ジョブ |
|
13 |
ジョブネットコネクタ |
|
14 |
リモートジョブネット |
- 注※
-
実行先サービスがキューレスの場合は出力されません。
(1) イベントジョブ以外のリカバリー手順
イベントジョブ以外のリカバリー手順は,ajsshowコマンドを使用する手順とスケジューラーログを使用する手順の2種類の方法があります。これらの方法は,マネージャーホストの状態によって使い分けてください。マネージャーホストの状態とリカバリーの可否を次の表に示します。
マネージャーホストの状態 |
リカバリー方法 |
---|---|
組み込みDBが使用可(ジョブの実行情報が残っている) |
ajsshowコマンドを使用したリカバリー |
スケジューラーログだけが使用可 |
スケジューラーログを使用したリカバリー |
再セットアップ(組み込みDBが使用不可,かつスケジューラーログが使用不可) |
リカバリーできない |
(a) ajsshowコマンドを使用したリカバリー手順
-
ajsshowコマンドを実行し,確認対象のジョブの実行ID,ジョブ番号およびエージェントホスト名を確認する。
(例)
ajsshow -f "%#,%I %H" /JOBNETNAME/JOBNAME
-
確認対象のジョブのユニット完全名と,手順1で確認した実行IDおよびジョブ番号を組み合わせて,ジョブ実行結果ログファイルを検索する。
(例)
AJSROOT1:/JOBNETNAME/JOBNAME:@111,200001 で検索
-
メッセージKAVU3613-I,メッセージKAVU3614-I(Windowsの場合),メッセージKAVU3615-I(UNIXの場合)およびメッセージKAVU3616-Iの出力状況を確認し,エージェントホストでのジョブの状態を確認する。
メッセージの出力有無とジョブの状態の関係については,「(3) メッセージの出力有無とジョブの状態の関係」を参照してください。
-
エージェントホストでのジョブの状態に応じてジョブをリカバリーする。
ジョブの再実行やジョブの状態変更を実施してください。
(b) スケジューラーログを使用したリカバリー手順
-
スケジューラーログファイルを検索し,確認対象のジョブの実行ID,ジョブ番号およびエージェントホスト名を確認する。
-
確認対象のジョブのユニット完全名と,手順1で確認した実行IDおよびジョブ番号を組み合わせて,ジョブ実行結果ログファイルを検索する。
(例)
AJSROOT1:/JOBNETNAME/JOBNAME:@111,200001 で検索
-
メッセージKAVU3613-I,メッセージKAVU3614-I(Windowsの場合),メッセージKAVU3615-I(UNIXの場合)およびメッセージKAVU3616-Iの出力状況を確認し,エージェントホストでのジョブの状態を確認する。
メッセージの出力有無とジョブの状態の関係については,「(3) メッセージの出力有無とジョブの状態の関係」を参照してください。
-
エージェントホストでのジョブの状態に応じてジョブをリカバリーする。
ジョブの再実行やジョブの状態変更を実施してください。
(2) イベントジョブのリカバリー手順
イベントジョブをリカバリーできるのは,マネージャーホストの組み込みDBが使用でき,ジョブの実行情報が残っている場合だけです。その他の状態の場合は,リカバリーできません。
イベントジョブのリカバリー手順を次に示します。
-
エージェントホスト上で監視したいイベントの発生状況(発生時刻)を確認する。
(例)JP1イベント受信監視ジョブの場合,イベントDBを確認します。
-
イベントジョブ実行結果ログファイルの開始ログから,手順1の監視したいイベントの発生時刻前後に出力されているメッセージKAVT0966-Iを探し,メッセージ出力時刻とユニットIDを確認する。
-
マネージャーホスト上でajsnameコマンドを実行し,ユニットIDからユニット完全名を取得する。
取得したユニット完全名が手順1のジョブであることを確認してください。
-
手順1のイベント発生時刻と手順2のメッセージ出力時刻を比較する。
手順1のイベント発生時刻が手順2のメッセージ出力時刻より前の場合,イベント監視開始前にイベントが発生しています。必要に応じて手動で後続ジョブを実行してください。
(3) メッセージの出力有無とジョブの状態の関係
ジョブ実行結果ログに出力されているメッセージによってジョブの状態を確認できます。ジョブの状態は,フレキシブルジョブ以外のジョブとフレキシブルジョブで異なります。
(a) フレキシブルジョブ以外のジョブの場合
フレキシブルジョブ以外のジョブの場合の,メッセージの出力有無とジョブの状態の関係を次の表に示します。
項番 |
KAVU3613-I (受付時) |
KAVU3614-I または KAVU3615-I (開始時)※ |
KAVU3616-I (終了時) |
ジョブの状態 |
実行ファイルまたはスクリプトファイルの状態 |
説明 |
---|---|---|---|---|---|---|
1 |
出力なし |
出力なし |
出力なし |
未実行 |
未起動 |
マネージャーホストからジョブを受け付ける前の状態。 |
2 |
出力あり |
出力なし |
出力なし |
未実行 |
未起動 |
マネージャーホストからジョブの受け付けが完了しているが,まだジョブが実行されていない状態。 |
3 |
出力あり |
出力あり |
出力なし |
実行中 |
実行中 |
ジョブが実行中の状態。 |
4 |
出力あり |
出力なし |
出力あり |
起動失敗 |
未起動 |
|
5 |
出力あり |
出力あり |
出力あり |
実行終了 |
終了 |
ジョブの実行に成功したあと,ジョブが終了した状態。 |
- 注※
-
Windowsの場合はメッセージKAVU3614-Iが,UNIXの場合はメッセージKAVU3615-Iが出力されます。
(b) フレキシブルジョブの場合
フレキシブルジョブの場合,ジョブ実行結果ログファイルは中継エージェントでの処理状況が出力されます。実行ファイルまたはスクリプトファイルの状態を確認するには,宛先エージェント側でフレキシブルジョブ実行先ログファイル(ajsfxexec{1|2}.log)を確認する必要があります。
また,中継エージェントを使用しない構成の場合,マネージャーホストが中継エージェントとして動作します。この場合,マネージャーホスト上のジョブ実行結果ログファイルにメッセージが出力されます。
フレキシブルジョブの場合のメッセージの出力有無とジョブの状態の関係を次の表に示します。
項番 |
KAVU3613-I (受付時) |
KAVU3614-I または KAVU3615-I (開始時)※1 |
KAVU3616-I (終了時) |
フレキシブルジョブの状態 |
実行ファイルまたはスクリプトファイルの状態 |
説明 |
---|---|---|---|---|---|---|
1 |
出力なし |
出力なし |
出力なし |
未実行 |
未起動 |
マネージャーホストからフレキシブルジョブを受け付ける前の状態。 |
2 |
出力あり |
出力なし |
出力なし |
未実行 |
−※2 |
マネージャーホストからフレキシブルジョブの受け付けが完了しているが,まだフレキシブルジョブが実行されていない状態。 |
3 |
出力あり |
出力あり |
出力なし |
実行中 |
−※2 |
中継エージェント上で,フレキシブルジョブを開始した状態。実行ファイルが実行されたかどうかは,宛先エージェント上の既存のログファイル(ajsfxexec{1|2}.log)を確認してください。 |
4 |
出力あり |
出力なし |
出力あり |
起動失敗 |
未起動 |
フレキシブルジョブの開始に失敗した状態。フレキシブルジョブの開始に失敗した要因は,エージェントホストの統合トレースログファイルに出力されるエラーメッセージから特定してください。 |
5 |
出力あり |
出力あり |
出力あり |
実行終了 |
−※2 |
中継エージェント上で,フレキシブルジョブが終了した状態。実行ファイルが実行されたかは,宛先エージェント上の既存のログファイル(ajsfxexec{1|2}.log)を確認してください。 |
- 注※1
-
Windowsの場合はメッセージKAVU3614-Iが,Linuxの場合はメッセージKAVU3615-Iが出力されます。
- 注※2
-
実行ファイルまたはスクリプトファイルの状態の確認方法については,「(4) 宛先エージェントでの状態の確認方法」を参照してください。
(4) 宛先エージェントでの状態の確認方法
フレキシブルジョブを使用している場合の宛先エージェントでの実行ファイルまたはスクリプトファイルの状態の確認方法を次に示します。
(a) 一斉実行を使用していない場合
-
フレキシブルジョブの要求元(中継エージェント)ホスト上のジョブ実行結果ログファイルに出力されたメッセージの出力内容から,確認したいジョブのユニット完全名,実行IDを確認する。
-
フレキシブルジョブの要求元(中継エージェント)ホスト上のフレキシブルジョブ実行要求元ログファイル(ajsfxreq{1|2}.log)に,次の条件に該当するメッセージがあるか確認する。
-
メッセージKAVS8115-Iの出力内容のうち,ユニット完全名および実行IDが手順1で確認した結果と一致する。
該当するメッセージがある場合,メッセージの出力内容から,宛先エージェントのホスト名と,保守情報(uuid)を確認します。
-
-
手順2で確認したフレキシブルジョブの実行先(宛先エージェント)ホスト上のフレキシブルジョブ実行先ログファイル(ajsfxexec{1|2}.log)に,次の条件に該当するメッセージがあるか確認する。
-
メッセージKAVS8139-Iの出力内容のうち,保守情報が手順2で確認した保守情報(uuid)と一致する。
-
メッセージKAVS8140-Iの出力内容のうち,保守情報が手順2で確認した保守情報(uuid)と一致する。
該当するメッセージKAVS8139-IおよびKAVS8140-Iがあるかどうかで状態を判断してください。
-
両方のメッセージがある場合,ユーザープログラムは終了しています。
-
メッセージKAVS8139-Iだけがある場合,ユーザープログラムは実行中です。
-
どちらのメッセージもない場合,ユーザープログラムは起動していません。
-
(b) 一斉実行を使用している場合
-
フレキシブルジョブの要求元(中継エージェント)ホスト上のジョブ実行結果ログファイルに出力されたメッセージの出力内容から,確認したいジョブのユニット完全名,実行IDを確認する。
-
フレキシブルジョブの要求元(中継エージェント)ホスト上のフレキシブルジョブ実行要求元ログファイル(ajsfxreq{1|2}.log)に,次の条件に該当するメッセージがあるか確認する。
-
メッセージKAVS8137-Iの出力内容のうち,ユニット完全名および実行IDが手順1の確認結果と一致する。
該当するメッセージがある場合,メッセージの出力内容から,保守情報(uuid)を確認します。
-
-
一斉配信エージェント上の一斉配信エージェントログファイル(ajsfxdstr{1|2}.log)に,次の条件に該当するメッセージがあるか確認する。
-
メッセージKAVS8148-Iの出力内容のうち,ユニット完全名および実行IDが手順1の確認結果と一致する。
該当するメッセージがある場合,一斉配信エージェント上でajsfxbcstatusコマンドを実行し,宛先エージェントを確認します。
-
-
宛先エージェントごとに,宛先エージェント上のフレキシブルジョブ実行先ログファイル(ajsfxexec{1|2}.log)に,次の条件に該当するメッセージがあるか確認する。
-
メッセージKAVS8139-Iの出力内容のうち,保守情報が手順2で確認した保守情報(uuid)と一致する。
-
メッセージKAVS8140-Iの出力内容のうち,保守情報が手順2で確認した保守情報(uuid)と一致する。
該当するメッセージKAVS8139-IおよびKAVS8140-Iがあるかどうかでユーザープログラムの状態を判断してください。
-
両方のメッセージがある場合,ユーザープログラムは終了しています。
-
メッセージKAVS8139-Iだけがある場合,ユーザープログラムは実行中です。
-
どちらのメッセージもない場合,ユーザープログラムは起動していません。
-