ページの先頭行へ戻る
Interstage Job Workload Server V9.3.0 運用ガイド
Interstage

3.3.1 ジョブの実行環境が異常停止した場合

ジョブの実行環境内で致命的な異常が発生した場合や、外的要因などにより、1つのジョブの実行環境だけが停止する場合があります。
ジョブの実行環境が停止すると、対象のジョブキューからジョブの実行ができなくなります。
バッチ業務運用中に、ジョブの実行環境が停止した場合の対処と再開方法を説明します。

ジョブの実行環境の停止の確認

ジョブの実行環境が異常停止する要因として以下が考えられます。

イベントチャネル(メッセージ番号がesで始まるメッセージ)、またはバッチワークユニット(メッセージ番号がEXTPやtdで始まるエラーメッセージ)のエラーメッセージとともに、異常の原因となった部分のエラーメッセージがシステムログ(Windows(R)の場合はイベントログ)に出力されます。
イニシエータが異常停止した場合、即座にエラーメッセージが出力されない場合がありますが、ジョブの実行開始や終了、ジョブステップの開始や終了などで、エラーメッセージが出力されます。


イベントチャネルを停止操作した場合、バッチワークユニットのエラーメッセージや、BTFW54017のメッセージがシステムログ(Windows(R)の場合はイベントログ)に出力されます。

バッチワークユニットを停止/強制停止操作をした場合には、BTFW54017のメッセージがシステムログ(Windows(R)の場合はイベントログ)に出力されます。

  


イベントチャネル(メッセージ番号がesで始まるメッセージ)、バッチワークユニット(メッセージ番号がEXTPやtdで始まるエラーメッセージ)のエラーメッセージについては、“Interstage Application Server メッセージ集”を参照してください。
イニシエータのエラーメッセージについては、“Interstage Job Workload Server メッセージ集”の“BTFW50000番台”を参照してください。


出力されたエラーメッセージの情報には、異常が発生したイベントチャネル、バッチワークユニット、またはイニシエータの名前が出力されます。
停止や強制停止時のメッセージには、対象のイベントチャネル、バッチワークユニット、またはイニシエータの名前が出力されます。
イベントチャネルやバッチワークユニットの名前の先頭には、イニシエータ名が付いているので、その情報をもとに、対象のイニシエータを明確にしてください。
定義済のすべてのイニシエータの状態を表示し、対象のイニシエータの状態を確認してください。

イニシエータの状態により対処と再開手順は異なります。
定義済のすべてのイニシエータの状態表示をするには、以下のコマンドで行います。

btfwiniinfo


btfwiniinfoコマンドの詳細は、“Interstage Job Workload Server リファレンス”を参照してください。


イニシエータの状態情報の表示例を、以下に示します。

InitiatorName   State              NumberOfJobs   MaxJob
---------------------------------------------------------------------------------
que001          active                        0       20
que002          inactive                      -        0

イニシエータの状態情報より、”State” が ”active” 以外になっており、”NumberOfJobs”が ”-“(*)になっていることを確認してください。
*イニシエータが稼動状態ではない場合は"-"と表示します。

3.3.1.1 イニシエータが稼働状態ではない場合の対処

イニシエータが稼働状態ではない場合は、以下の手順で対処とバッチシステムの運用を再開してください。

すべてのジョブキューを実行禁止状態にする

すべてのジョブキューを実行禁止状態にしてください。
すべてのジョブキューを実行禁止状態にする、btfwinactqコマンドの形式を以下に示します。

btfwinactq -a


btfwinactqコマンドの詳細は、“Interstage Job Workload Server リファレンス”を参照してください。

実行中のジョブの終了を待つ

ジョブキューの状態を表示して、異常が発生したジョブの実行環境で実行中のジョブを除いた、すべての実行中のジョブが終了していることを、“2.1.2.1 ジョブの稼働状態確認”の手順に従って確認してください。

バッチ受付サービスの強制停止

3.6.1.1 バッチ受付サービスの強制停止”の手順に従って停止してください。

バッチ実行サービスの強制停止

3.6.1.2 バッチ実行サービスの強制停止”の手順に従って停止してください。

バッチワークユニットの強制停止

すべてのバッチワークユニットを強制停止してください。


ジョブの実行環境の操作モードを自動モードでセットアップした場合は、ここで示す操作は不要です。バッチワークユニットは、“バッチ実行サービスの強制停止”で停止されるイニシエータと連動して停止されます。

バッチワークユニットの強制停止をする、isstopwuコマンドの形式を以下に示します。

isstopwu -c ワークユニット名

ワークユニット名は、“ジョブキュー名_CWU”です。
ジョブキュー名は、バッチ実行基盤で使用しているジョブキュー名です。


isstopwuコマンドの詳細は、“Interstage Application Server リファレンスマニュアル (コマンド編)”を参照してください。

イベントチャネルの停止

すべてのイベントチャネルを停止してください。


ジョブの実行環境の操作モードを自動モードでセットアップした場合は、ここで示す操作は不要です。イベントサービスは、“バッチ実行サービスの強制停止”で停止されるイニシエータと連動して停止されます。

イベントチャネルの停止は、イベントチャネルグループ単位に行います。
ジョブステップ用イベントチャネル、エラー用イベントチャネル、およびジョブ終了用イベントチャネルは、1つのイベントチャネルグループ内に存在するため、1回で3つのイベントチャネルが停止されます。

イベントチャネルを停止する、esstopchnlコマンドの形式を以下に示します。

esstopchnl -g イベントチャネルグループ名 -o off

イベントチャネルグループ名は、“ジョブキュー名_ChannelGR”です。
ジョブキュー名は、バッチ実行基盤で使用しているジョブキュー名です。


ジョブキュー名に英大文字を利用している場合は、ジョブキュー名にあたる部分については、英小文字で指定してください。
例えば、ジョブキュー名が“JOBQ001”の場合、“jobq001_ChannelGR”のように指定します。


esstopchnlコマンドの詳細は、“Interstage Application Server リファレンスマニュアル(コマンド編)”を参照してください。

エラーの対処

イベントチャネル、バッチワークユニット、またはイニシエータの出力したエラーメッセージの対処を行ってください。

イベントチャネルの起動

イベントチャネルを起動してください。


ジョブの実行環境の操作モードを自動モードでセットアップした場合は、ここで示す操作は不要です。イベントチャネルは、“バッチ実行サービスの開始”で開始されるイニシエータと連動して起動します。

イベントチャネルの起動は、イベントチャネルグループ単位に行います。
ジョブステップ用イベントチャネルと、エラー用イベントチャネル、およびジョブ終了用イベントチャネルは、1つのイベントチャネルグループ内に存在するため、1回で3つのイベントチャネルが起動されます。

イベントチャネルを起動する、esstartchnlコマンドの形式を以下に示します。

esstartchnl -g イベントチャネルグループ名

イベントチャネルグループ名は、“ジョブキュー名_ChannelGR”です。
ジョブキュー名は、バッチ実行基盤で使用しているすべてのジョブキュー名です。


ジョブキュー名に英大文字を利用している場合は、ジョブキュー名にあたる部分については、英小文字で指定してください。
例えば、ジョブキュー名が“JOBQ001”の場合、“jobq001_ChannelGR”のように指定します。


esstartchnlコマンドの詳細は、“Interstage Application Server リファレンスマニュアル(コマンド編)”を参照してください。

バッチワークユニットの起動

バッチワークユニットを起動します。


ジョブの実行環境の操作モードを自動モードでセットアップした場合は、ここで示す操作は不要です。バッチワークユニットは、“バッチ実行サービスの開始”で開始されるイニシエータと連動して起動します。

バッチワークユニットの起動を実施する場合は、“2.1.1.3 バッチワークユニットの起動”の手順に従って行ってください。

バッチ実行サービスの開始

2.1.1.4.1 バッチ実行サービスの開始”の手順に従って行ってください。

バッチ受付サービスの開始

2.1.1.4.2 バッチ受付サービスの開始”の手順に従って行ってください。

すべてのジョブキューを実行可能状態にする

すべてのジョブキューを実行可能状態にしてください。
すべてのジョブキューを実行可能状態にする、btfwactqコマンドの形式を以下に示します。

btfwactq -a


btfwactqコマンドの詳細は、“Interstage Job Workload Server リファレンス”を参照してください。

ジョブの実行環境の稼働状態確認

運用を再開するジョブの実行環境の稼働状態を確認します。
ジョブの実行環境の稼働状態の確認は、“2.1.1.5 バッチ実行基盤の稼働状態確認”の手順に従って行ってください。

3.3.1.2 イニシエータが稼働状態の場合の対処

イニシエータが稼働状態の場合は、以下の流れでの確認と対処が必要です。

3.3.1.2.1 イベントチャネルの状態確認と対処

以下に示す項目に該当するものがないかどうかを、確認してください。

ジョブの実行環境で使用するイベントチャネルの状態の確認を行ってください。
ジョブの実行環境で使用するイベントチャネルには以下があります。

資源名

イベントチャネルグループ名

イベントチャネル名

ジョブステップ用イベントチャネル

ジョブキュー名_ChannelGR

ジョブキュー名_CSTEPchnl

エラー用イベントチャネル

ジョブキュー名_ERRORchnl

ジョブ終了用イベントチャネル

ジョブキュー名_JobCOMPchnl

ジョブキュー名は、停止したジョブの実行環境のジョブキュー名です。

イベントチャネルの状態を確認するには、以下のesmonitorコマンドで行います。

esmonitor


esmonitorコマンドの詳細は、“Interstage Application Server リファレンスマニュアル(コマンド編)”を参照してください。


イベントチャネルが停止していない場合、以下の対処は必要ありません。次の手順“3.3.1.2.2 バッチワークユニットの状態確認と対処”を実施してください。

イベントチャネルが停止した場合、以下の手順で対処と再開を行ってください。

すべてのジョブキューを実行禁止状態にする

すべてのジョブキューを実行禁止状態にしてください。
すべてのジョブキューを実行禁止状態にする、btfwinactqコマンドの形式を以下に示します。

btfwinactq -a


btfwinactqコマンドの詳細は、“Interstage Job Workload Server リファレンス”を参照してください。

実行中のジョブの終了を待つ

ジョブキューの状態を表示して、異常が発生したジョブの実行環境で実行中のジョブを除いた、すべての実行中のジョブが終了していることを、“2.1.2.1 ジョブの稼働状態確認”の手順に従って確認してください。

バッチ受付サービスの強制停止

3.6.1.1 バッチ受付サービスの強制停止”の手順に従って停止してください。

バッチ実行サービスの強制停止

3.6.1.2 バッチ実行サービスの強制停止”の手順に従って停止してください。

エラーの対処

異常停止したイベントチャネルに対して、対応するエラーメッセージの対処を行ってください。

イベントチャネルの起動

イベントチャネルを起動してください。


ジョブの実行環境の操作モードを自動モードでセットアップした場合は、ここで示す操作は不要です。イベントチャネルは、“バッチ実行サービスの開始”で開始されるイニシエータと連動して起動します。

イベントチャネルの起動は、イベントチャネルグループ単位に行います。
ジョブステップ用イベントチャネルと、エラー用イベントチャネル、およびジョブ終了用イベントチャネルは、1つのイベントチャネルグループ内に存在するため、1回で3つのイベントチャネルが起動されます。

イベントチャネルを起動する、esstartchnlコマンドの形式を以下に示します。

esstartchnl -g イベントチャネルグループ名

イベントチャネルグループ名は、“ジョブキュー名_ChannelGR”です。
ジョブキュー名は、バッチ実行基盤で使用しているすべてのジョブキュー名です。


ジョブキュー名に英大文字を利用している場合は、ジョブキュー名にあたる部分については、英小文字で指定してください。
例えば、ジョブキュー名が“JOBQ001”の場合、“jobq001_ChannelGR”のように指定します。


esstartchnlコマンドの詳細は、“Interstage Application Server リファレンスマニュアル(コマンド編)”を参照してください。

バッチワークユニットの起動

バッチワークユニットを起動します。


ジョブの実行環境の操作モードを自動モードでセットアップした場合は、ここで示す操作は不要です。バッチワークユニットは、“バッチ実行サービスの開始”で開始されるイニシエータと連動して起動します。

バッチワークユニットの起動を実施する場合は、“2.1.1.3 バッチワークユニットの起動”の手順に従って行ってください。

バッチ実行サービスの開始

2.1.1.4.1 バッチ実行サービスの開始”の手順に従って行ってください。

バッチ受付サービスの開始

2.1.1.4.2 バッチ受付サービスの開始”の手順に従って行ってください。

すべてのジョブキューを実行可能状態にする

すべてのジョブキューを実行可能状態にしてください。
すべてのジョブキューを実行可能状態にする、btfwactqコマンドの形式を以下に示します。

btfwactq -a


btfwactqコマンドの詳細は、“Interstage Job Workload Server リファレンス”を参照してください。

ジョブの実行環境の稼働状態確認

運用を再開するジョブの実行環境の稼働状態を確認します。
ジョブの実行環境の稼働状態の確認は、“2.1.1.5 バッチ実行基盤の稼働状態確認”の手順に従って行ってください。

3.3.1.2.2 バッチワークユニットの状態確認と対処

イベントチャネルに問題がなかった場合は、バッチワークユニットの対処を行います。

バッチワークユニットのエラーと対処

システムログ(Windows(R)の場合はイベントログ)にバッチワークユニットに対応するエラーメッセージが出力されます。対象のバッチワークユニットに対して、エラーメッセージの対処を行ってください。


バッチワークユニット内の実行プロセスが異常停止した場合や、バッチワークユニットが停止した場合も、その旨のエラーメッセージがシステムログ(Windows(R)の場合はイベントログ)に出力されます。

バッチワークユニットの状態確認

上記の対処を行ったあと、バッチワークユニットの状態が以下の場合は、引き続き対処が必要です。

対象のバッチワークユニットの状態を以下のislistwuコマンドで確認します。

islistwu -a -e


islistwuコマンドの詳細は、“Interstage Application Server リファレンスマニュアル(コマンド編)”を参照してください。


バッチワークユニットで異常が発生した場合、バッチワークユニットのプロセス縮退運用有無の設定により、バッチワークユニットの縮退運用になる場合があります。


バッチワークユニットが縮退運用中状態の場合の対処およびバッチワークユニットが停止した場合の対処について以下に示します。

バッチワークユニットが縮退運用中状態の場合の対処

バッチワークユニットのジョブの多重度の復元を行って対処します。
バッチワークユニットが縮退運用中状態の場合、islistwuコマンドでは対象のバッチワークユニットの”status”が”degenerate”(縮退運用中状態) 表示されます。
縮退運用中状態のバッチワークユニットは、isrecoverwuコマンドにより復元することができます。(ジョブの多重度が元にもどります。)
isrecoverwuコマンドの形式を以下に示します。

isrecoverwu ワークユニット名

ワークユニット名は、“ジョブキュー名_CWU”です。
  ジョブキュー名 : 縮退運用中状態の実行環境のジョブキュー名です。


isrecoverwuコマンドの詳細は、“Interstage Application Server リファレンスマニュアル (コマンド編)”を参照してください。

バッチワークユニットが停止した場合の対処

対象のバッチワークユニットを起動します。
バッチワークユニットを起動する、isstartwuコマンドの形式を以下に示します。

isstartwu ワークユニット名

ワークユニット名は、“ジョブキュー名_CWU”です。
  ジョブキュー名 : 停止したジョブの実行環境のジョブキュー名です。


バッチワークユニットの起動については、“2.1.1.3 バッチワークユニットの起動”を参照してください。

3.3.1.3 ジョブの扱い

ジョブの実行環境が停止するときに実行中だったジョブの扱いについて説明します。
異常停止した箇所によりジョブの扱いが変わります。

イニシエータが異常停止した場合

バッチ受付サービスが異常停止した場合の “3.3.3.1 ジョブの扱い”と同じです。

運用者は“3.4.1 ジョブが異常終了した場合の対処”の手順に従ってください。

イニシエータが停止していない場合

以下のジョブの種類ごとに説明します。

デマンドジョブ

デマンドジョブの扱いについて説明します。
実行中だったジョブは、以下のジョブ終了コードで異常終了します。

ジョブ終了コード

意味

0x60000999

バッチシステムエラー

付録B ジョブログ”には実行したところまでのジョブの実行結果が出力されます。
運用者は“3.4.1 ジョブが異常終了した場合の対処”の手順に従ってください。

スケジュールジョブ

Systemwalker Operation Managerよりジョブの実行依頼したスケジュールジョブに対するジョブの扱いについて説明します。
実行中だったジョブは、以下のように扱われます。

Systemwalker Operation Managerクライアントの表示

バッチ実行基盤のジョブの扱い

ジョブの終了コード

前回履歴

ジョブ終了コード

ジョブログ

255
(ジョブ終了コードが256以上の場合は、255となります)

出力します

0x60000999
(バッチシステムエラー)

出力します

Systemwalker Operation Manager クライアントの[前回履歴]シートや、[ジョブの出力情報]ウィンドウによってジョブログを参照することができます。


Systemwalker Operation Manager クライアントについては、“Systemwalker Operation Manager 使用手引書”を参照してください。

付録B ジョブログ”には実行したところまでのジョブの実行結果が出力されます。
運用者は“3.4.1 ジョブが異常終了した場合の対処”の手順に従ってください。



バッチワークユニットの状態により、ジョブが終了しない場合があります。ジョブが終了しない場合は、“3.4.3 ジョブが実行終了遅延した場合の対処”にしたがって対処してください。