Interstage Job Workload Server 運用ガイド
目次 前ページ次ページ

第3章 異常時の対処> 3.4 ジョブの異常

3.4.2 ジョブが実行開始遅延した場合の対処

ジョブを投入したが、ジョブが実行中に遷移しない場合の対処を説明します。

運用者は、btfwjobinfoコマンドで実行開始遅延しているジョブのジョブキュー名、ジョブ名、ジョブ番号を確認します。
運用者はジョブが実行開始遅延していることと、上記で確認したジョブ情報をシステム管理者に連絡し、調査を依頼します。


btfwjobinfoコマンドについては、“Interstage Job Workload Server リファレンス”を参照してください。

システム管理者は以下の手順で原因を調査します。

また、以下の場合を確認して対処します。

■ジョブの実行環境が正常に運用開始されているか

システム管理者は、対象のジョブキューに対して、btfwqinfoコマンドの詳細表示を行い、「ジョブキューの現在有効となっているジョブの多重度」(Current)が"0"になっていないか確認します。


btfwqinfoコマンドについては、“Interstage Job Workload Server リファレンス”を参照してください。

■ジョブキュー内の実行中ジョブに異常はないか

システム管理者は以下の手順で、ジョブキュー内の実行中ジョブの確認を行います。

  1. btfwjobinfoコマンドで対象のジョブキューの実行中ジョブの一覧を表示します。
  2. 実行中ジョブごとに、btfwjobinfoコマンドの詳細情報を表示し、「ジョブの実行開始日時」を確認します。
  3. 確認した結果、長い時間実行しているジョブを中心に、異常(無限ループなど)が発生していないことを対象ジョブの運用者に確認します。
  4. 無限ループなどの原因により対象のジョブキューが特定のジョブに占有されている場合は、対象ジョブの運用者にキャンセルするなどの対処を依頼してください。

システム管理者は、運用者より依頼された対象ジョブの以下の情報を収集します。

情報を収集するには、btfwjobinfoコマンドで対象のジョブキューのジョブの一覧を表示し、以下の項目を確認します。

Priority(実行優先度)の値が高いジョブほど優先的に実行されます。また、同じPriority(実行優先度)の場合には、SubmitTime(ジョブ投入日時)の早いジョブが優先的に実行されます。
この結果を運用者に連絡し、実行されるまで待つよう指示します。

ジョブキュー内の実行中ジョブの確認において、実行中ジョブに異常が発生していない状態で、大量のジョブが実行待ちでキューイングされている場合には、恒久的な問題があるため“恒久的な問題の確認と対処”を行ってください。

◆恒久的な問題の確認と対処

恒久的な問題については、対象ジョブキューに対して前回の“実行履歴ログ”より以下について確認してください。

一般的な原因としては、バッチ業務追加や変更により、ジョブ数、データ量が増加した影響が考えられます。
前回実績との確認方法は、問題が発生していない日と発生した日の“実行履歴ログ”をもとに、問題発生した時間帯付近を比較して、投入ジョブ数、実行ジョブ名、各ジョブの実行時間など違いを確認してください。
違いがあった場合には、原因を調査し対象ジョブキューに関連する、バッチシステム環境の設定の見直しを行い、必要があれば“バッチサーバ環境の変更”を行ってください。

■カスケードジョブの場合

カスケードジョブが動作する予定のジョブキューが、他のジョブの動作中でプロセスを使用しているためにカスケード結合数分の空いているプロセスが確保できないことが考えられます。
ジョブ情報の表示、イニシエータの状態表示、およびジョブキュー情報の表示を行い、空きプロセス数を確認してください。


カスケード結合数は、カスケード開始節が指定されたジョブステップと、カスケード終了節が指定されたジョブステップを含む、カスケード節のジョブステップの数です。

◆ジョブ情報の表示

btfwjobinfoコマンドでジョブ情報の表示を行います。
カスケードモードで動作しているジョブのジョブ情報の表示は以下のように出力されます。

ジョブの詳細情報

表示項目

内容

Process Number

ジョブを実行しているプロセス数です。稼働状態ではない場合は“-”を1文字表示します。

◆イニシエータの状態表示

btfwiniinfoコマンドで“-m”オプションを指定して、イニシエータの状態表示を行います。
通常のジョブは、1つのジョブに対して1つのアプリケーションプロセスで実行されますが、カスケードモードの場合、1つのジョブに対して、複数のアプリケーションプロセスで実行されます。
ジョブ数がアプリケーションプロセス数と同等の意味にならないため、イニシエータ一覧情報、および、イニシエータ詳細情報の表示項目には、実行中のプロセス数を意味する以下の項目が出力されます。

イニシエータ一覧情報

表示項目

内容

NumberOfProcesses

イニシエータで実行中のプロセス数です。稼働状態ではない場合は“-”を1文字表示します。

イニシエータ詳細情報

表示項目

内容

Number of Processes

イニシエータで実行中のプロセス数です。稼働状態ではない場合は“-”を1文字表示します。

◆ジョブキュー情報の表示

btfwqinfoコマンドで“-m”オプションを指定して、ジョブキュー情報の表示を行います。
通常のジョブは、1つのジョブに対して1つのアプリケーションプロセスで実行されますが、カスケードモードの場合、1つのジョブに対して、複数のアプリケーションプロセスで実行されます。ジョブ数がアプリケーションプロセス数と同等の意味にならないため、ジョブキュー詳細情報の表示項目に実行中のプロセス数を意味する以下の項目が出力されます。

ジョブキュー詳細情報

表示項目

内容

[Number of Processes]

実行プロセス数です。ただし、バッチワークユニットが停止、または、イニシエータが停止している場合、“-”を1文字表示します。
Exec:ジョブが実行中のプロセス数です。(使用プロセス数)
Wait:ジョブが実行されていないプロセス数です。(空きプロセス数)

ジョブキューに、実行しようとしているカスケードジョブで必要なプロセス数の空きがなかった場合は、実行中のジョブの終了を待つか、カスケードジョブステップ数を減らすか、ジョブキューのジョブの多重度を見直してください。ジョブキューの設計については、“Interstage Job Workload Server セットアップガイド”を参照してください。


btfwjobinfoコマンド、btfwiniinfoコマンドおよびbtfwqinfoコマンドについては、“Interstage Job Workload Server リファレンス”を参照してください。

目次 前ページ次ページ

Copyright 2009 FUJITSU LIMITED