プライマリ・コンテンツに移動
Oracle® Fusion Middleware Oracle Service Busの管理
12c (12.1.3)
E53003-05
目次へ移動
目次

前
次

14 ビジネス・サービスのエンドポイントURIのモニターおよび管理

この章では、再試行の構成、応答していないエンドポイントのオフラインとしてのマーク、エンドポイントのメトリックの表示、エンドポイントのステータスに基づいたアラートのトリガーを含む、ビジネス・サービスでのエンドポイントURIの管理方法について説明します。

この章の構成は、次のとおりです。

14.1 エンドポイントURIの管理について

実行時に各エンドポイントURIのメトリックをモニターすることで、それらすべてのエンドポイントが期待したとおりに実行していることを確認できます。

エンドポイントURIに問題が見つかったときには、そのURIをオフラインとしてマークできます。これにより、そのエンドポイントURIに対するアクセスの試行が繰り返されることを避けられます。また、応答しないURIをオフラインとしてマークするように、ビジネス・サービスを構成することもできます。

14.1.1 エンドポイントURIについて

エンドポイントURIとは、ビジネス・サービスがアクセスする外部サービスのURLです。Service Busでは、1つのビジネス・サービスに対して、少なくとも1つのエンドポイントURIを定義する必要があります。1つのビジネス・サービスに対して複数のエンドポイントURIを定義する場合は、ロード・バランシング・アルゴリズムを定義して、ビジネス・サービスがエンドポイントURIへのアクセスを試行する方法を制御します。ビジネス・サービスでは、次のいずれかのロード・バランシング・アルゴリズムを使用できます。

  • ラウンド・ロビン

  • ランダム

  • ランダムな重みベース

  • なし

ビジネス・サービスの構成時には、再試行を処理する方法も構成できます。詳細は、『Oracle Service Busでのサービスの開発』のビジネス・サービスのURI再試行についてに関する項を参照してください。

14.1.2 オフラインおよびオンラインのエンドポイントURI

ビジネス・サービスは、応答しないURIにオフラインのマークを付けるように構成できます。これにより、ビジネス・サービスが応答しないURIにアクセスの試行を繰り返さないようにして、応答しないURIにアクセスを試行することで発生する通信エラーを回避します。Service BusでエンドポイントURIに自動的にオフラインのマークが付けられた場合、指定した時間の経過後にService Busでオンラインに戻すことも、手動でステータスを変更するまでService Busでオフラインのままにしておくこともできます。エンドポイントURIのステータスは、Fusion Middleware ControlまたはパブリックAPIを使用して、手動でオンラインまたはオフラインに変更できます。クラスタ・ドメインのエンドポイントURIをオンラインとしてマークすると、すべての管理対象サーバーのエンドポイントURIがオンラインとしてマークされます。

Service Busは、次のいずれかの場合に、自動的にエンドポイントURIにオンラインのマークを付けます。

  • ビジネス・サービスにエンドポイントURIを追加する。

  • サーバーを再起動する。

  • 無効になっているサービスを有効にする。

  • サービスの名前を変更するか、サービスを移動する。

  • 構成した再試行間隔の期間が経過すると、ビジネス・サービスはuriに正常にアクセスできます。

応答しないURIに自動的にオフラインのマークを付けるビジネス・サービスを構成するときには、この状態を一時的な状態にすることも、永続的な(つまり、手動でステータスを更新するまで続く)状態にすることもできます。

詳細は、「操作設定とグローバル設定の構成」を参照してください。

14.1.2.1 一時的なオフライン・エンドポイントURIについて

ビジネス・サービスが短い時間間隔で自動的に同じエンドポイントを再試行するようにするには、エンドポイントURIを一時的にオフラインとしてマークします。ユーザーが手動でリセットするまで、ビジネス・サービスがエンドポイントURIをオフラインとして処理するようにするには、エンドポイントURIを永続的にオフラインとしてマークします。

一時的なオフラインのマークが付けられている場合、エンドポイントURIのステータスは、通信エラーの発生時にオフラインに変更されます。再試行間隔の期間が経過すると、ビジネス・サービスは新しい要求を処理するために、このエンドポイントURIへのアクセスを試行します。この試行が正常に実行された場合、エンドポイントURIは、再びオンラインとしてマークされます。失敗する場合、URIは再試行間隔の期間中、再びオフラインとしてマークされ、サイクルが繰り返されます。この構成は、通信エラーが一時的なもので、自動的に修復する場合に役立ちます。たとえば、一時的なオーバーロードの場合、通信エラーは発生しますが、エンドポイントは自動的に正常動作に復帰するため、手動で介入する必要はありません。

14.1.2.2 永続的なオフライン・エンドポイントURIについて

永続的なオフラインのマークを付けると、エンドポイントURIのステータスは通信エラーの発生時にオフラインに変化します。このステータスは、そのエンドポイントURIに手動で再度オンラインのマークを付けるまで維持されます。この構成は、手動介入によって解決する必要があるエンドポイントURIの問題に起因する通信エラーが発生した場合に役立ちます。

修正作業を行って手動でURIをオンラインとしてマークするまで、応答しないURIをオフラインにしておく場合は、再試行間隔を設定しません。たとえば、再試行間隔をゼロにすると、エンドポイントが永続的にオフラインになります。

14.1.2.3 クラスタ環境のオフラインURI

管理対象サーバーをホストしているマシンでは、ネットワークの問題に起因する通信エラーが発生する可能性があります。ビジネス・サービスは、このようなイベントについては、(アクセスしているリモート・エンドポイントが応答していても)エンドポイントURIが応答していないと解釈します。エンドポイントURIが応答していないために、通信エラーが発生する場合もあります。

最初のケースでは、URIは、(ネットワークの問題があるマシン上の)1つのサーバーでのみオフラインとしてマークされ、クラスタ内のその他のサーバーではすべてオンラインとしてマークされます。「特定のサーバーで評価する」句に基づくSLAアラート条件ではアラートが生成されますが、「すべてのサーバーで評価する」句に基づくアラート条件ではアラートは生成されません。

2番目のケースでは、URIは、すべての管理対象サーバーでオフラインとしてマークされます(各サーバーがそのエンドポイントへのアクセスを試行するたびに1つずつマークされます)。各管理対象サーバーがエンドポイントURIをオフラインとしてマークするたびに、「特定のサーバーで評価する」に基づくアラート・ルール条件が満たされ、アラートが生成されます。クラスタ・ドメイン内の最後のサーバーのエンドポイントURIをオフラインとしてマークすると、「すべてのサーバーで評価する」に基づくアラート・ルール条件も満たされ、このアラートも生成されます。

クラスタリングされたドメイン用:

  • 「サーバー」フィールドが「クラスタ」または管理対象サーバーの1つに設定されている場合、Onlineステータスは、クラスタ全体または選択した管理対象サーバーですべてのエンドポイントURIがオンラインであることを示します。

  • 「サーバー」フィールドが「クラスタ」または管理対象サーバーの1つに設定されている場合、Offlineステータスは、クラスタ全体または選択した管理対象サーバーですべてのエンドポイントURIがオフラインであることを示します。

  • 「サーバー」フィールドが「クラスタ」に設定されている場合、Partialステータスは、少なくとも1つのサーバー上でビジネス・サービスの1つ以上のエンドポイントURIがオフラインであるか、エンドポイントURIの少なくとも1つがすべてのサーバーでオフラインであるが、同じビジネス・サービスの他のエンドポイントURIが1つまたはすべてのサーバー上で使用できるステータスになっていることを示します。

  • 「サーバー」フィールドが管理対象サーバーの1つに設定されている場合、Partialステータスは、選択した管理サーバー上で、ビジネス・サービスのエンドポイントURIの少なくとも1つがオフラインであることを示します。

14.1.3 エンドポイントURIをモニターするためのメトリック

Fusion Middleware Controlには、エンドポイントURIのメトリックが表示されるため、ビジネス・サービスのヘルスをモニターできます。JMXモニタリングAPIを使用して、エンドポイントURIのメトリックを表示することもできます。Fusion Middleware Controlの使用方法の詳細は、「ビジネス・サービスに対するエンドポイントURIのメトリックの表示」を参照してください。JMXモニタリングAPIの使用方法の詳細は、「JMXモニタリングAPI」を参照してください。

Fusion Middleware Controlでは、「Service Busプロジェクト」ページのビジネス・サービスについての「ダッシュボード」タブで、エンドポイントURIのメトリックを利用できます。利用可能なメトリックには、状態、メッセージとエラーの数、およびレスポンス時間があります。次に示す事項では、Fusion Middleware Controlで、エンドポイントURIをモニターするときに予期される動作について説明しています。

  • 統計は、ビジネス・サービスのモニターを有効にしている場合にのみ利用できます。

  • サービスの名前変更や移動を実行すると、URIレベルの統計がリセットされます。

  • 集約間隔を変更すると、URIステータスを除くすべてのURIレベルの統計がリセットされます。

  • サービスの統計をリセットすると(または、すべての統計をリセットすると)、URIステータスを除くすべてのURIレベルの統計がリセットされます。

  • 既存のビジネス・サービスに新しいURIを追加すると、新しいURIについてのメトリックの収集が自動的に開始されます。

14.1.3.1 エンドポイントURIの状態

Fusion Middleware Controlのビジネス・サービスに対する「ダッシュボード」には、エンドポイントURIがオンラインとオフラインのどちらであるかを示す「状態」統計が表示されます。JMXモニターリングAPIを使用してエンドポイントURIのステータスを取得することもできます。表14-1は、考えられるエンドポイントURIの状態についての説明です。

表14-1 エンドポイントURIのステータス

ステータス 説明

オンライン

特定のサーバーのURIがオンラインであることを示します。クラスタでは、すべてのサーバーのURIがオンラインであることを示します。

オフライン

特定のサーバーのURIがオフラインであることを示します。クラスタでは、すべてのサーバーのURIがオフラインであることを示します。

部分的

クラスタ内の1つ以上のサーバーがそのURIについて問題を報告していることを示します。このメトリックは、クラスタだけに使用できます。

注意:

URIが複数のビジネス・サービスに関連付けられている場合、同じエンドポイントURIのステータスがビジネス・サービスごとに異なる可能性があります。

14.1.3.2 エンドポイントURIのパフォーマンス・メトリック

エンドポイントURIのパフォーマンス・メトリックでは、特定のエンドポイントで処理されたメッセージの数、失敗の数、およびそのレスポンス時間に関する情報が提供されます。エンドポイントURIのヘルスをモニターする場合は、次のメトリックが役立ちます。

  • メッセージ数: エンドポイントURIで処理されたメッセージの数。

  • エラー数: エンドポイントURIで発生したエラーの数。

  • 最小レスポンス時間: このサービスがメッセージの実行に費やした最小時間(ミリ秒単位)。

  • 最大レスポンス時間: このサービスがメッセージの実行に費やした最大時間(ミリ秒単位)。

  • 平均レスポンス時間: このサービスがメッセージの実行に費やした平均時間(ミリ秒単位)。

14.2 応答しないエンドポイントURIをオフラインにするService Busの構成

応答しないエンドポイントを自動的にオフラインとマークするようにService Busを構成すると、そのエンドポイントURIへの継続的なアクセスの試行を防止できます。

これは、再試行間隔に基づいた一時的な状態にすることもできますが、エンドポイントURIを永続的に(手動でエンドポイントURIをオンラインにするまで)オフラインにすることもできます。これを行うには、ビジネス・サービスの「オフラインのエンドポイントURI」操作設定を有効にする必要があります。ビジネス・サービスのオフラインURI設定は、サービスのすべてのURIに適用されます。

APIを使用して、オフラインのエンドポイントURIをオンラインとしてマークすることもできます。この方法は、ビジネス・サービスのモニターを有効にしていないが、そのエンドポイントURIをオンラインとしてマークする必要がある場合に役立ちます。詳細は、Oracle Service Bus Java APIリファレンスcom.bea.wli.monitoring.ServiceDomainMBeanを参照してください。

応答しないエンドポイントURIにオフラインのマークを付けるようにService Busを構成するには:

  1. Fusion Middleware Controlのターゲット・ナビゲータで、次のいずれかの操作を実行します。
    • 「SOA」service-busの順に開き、変更対象のURIが存在するビジネス・サービスを含んでいるプロジェクトをクリックします。「サービス・ヘルス」タブで、ビジネス・サービスの検索と選択を実行します。

    • 「SOA」を開き、service-busを選択して、「操作」タブをクリックします。変更対象のURIが存在するビジネス・サービスの検索と選択を実行します。

    選択したビジネス・サービスの「ダッシュボード」が表示されます。

  2. 「プロパティ」タブをクリックします。
  3. 「一般設定」で、「オフラインのエンドポイントURI」を選択します。

    このようにService Busを構成することで、ビジネス・サービスのエンドポイントURIが応答しないときには、そのエンドポイントURIにオフラインのマークが付けられるようになります。

  4. 次のいずれかを行います。
    • Service BusがエンドポイントURIに一時的なオフラインのマークを付けるようにするには、「時間」「分」および「秒」のフィールドを使用して再試行間隔を指定します。Service Busは、この時間が経過するまで待機してから、後続のメッセージを処理するために同じエンドポイントURIへのアクセスを試行します。

    • Service BusがエンドポイントURIに永続的な(手動で操作するまで続く)オフラインのマークを付けるようにするには、「再試行間隔」に、0時間00を設定します。

    注意:

    エンドポイントURIに一時的なオフラインのマークを付けるように構成すると、そのURIは指定した時間間隔が経過するまでオフラインの状態が維持され、その後で再試行されます。エンドポイントが応答すると、URIは再度オンラインになるか、オフラインのままで、処理自体が繰り返されます。

  5. ランタイムの変更を保存するには、「適用」をクリックします。

14.3 エンドポイントURIに手動でオフラインのマークを付ける方法

Fusion Middleware Controlでビジネス・サービスをモニターすると、そのビジネス・サービスに関連するエンドポイントURIのメトリックを表示できます。

特定のエンドポイントURIに問題が見つかった場合は、そのエンドポイントURIをオフラインとしてマークできます。これにより、そのURIに対するアクセスの試行が繰り返されないようにします。エンドポイントURIを手動でオフラインにすると、そのURIは手動で元に戻すまでオフラインのままになります。

エンドポイントURIを手動でオフラインとマークするには:

  1. Fusion Middleware Controlのターゲットのナビゲータで、次のいずれかの操作を実行します。
    • 「SOA」service-busの順に開き、変更対象のURIが存在するビジネス・サービスを含んでいるプロジェクトをクリックします。「サービス・ヘルス」タブで、ビジネス・サービスの検索と選択を実行します。

    • 「SOA」を開き、service-busを選択して、「操作」タブをクリックします。変更対象のURIが存在するビジネス・サービスの検索と選択を実行します。

    選択したビジネス・サービスの「ダッシュボード」が表示されます。

  2. 「エンドポイントURI」セクションが表示されるまでスクロール・ダウンします。
  3. オフラインとマークするオンラインのエンドポイントURIを選択し、「URI状態の切替え」をクリックします。

    URIの「状態」列が「オフライン」に変化します。

14.4 オフラインのURIにオンラインのマークを付ける方法

エンドポイントURIにオフラインのマークが付けられている場合、そのマークがService Busにより自動的に付けられたものでも、管理者により手動で付けられたものでも、エンドポイントURIが応答しなくなったエラーの修正手順を実行した後に、そのエンドポイントURIを手動でオンライン状態に戻せます。

エンドポイントURIに付けたマークをオンラインに戻すと、Service Busはビジネス・サービスのエンドポイントURIの構成に従って処理を継続します。

エンドポイントURIに手動でオンラインのマークを付けるには:

  1. Fusion Middleware Controlのターゲットのナビゲータで、次のいずれかの操作を実行します。
    • 「SOA」service-busの順に開き、変更対象のURIが存在するビジネス・サービスを含んでいるプロジェクトをクリックします。「サービス・ヘルス」タブで、ビジネス・サービスの検索と選択を実行します。

    • 「SOA」を開き、service-busを選択して、「操作」タブをクリックします。変更対象のURIが存在するビジネス・サービスの検索と選択を実行します。

    選択したビジネス・サービスの「ダッシュボード」が表示されます。

  2. 「エンドポイントURI」セクションが表示されるまでスクロール・ダウンします。
  3. オフラインとマークするオンラインのエンドポイントURIを選択し、「URI状態の切替え」をクリックします。

    URIの「状態」列が「オンライン」に変化します。

  4. オフラインのマークが付けられたエンドポイントURIをService Busでオンラインに戻す場合は、「応答しないエンドポイントURIをオフラインにするService Busの構成」の手順を実行してください。

14.5 ビジネス・サービスに対するエンドポイントURIのメトリックの表示

Service Busは、各エンドポイントURIがメッセージを処理している状況についての情報を収集します。メッセージ数、エラー数に加え、最小、最大および平均のレスポンス時間を確認できます。ビジネス・サービスの「ダッシュボード」には、エンドポイントURIがオンラインとオフラインのどちらであるかも表示されます。

ビジネス・サービスのエンドポイントのメトリックを表示するには:

  1. Fusion Middleware Controlのターゲットのナビゲータで、次のいずれかの操作を実行します。
    • 「SOA」service-busの順に開き、変更対象のURIが存在するビジネス・サービスを含んでいるプロジェクトをクリックします。「サービス・ヘルス」タブで、ビジネス・サービスの検索と選択を実行します。

    • 「SOA」を開き、service-busを選択して、「操作」タブをクリックします。変更対象のURIが存在するビジネス・サービスの検索と選択を実行します。

    選択したビジネス・サービスの「ダッシュボード」が表示されます。

  2. 「統計の表示」フィールドで、現在の集約間隔の統計を表示するか、最後のリセット以降の統計を表示するかを選択します。
  3. 「エンドポイントURI」セクションが表示されるまでスクロール・ダウンします。
  4. 各エンドポイントURIのメトリックを表内で確認します。

    表示されるメトリックの詳細は、「エンドポイントURIをモニターするためのメトリック」およびFusion Middleware Controlのオンライン・ヘルプを参照してください。

  5. エンドポイントURIのステータスを変更する場合は、「エンドポイントURIに手動でオフラインのマークを付ける方法」または「オフラインのURIにオンラインのマークを付ける方法」を参照してください。

14.6 エンドポイントURIのメトリックに基づいたアラートの作成

エンドポイントURIにアクセスできない場合、アクセスを試行しているビジネス・サービスは通信エラーを受け取ります。

「応答しないエンドポイントURIをオフラインにするService Busの構成」で説明したように、応答しないURIをオフラインにするようにビジネス・サービスを構成することに加え、エンドポイントURIの状態に基づいたビジネス・サービスのSLAアラート・ルールを構成して、応答しないURIをシステムが検出したときにアラートを生成することもできます。

14.6.1 エンドポイントURIの状態に基づいたSLAアラートの作成について

ビジネス・サービスのエンドポイントURIの状態に基づいたSLAアラートを作成すると、特定のエンドポイントURIまたはすべてのエンドポイントURIの状態がオンラインからオフライン(またはオフラインからオンライン)に変化したときにアラートが生成されます。たとえば、1つは「オフラインのすべてのURI = True」条件、もう1つは「オフラインの特定のURI = True」条件に基づいた2つのアラート・ルールが構成されているビジネス・サービスを考えてみます。「オフラインのすべてのURI = True」条件に基づいてアラートが生成されている場合、この状態が解決されるまでこのサービスに対するすべてのリクエストが失敗する可能性が高いため、これは重大な問題を示します。しかし、「オフラインの特定のURI = True」に基づいてアラートが生成されている場合、これは、他のエンドポイントURIが応答するために以降のリクエストが失敗しない可能性があることを示します。

すべてのアラート・ルールは、単独で評価されます。同じビジネス・サービスに対して両方(特定またはすべてのURI)の句に基づくアラートを構成すると、最後のエンドポイントURIをオフラインとしてマークするときに両方のアラートが同時に生成される可能性があります。ビジネス・サービスがURIを1つだけ持つ場合、「オフラインのすべてのURI = True」句と「オフラインの特定のURI = True」句は同じことを意味し、同じように動作します。

オフラインからオンラインへの移行に基づくアラート・ルール条件の評価は、再度オンライン状態としてマークされている特定またはすべてのエンドポイントURIを追跡する場合を除き、同じように動作します。

14.6.2 エンドポイントURIの状態に基づいたSLAアラートの作成

エンドポイントURIの状態に基づいてアラート・ルールを作成できます。

エンドポイントURIの状態に基づいてSLAアラートを作成するには:

  1. ビジネス・サービスに対するSLAアラート・ルールを作成します(「SLAアラート・ルールのプロパティの構成」を参照)。
  2. 「SLAアラート・ルールの作成」ウィザードの「ルール条件」ページで、「条件の集約間隔」の時間間隔を選択します。

    詳細は、「集約間隔」を参照してください。

  3. 表にテンプレート行がない場合は、条件ビルダー表の上の「新しい条件の追加」をクリックします。

    表に新しい行が表示されます。

  4. 最初のフィールドで、「ステータス」を選択します。
  5. その次のフィールドで、次のいずれかを選択して、アラートを生成するステータス条件を指定します。
    • オフラインのすべてのURI

    • オンラインのすべてのURI

    • オフラインの特定のURI

    • オンラインの特定のURI

  6. その次のフィールドには、=演算子が選択されています(選択可能なオプションは、この演算子のみです)。
  7. その次のフィールドでは、条件を評価する方法に応じて、「True」または「False」のどちらかを選択します。
  8. 最後のフィールドで、次のいずれかを選択します。
    • すべてのサーバーで評価する: このオプションでは、すべてのサーバーで条件が満たされた場合に、ルールをTrueと評価します。

    • 特定のサーバーで評価する: このオプションでは、いずれかのサーバーが条件を満たした場合に、ルールをTrueと評価します。

  9. 行の左側にある「条件の更新」をクリックします。
  10. 「作成」をクリックします。

    新しいアラート・ルールがサマリー表に表示されます。

注意:

URIの状態が頻繁に変更される場合にトリガーされたアラートを見逃さないように、URIの状態に基づくアラート・ルールの集約間隔を1分に設定することをお薦めします。集約間隔の詳細は、「集約間隔について」を参照してください。

14.6.3 エンドポイントURIの統計に基づいたアラート・ルールの構成

アラート・ルールは、エンドポイントURIのメッセージ数、エラー数またはレスポンス時間に基づいて作成できます。

エンドポイントURIの統計に基づいてアラート・ルール構成するには:

  1. ビジネス・サービスに対するSLAアラート・ルールを作成します(「SLAアラート・ルールのプロパティの構成」を参照)。
  2. 「SLAアラート・ルールの作成」ウィザードの「ルール条件」ページで、「条件の集約間隔」の時間間隔を選択します。

    詳細は、「集約間隔」を参照してください。

  3. 表にテンプレート行がない場合は、条件ビルダー表の上の「新しい条件の追加」をクリックします。

    表に新しい行が表示されます。

  4. 最初のフィールドで、次のいずれかを選択します。
    • カウント: 条件がエンドポイントURIのメッセージ数またはエラー数に基づくようにします。

    • 最小: 条件がエンドポイントURIの最小レスポンス時間に基づくようにします。

    • 最大: 条件がエンドポイントURIの最大レスポンス時間に基づくようにします。

    • 平均: 条件がエンドポイントURIの平均レスポンス時間に基づくようにします。

  5. その次のフィールドで、作成している条件の対象になるURIを選択します。
  6. その次のフィールドで、=!=>または<のいずれかの比較演算子を選択します。
  7. その次のフィールドに、実際の統計と比較する値を入力します。
  8. 行の左側にある「条件の更新」をクリックします。
  9. 「作成」をクリックします。

    新しいアラート・ルールがサマリー表に表示されます。