25.3. Eclipse MicroProfile Health を使用したサーバー状態の監視

重要

Eclipse MicroProfile Health は、テクノロジープレビューとしてのみ提供されます。テクノロジープレビューの機能は、Red Hat の本番環境のサービスレベルアグリーメント (SLA) ではサポートされず、機能的に完全ではないことがあるため、Red Hat は本番環境での使用は推奨しません。テクノロジープレビューの機能は、最新の技術をいち早く提供して、開発段階で機能のテストやフィードバックの収集を可能にするために提供されます。

テクノロジープレビュー機能のサポート範囲については、Red Hat カスタマーポータルの「テクノロジプレビュー機能のサポート範囲」を参照してください。

25.3.1. MicroProfile Health SmallRye サブシステム

JBoss EAP には、microprofile-health-smallrye サブシステムを使用して Eclipse MicroProfile Health 機能を提供する SmallRye Health コンポーネントが含まれています。このサブシステムは、JBoss EAP インスタンスが想定どおりに応答しているかどうかを判断するために使用され、デフォルトで有効になっています。

重要

デフォルトでは、MicroProfile Health SmallRye サブシステムはサーバーが稼働していることのみを確認します。カスタムヘルスチェックを含める場合は、『開発ガイド』の「カスタムヘルスチェックの実装」を参照してください。

25.3.2. 管理 CLI を使用したヘルスチェックの確認

ヘルスチェックは管理 CLI を使用して確認できます。以下のコマンドは、サーバーの現在の状態を取得します。

/subsystem=microprofile-health-smallrye:check
{
    "outcome" => "success",
    "result" => {
        "outcome" => "UP",
        "checks" => []
    }
}

25.3.3. HTTP エンドポイントを使用したヘルスチェックの確認

ヘルスチェックは自動的に JBoss EAP の health コンテキストにデプロイされます。そのため、管理 CLI を使用した確認だけでなく、HTTP エンドポイントを使用して現在のヘルス状態を取得することもできます。管理インターフェースからアクセスできる /health エンドポイントのデフォルトアドレスは http://127.0.0.1:9990/health です。

HTTP エンドポイントを使用して、サーバーの現在のヘルス状態を取得するには、以下の URL を使用します。

http://HOST:PORT/health

このコンテキストにアクセスすると、サーバーの状態を示すヘルスチェックが JSON 形式で表示されます。

HTTP エンドポイントの認証の有効化

health コンテキストを設定すると、このコンテキストへのアクセスにユーザーの認証を必要とすることができます。以下の手順は、このエンドポイントで認証を有効にします。

  1. microprofile-health-smallrye サブシステムで security-enabled 属性を true に設定します。

    /subsystem=microprofile-health-smallrye:write-attribute(name=security-enabled,value=true)
  2. 変更を反映するためにサーバーをリロードします。

    reload

health エンドポイントにアクセスしようとすると、認証プロンプトが表示されるようになります。