対象バージョンレベル
Windows版:V5.0L10以降
以下のすべての対処に該当していないかチェックしてください。
対処1
確認ポイント
ジョブが入力待ち状態になっていませんか
異常時にメッセージボックスが出力されるようなアプリケーションではありませんか
原因
エラー発生時にメッセージボックスを出力し、[OK]ボタンの入力待ち状態になっている可能性があります。または、バッチファイル中に、対話型のコマンド(edlinなど)や入力要求を行うコマンド(format、backup、pauseなど)が定義されている可能性があります。
対処方法
以下の対処を検討してください。
アプリケーションに、入力を要求するようなコマンド、機能が含まれている場合は、それらのコマンド、機能が動作しないようにアプリケーションを修正できないか検討してください。
異常時に入力待ちのまま停止してしまう可能性があるアプリケーションの場合、ジョブがいつまでも終了しないため、ジョブが一定時間を経過したら異常終了させる設定を実施することを検討してください。
例えば、[キューの編集]ウィンドウの[ジョブ経過時間を制限する]において、制限値を設け、ジョブをそのキューで実行させることで、長時間走行しているジョブを異常終了扱いとすることを検討してください。
対話的なジョブを起動する場合は、業務連携のクライアントアプリケーション起動コマンドを利用することも検討してください。
参考
Systemwalker Operation Managerのジョブは、画面が見えない環境(バックグラウンド)で動作しているため、[OK]ボタンを押すといった、画面への入力要求にこたえることができません。このため、入力待ちに陥ったジョブは終わらなくなります。
対処2
確認ポイント
常駐アプリケーションを起動していませんか
原因
Systemwalker Operation Managerから起動されたジョブは、そのジョブの子孫プロセスまで、動作状況が監視されています。バッチファイルから、常駐プロセスなどを起動し、その後、バッチファイル自身は終了するといった構成のジョブであった場合でも、そのバッチファイルの終了が、ジョブの終了になるわけではありません。
対処方法
Systemwalker Operation Managerとしては、子プロセス、孫プロセス、ひ孫プロセスといった、ジョブから起動されたすべてのプロセスが終了するまでジョブは終了しません。
常駐プロセスなどを起動依頼するバッチなどは、Systemwalker Operation Managerから起動すると、ずっと実行中のまま終了しない動作となります。実行中のままの動作を前提とした運用とするか、Systemwalker Operation Manager以外からこのようなアプリケーションを起動する運用とするかご検討ください。
対処3
確認ポイント
アプリケーションが無限ループしていませんか
原因
ジョブが意図しないエラーを起こし、その結果、本来は走行しないはずの異常系ルートで無限ループしている可能性があります。
対処方法
タスクマネージャなどでジョブ自身のCPU時間が増加していないか確認してください。
ジョブとして起動されたアプリケーション自体が無限ループしている場合、その原因をSystemwalker Operation Managerの動作の観点で調べることはできません。
まず、動作環境に問題がないかを確認し、環境に問題がないようであれば、アプリケーションの動作の観点でデバッグしてください。
対処4
確認ポイント
ジョブの子プロセスとして、conime.exeが起動されていませんか
原因
OSの仕様により、conime.exe(コンソールIME)が常駐していない場合に、conime.exeが必要となるアプリケーションを実行した場合、conime.exeが子プロセスとして起動されます。conime.exeは常駐するプロセスのため、プロセスが残り、ジョブが終了しないと考えられます。
対処方法
Microsoft社の技術情報 814379を参照し、適切な対処を実施してください。
具体的には、下記のような対処が必要となります。
conime.exeが起動しないようにレジストリ設定を行う。
conime.exeをジョブ起動前に常駐させておく。
システム起動時またはログオン時に、以下のようなバッチファイルが実行されるように設定してください。(タスクスケジューラまたはスタートアップに、バッチファイルを登録してください)
[バッチファイルの例]
REM ping.exeでスリープをシミュレーションする |