状態の概要

  1. Enterprise Managerコンソールの「設定」メニューから、「マネージャの管理」を選択します。

  2. 「状態の概要」サブメニューを選択します。

「状態の概要」ページの「ジョブ・システム・ステータス」リージョンに、次の情報が表示されます。

  • ステップ・スケジューラ・ステータス

    ジョブ・ステップ・スケジューラは、実行準備ができているジョブ・ステップを処理します。ジョブ・ステップ・スケジューラが警告モードまたはエラー・モードで実行中であることがステータスに示される場合、ジョブ・システムは正常に機能していません。この場合、ジョブ・システムをフェイルオーバー・モードで実行することができ、ジョブ・ステップ・スケジューラによって定期的に実行されるタスクをジョブ・ディスパッチャ・プロセスが実行することもできます。ただしジョブ・システムは、本来の能力よりも低い状態で実行されている場合があるため、この状況の解決は有益です。

    次のようなメッセージが表示される場合があります。

    • ステップスケジューラのためのDBMS_SCHEDULERジョブが見つかりません

      このメッセージは非常にまれであり、通常は潜在的に重大な問題を示します。ジョブが不注意または特別な処理によって削除された場合があります。

      (パッチのインストール、たとえば、すべてのDBMS_SCHEDULERジョブを再利用する必要があります)。ここでは自動的な解決策はなく、ケース・バイ・ケースの対処が必要になります。

    • ステータスのチェックが失敗しました

      このようなことはほとんど発生しません。通常はエラー・メッセージが表示されます。このエラーがステータスを解釈できないことを示す場合は、自然に表示されなくなります。

    • DBMS_SCHEDULERが無効です

      環境で、すべてのDBMS_SCHEDULERジョブが無効になっています。インストールが進行中である場合を除き、発生しないはずです。DBMS_SCHEDULERプロセスを開始することで解決します。

    • すべてのジョブ・キュー・プロセスが使用中です

      DBMS_SCHEDULERプロセスがすべて使用されています。リポジトリRDBMSのパラメータjob_queue_processesを増やします。

    • すべてのスレーブ・プロセスが使用中です

      原因は前述の状況と同様です。この状況では、DBMS_SCHEDULERのMAX_JOB_SLAVE_PROCESSESを増やす必要があります。

    • すべてのセッションが使用中です

      DBMS_SCHEDULERに利用可能なRDBMSセッションがありません。RDBMSのPROCESSESを増やします。

    • 遅延の理由が不明です

      これは通常、前述の基準のいずれも満たさなかったために表示される、最も一般的な警告です。利用可能なワーカーよりも作業が多いために、ディスパッチャが過負荷であるだけの場合があります。この場合はバックログを確認します。この状況は自動的に解消されるはずですが、引続き残る場合は、ジョブ・システムに利用可能なワーカーの数がサイトで処理されたことのある負荷に対して不十分であることが考えられます。

  • ジョブ・バックログ

    ジョブ・バックログは、その予定時刻を過ぎてもまだ実行されていないジョブ・ステップの数を示します。この数が大きく、かつ長期間減少しない場合、ジョブ・システムは正常に機能していません。この状況は通常、ジョブ・エンジンのリソースが、システムまたはユーザー・アクティビティによるジョブの処理量を満たすことができない場合に発生します。

    それらが長期間スタックされることによる特定ジョブの異常な処理のために、バックログが高くなる場合があります。スタック・ジョブのワーカー・スレッドに関する詳細は、次の手順を実行してください。

    1. 「状態の概要」ページの「OMSとリポジトリ」メニューから「モニタリング」「診断メトリック」の順に選択します。

    ジョブ・システムに長期間バックログがある場合、またはバックログを速く処理する場合、次のパラメータにemctl set propertyコマンドを設定できます。これらの設定は、より多くの負荷をサポートできる十分なデータベース・リソースがあることを前提としています。これらのパラメータは2 OMSノードのある大規模な構成で必要となる場合があります。

    表15-1 大規模なジョブ・システムのバックログ設定

    パラメータ

    oracle.sysman.core.jobs.shortPoolSize

    50

    oracle.sysman.core.jobs.longPoolSize

    24

    oracle.sysman.core.jobs.longSystemPoolSize

    20

    oracle.sysman.core.jobs.systemPoolSize

    50

    oracle.sysman.core.conn.maxConnForJobWorkers

    144

    この設定はOMSサーバーの144 *のデータベースに設定するプロセスの増加が必要な場合があります。