1

Oracle スケジューラ ジョブ チェーン (11gR2) からの例外 (ステップの失敗) を処理する最善の方法を見つけたいと考えています。

20 のステップを含むチェーンがあるとします。いずれかの時点でチェーンが FAILURE で終了した場合、一連のアクションを実行したいと思います。これらのアクションは、個々のステップではなく、そのチェーンに固有のものです (各ステップの手順は、スケジューラーの外部または他のチェーンで使用される場合があります)。

11gR2 のおかげで、チェーンの FAILURE に関する電子メール通知をセットアップできるようになりましたが、これは実行する必要があるいくつかのアクションの 1 つにすぎないため、部分的な解決策にすぎません。

私が考えることができる唯一のことは、別のポーリングジョブが私のチェーンのステータスをx分ごとにチェックし、チェーンの最新のジョブがFAILUREステータスで終了したことを確認したときに失敗アクションを起動することです。しかし、これはせいぜいハックです。

特定のジョブチェーンの例外を処理する最良の方法は何ですか?

ありがとう

4

1 に答える 1

1

一般に、ジョブの例外を処理する最も柔軟な方法は、ジョブの例外監視手順を使用し、ジョブのステータスが変化したときにイベントを生成するようにジョブを定義することです。ジョブ例外監視手順はscheduler event queueループ内を監視し、定義した方法でイベントに反応する必要があります。

そうすることで、チェーン内のほぼすべてのジョブ ステップに対して失敗ステップを作成する負担がなくなります。これは非常に強力なメカニズムです。

時間の不足によって:本には、イベント ベースのスケジューリングの完全なシナリオがあります。後で1つ掘り下げます。

于 2011-12-15T07:01:11.650 に答える