3.6. Eclipse MicroProfile Metrics 管理
3.6.1. 管理インターフェイスで利用可能なメトリック リンクのコピーリンクがクリップボードにコピーされました!
JBoss EAP サブシステムメトリクスは Prometheus 形式で公開されます。
メトリクスは JBoss EAP 管理インターフェイスで自動的に利用できるようになり、以下のコンテキストを使用できます。
-
/metrics/: MicroProfile 3.0 仕様に指定されたメトリクスが含まれます。 -
/metrics/vendor: メモリープールなどのベンダー固有のメトリクスが含まれます。 -
/metrics/application: MicroProfile Metrics API を使用するデプロイしたアプリケーションおよびサブシステムのメトリクスが含まれます。
メトリクス名はサブシステムと属性名に基づきます。たとえば、サブシステム undertow は、アプリケーションデプロイメントのすべてのサーブレットのメトリクス属性 request-count を公開します。このメトリクスの名前は jboss_undertow_request_count です。接頭辞 jboss は JBoss EAP をメトリクスのソースとして識別します。
3.6.2. HTTP エンドポイントを使用したメトリクスの検証 リンクのコピーリンクがクリップボードにコピーされました!
HTTP エンドポイントを使用して JBoss EAP 管理インターフェイスで利用可能なメトリクスを確認します。
手順
curl コマンドを使用します。
curl -v http://localhost:9990/metrics | grep -i type
$ curl -v http://localhost:9990/metrics | grep -i typeCopy to Clipboard Copied! Toggle word wrap Toggle overflow
3.6.3. Eclipse MicroProfile Metrics HTTP エンドポイントの認証の有効化 リンクのコピーリンクがクリップボードにコピーされました!
ユーザーによるコンテキストのアクセスの承認を要求するように metrics コンテキストを設定します。この設定は、metrics コンテキストのすべてのサブコンテキストに拡張されます。
手順
microprofile-metrics-smallryeサブシステムでsecurity-enabled属性をtrueに設定します。/subsystem=microprofile-metrics-smallrye:write-attribute(name=security-enabled,value=true)
/subsystem=microprofile-metrics-smallrye:write-attribute(name=security-enabled,value=true)Copy to Clipboard Copied! Toggle word wrap Toggle overflow 変更を反映するためにサーバーをリロードします。
reload
reloadCopy to Clipboard Copied! Toggle word wrap Toggle overflow
metrics エンドポイントにアクセスしようとすると、認証プロンプトが表示されるようになります。
3.6.4. Web サービスの要求数の取得 リンクのコピーリンクがクリップボードにコピーされました!
要求カウントメトリクスを公開する Web サービスの要求数を取得します。
以下の手順では、リクエスト数を取得するために helloworld-rs クイックスタートを Web サービスとして使用します。クイックスタートは jboss-eap-quickstarts からクイックスタートをダウンロードします。
前提条件
- Web サービスが要求数を公開している。
手順
undertowサブシステムの統計を有効にします。統計が有効な状態でスタンドアロンサーバーを起動します。
./standalone.sh -Dwildfly.statistics-enabled=true
$ ./standalone.sh -Dwildfly.statistics-enabled=trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow 既にサーバーが稼働している場合は、
undertowサブシステムの統計を有効にします。/subsystem=undertow:write-attribute(name=statistics-enabled,value=true)
/subsystem=undertow:write-attribute(name=statistics-enabled,value=true)Copy to Clipboard Copied! Toggle word wrap Toggle overflow
helloworld-rsクイックスタートをデプロイします。クイックスタートのルートディレクトリーに、Maven を使用して web アプリケーションをデプロイします。
mvn clean install wildfly:deploy
$ mvn clean install wildfly:deployCopy to Clipboard Copied! Toggle word wrap Toggle overflow
curlコマンドを使用して CLI で http エンドポイントをクエリーし、request_countに対してフィルター処理を行います。curl -v http://localhost:9990/metrics | grep request_count
$ curl -v http://localhost:9990/metrics | grep request_countCopy to Clipboard Copied! Toggle word wrap Toggle overflow 想定される出力:
jboss_undertow_request_count_total{server="default-server",http_listener="default",} 0.0jboss_undertow_request_count_total{server="default-server",http_listener="default",} 0.0Copy to Clipboard Copied! Toggle word wrap Toggle overflow 返された属性値は
0.0です。- Web ブラウザーで http://localhost:8080/helloworld-rs/ にあるクイックスタートにアクセスし、任意のリンクをクリックします。
CLI から HTTP エンドポイントを再度クエリーします。
curl -v http://localhost:9990/metrics | grep request_count
$ curl -v http://localhost:9990/metrics | grep request_countCopy to Clipboard Copied! Toggle word wrap Toggle overflow 想定される出力:
jboss_undertow_request_count_total{server="default-server",http_listener="default",} 1.0jboss_undertow_request_count_total{server="default-server",http_listener="default",} 1.0Copy to Clipboard Copied! Toggle word wrap Toggle overflow 値は
1.0に更新されました。最後の 2 つの手順を繰り返して、要求数が更新されていることを確認します。