この章では、Oracle Enterprise Schedulerが正しくインストールされたことを確認する方法について説明します。
この章では、次の項目について説明します。
Oracle Enterprise Schedulerのヘルス・チェックを使用すると、Webブラウザを使用してOracle Enterprise Schedulerのインストールを検証できます。ヘルス・チェックWebページにより、Oracle Enterprise Schedulerが想定どおり機能することを検証するためにスケジュールされた単純なジョブが発行されます。
Webブラウザで、Javaヘルス・チェック・サーブレットにアクセスします。ヘルス・チェック・ページにアクセスできるのは、管理者権限のあるユーザーのみです。
Oracle Enterprise Schedulerのインストールを検証する手順は、次のとおりです。
Webブラウザで次のURLを入力します。
http://<hostName>:<port>/EssHealthCheck/checkHealth.jsp
ここで、hostNameはOracle Enterprise Schedulerがインストールされているサーバーであり、portはポート番号です。
Oracle Enterprise Schedulerクラスタを検証するには、次のURLを使用します。
http://<hostName>:<port>/EssHealthCheck/diagnoseHealth.jsp
図2-1に示すように、Oracle Enterprise Schedulerの診断ヘルス・チェック・ページが表示されます。
Oracle WebLogic Serverの管理者ユーザー名およびパスワードを使用して、診断サーブレットにログインします。
「ヘルス・チェック」ボタンをクリックして、インストールを検証します。
アプリケーションから、ヘルス・チェック・サーブレットにプログラムによりアクセスします。ヘルス・チェック・ページにアクセスできるのは、管理者権限のあるユーザーのみです。
Oracle Enterprise Schedulerのインストールをプログラムにより検証する手順は、次のとおりです。
次のURLにアクセスします。
http://<hostName>:<port>/EssHealthCheck/checkHealth
ここで、hostNameはOracle Enterprise Schedulerがインストールされているサーバーであり、portはポート番号です。
表2-1に示すように、HTTPレスポンス・コードを使用して、Oracle Enterprise Schedulerのインストールのヘルスを測定します。
表2-1 HTTPレスポンス・コード
| レスポンス・コード |
Oracle Enterprise Scheduler ステータス・コード |
コメント |
|---|---|---|
|
|
Oracle Enterprise Schedulerは起動され実行中です。 |
テスト・ジョブが発行され、デフォルトの期間内に成功しました。 |
|
|
Oracle Enterprise Schedulerは起動され実行中ですが、処理の遅延が発生しました。
|
テスト・ジョブは発行されましたが、デフォルトの期間内に完了できませんでした。 |
|
|
Oracle Enterprise Schedulerのインストールにエラーがあります。 |
ジョブの発行または実行中にエラーが発生しました。 |
ヘルス・チェック・メカニズムは、HttpServletを拡張するESSHealthcheckサーブレットで構成されています。メタデータとパッケージングの依存関係は、Webサービス・アプローチの場合と同じです。
メタデータ・サービスは、ジョブ・タイプやジョブ定義などのメタデータ・オブジェクトを取得するために使用します。必要なメタデータ・ファイルは、EssHealthcheckJobType.xmlとEssHealthcheckJobDefinition.xmlです。これらはess-app-meta.marとしてパッケージ化され、これ自体がファイルeas-app.earにパッケージ化される必要があります。ess-health-check.warとしてアーカイブされたサーブレットは、ジョブをスケジュールするためにランタイム・メタデータにアクセスします。
|
注意: すべてのメタデータをリポジトリに登録するよう、必ずファイル |
例2-1に、ファイルess-app.ear、ess-ejb.jarおよびess-app-meta.marの構造を示します。
例2-1 ヘルス・チェック・ファイルの構造
ESS-APP.EAR
| |
| |__APP-INF/classes/META-INF/ESSWebService.wsdl
|__ess-ejb.jar
|__ess-mbeans.war
|__ess-ws.war
|__ess-ra.rar |
|__ess-health-check.war
|__WEB-INF
|__web.xml
|__weblogic.xml
|__classes/oracle/ess/healthcheck/view/EssHealthcheckServlet.class
|__classes/oracle/ess/healthcheck/view/EssConsoleServlet.class
|__classes/oracle/ess/healthcheck/view/EssClusterHealthcheckServlet.class
|__checkHealth.jsp
|__diagnoseHealth.jsp
|__essVersion.jsp
ESS-EJB.JAR
Along with the existing set of files, oracle/ess/healthcheck/core/EssHealthcheckJob.class is added to the ess-ejb.jar.
ESS-APP-META.MAR
oracle/as/ess/essapp/internal/WorkAssignment/ESSInternalWA.xml
oracle/as/ess/essapp/internal/Workshift/ESSInternalWS.xml
oracle/as/ess/essapp/healthcheck/Jobs/EssHealthcheckJobDefn.xml
oracle/as/ess/essapp/batchdelete/Jobs/BatchDeleteJob.xml
oracle/as/ess/essapp/healthcheck/JobType/EssHealthcheckJobType.xml
oracle/as/ess/essapp/batchdelete/JobType/BatchDeleteJobType.xml
ヘルス・チェック・サーブレットにより、HTTPリクエストの一部としてOracle Enterprise Schedulerを使用した単純なジョブがスケジュールされます。数秒後、サーブレットによりRuntimeServiceBean.getRequestState()がコールされ、ジョブのステータスが確認されてサーブレット・コード内でレスポンス・メッセージが作成されます。その後、サーブレットはジョブの成功または失敗を示すレスポンスを返します。
サーブレットは、ジョブが終了状態に到達するか、または10秒間実行されるか、そのいずれか最初に発生した状況を待機します。
ジョブが10秒未満で終了状態に到達した場合、ジョブの状態は成功となります。
ジョブの終了状態が10秒以内に変更しない場合、ジョブの状態は成功となります。ただし、ジョブは実行されていないジョブとしてリストされます。これは、ジョブの実行にいくらか時間がかかることがあり、システムがオーバーロードされている場合があるためです。
ジョブの発行または実行で問題が発生すると、ジョブの状態は失敗となります。
単一のノードまたはクラスタのヘルスを確認する場合は、ヘルス・チェックが発行されたサーバーに固有のプロセッサによって、ヘルス・チェック・リクエストが処理されます。これは、SYS_requestedProcessorというシステム・プロパティを使用して行われます。システム・プロパティの詳細は、『Oracle Fusion Middleware Oracle Enterprise Scheduler管理者ガイド』の「Oracle Enterprise Schedulerジョブの作業の管理」、ジョブ・セットの作成または編集に関する項の表を参照してください。