サービス・ヘルス・チェック

「ヘルス・チェック」という名前のプラグイン・スポットがインストール上に用意されています。ここにプラグインされるアルゴリズムは、システムの健全性を評価するために、様々なシステム状態をチェックして詳細を返すのに使用されます。

どのような情報がチェックされるか。

各アルゴリズムは、1つのタイプのヘルス・チェック条件をチェックします。条件は、有効なヘルス・コンポーネント・タイプとして定義されている必要があります(HEALTH_​COMP_​FLG参照で定義)。このアルゴリズムは、多数のレコード(ヘルス・コンポーネントと呼ばれます)を横断して条件をチェックして各ヘルス・コンポーネントのステータスと詳細を返すことができます。たとえば、アルゴリズムがシステム内のバッチ・プログラムのサービス・レベルをチェックする場合は、バッチ管理がヘルス・コンポーネントになります。アルゴリズムは、各バッチ・プログラムのサービス・レベルの結果を収集して、この情報のコレクションをコール元のプログラムに返す必要があります。

プラグイン・スポットのアルゴリズムは、各ヘルス・コンポーネントについて次の情報を返します。

  • 「ヘルス・コンポーネント詳細」には、チェックされたオブジェクトに固有の情報が移入されます。たとえば、アルゴリズムがバッチ管理のサービス・レベルをチェックする場合は、バッチ管理コードがここに格納されます。さらに、各ヘルス・コンポーネント・タイプの詳細の表示を可能にするために、アルゴリズムはメンテナンス・オブジェクト・コード、主キー・フィールドおよび値の詳細をナビゲーション・オプションとともに移入する必要があります。

  • ヘルス・コンポーネント・ステータス・フラグおよびヘルス・コンポーネント・ステータス摘要には、チェックする条件に対して適切な、有効なステータス・コードおよび摘要が移入されている必要があります。この情報はヘルス・コンポーネント・タイプによって異なる場合があります。各ヘルス・コンポーネント・タイプが独自のステータス値を持つ可能性があるためです。

  • ヘルス・コンポーネント・ステータス事由は、ヘルス・コンポーネントのステータス値に関する補助情報の提供を目的としています。たとえば、コンポーネントのステータスがエラー・タイプの場合に、ここにステータス事由が入力されます。

  • ヘルス・コンポーネント応答は、ヘルス・コンポーネントのステータス値を、参照HEALTH_​RESPONSE_​FLGで定義された標準値にマップするために使用されます。値はHTTPレスポンス・コードのサブセットです。サポートされている値は、「すべてのチェック成功」(200)、「非クリティカル機能のグレード低下」(203)、「コンテンツなし」(204)および「1つ以上のクリティカル機能のグレード低下」(500)です。

  • 「応答詳細」リストは、ヘルス・チェックの一部として複数の条件をチェックするヘルス・コンポーネントのために用意されています。各条件が独自のステータスを返す可能性があります。この状況では、アルゴリズムは応答詳細リストを使用して個々の応答を記録するとともに、全体的なヘルス・コンポーネント・ステータス・フラグ、摘要および事由に要約情報を移入する必要があります。次のことを実行することをお薦めします。

    • 個々の応答の詳細に基づいてステータス・フラグおよび応答を設定します。このロジックの例は、後述のバッチ・サービス・レベルの情報を参照してください。

    • 応答リストに情報が移入されているときは、ヘルス・チェック・ユーザー・インタフェースに全体的な「ステータス事由」テキストがアイコンとともに表示され、このアイコンから詳細を展開できます。このフィールドには「詳細は結果を参照してください」のようなテキストを入力することをお薦めします。

システムには、「バッチ・サービス・レベル」というヘルス・コンポーネント・タイプをチェックするアルゴリズムが用意されています。このヘルス・コンポーネント・タイプでは、1つ以上のサービス・レベル・アルゴリズムが構成されたすべてのバッチ管理を検索し、各バッチ管理に対してアルゴリズムを起動します。ビジネス・サービスによる各バッチ管理に対するこのヘルス・サービスの出力は次のとおりです。

  • 「ヘルス・コンポーネント詳細」にはバッチ管理コードと説明が表示されます。さらに、バッチ管理にドリルできるようにするためのナビゲーション情報が提供され、列をハイパーテキストとして作成するのに使用されます。

  • 「ステータス」は、バッチ管理にあるアルゴリズムが1つか複数かに基づいて設定されます。アルゴリズムが1つある場合は、アルゴリズムによって返された「サービス・レベル」参照値が返されます。複数ある場合は、各アルゴリズムからの詳細なステータス値に基づいて全体的なステータスが決定します。いずれかのアルゴリズムでエラーが返される場合は、その値が返されます。そうでなく、いずれかで警告が返される場合は、その値が返されます。それ以外の場合は「通常」が返されます。

  • 「ステータス事由」は、バッチ管理にあるアルゴリズムが1つか複数かに基づいて設定されます。アルゴリズムが1つある場合は、アルゴリズムによって返されたステータス事由の展開テキストが返されます。複数ある場合は、メッセージ・カテゴリ/メッセージ番号11002/22001のテキストが返されます(「結果の詳細を表示」)

  • 「応答」は全体的なサービス・レベル・ステータスの値に基づいて設定されます。サービス・レベルが「通常」または「無効」の場合は「すべてのチェック成功」(200)に、サービス・レベルが「警告」の場合は「非クリティカル機能のグレード低下」(203)に、サービス・レベルが「エラー」の場合は「1つ以上のクリティカル機能のグレード低下」(500)に設定されます。

アルゴリズムはどのようにコールされるか。

これらのアルゴリズムは、製品によって提供されるビジネス・サービスF1-HealthCheckによってコールされます。

すべてのアルゴリズムから返される詳細すべてに基づいて、全体的なヘルス応答の値がそのサービスによって計算されます。前述のHEALTH_​RESPONSE_​FLGの説明で示した値が、これに使用される値です。

また、システムにはこのビジネス・サービスのためのインバウンドWebサービスがSOAPおよびRESTの両方のサービス・コール用に提供されており、外部システムでWebサービスを使用してこの情報を取得できます。