第7章 JBoss EAP 用 Micrometer アプリケーションの開発
7.1. JBoss EAP に Micrometer メトリクスを統合 リンクのコピーリンクがクリップボードにコピーされました!
Micrometer を使用すると、JBoss EAP でアプリケーションメトリクスを監視および収集できます。Micrometer サポートにより、アプリケーションメトリクスが公開されます。エクスポートプロセスは PUSH ベースであり、メトリクスが OpenTelemetry Collector に送信されるようにします。
前提条件
- JDK 17 がインストールされている。
- Maven 3.6 以降のバージョンがインストールされている。詳細は、Downloading Apache Maven を参照してください。
- Docker がインストールされている。詳細は、Get Docker を参照してください。
- オプション: システムに podman がインストールされている。サポート対象の RHEL で利用可能な最新の podman バージョンを使用してください。詳細は、Red Hat JBoss Enterprise Application Platform 8.0 でサポートされる構成 を参照してください。
-
configure-micrometer.cliファイルは、アプリケーションのルートディレクトリーにあります。
このセクションの例 (configure-micrometer.cli ファイルの使用方法を含む) は、Micrometer クイックスタート に基づいています。
手順
- 端末を開きます。
次のスクリプトを使用して、JBoss EAP をスタンドアロンサーバーとして起動します。
<EAP_HOME>/bin/standalone.sh -c standalone-microprofile.xml
$ <EAP_HOME>/bin/standalone.sh -c standalone-microprofile.xmlCopy to Clipboard Copied! Toggle word wrap Toggle overflow 注記Windows Server の場合は、
<EAP_HOME>\bin\standalone.batスクリプトを使用します。- 新しいターミナルを開きます。
- アプリケーションのルートディレクトリーに移動します。
サーバーを設定するには、次のコマンドを実行します。
<EAP_HOME>/bin/jboss-cli.sh --connect --file=configure-micrometer.cli
$ <EAP_HOME>/bin/jboss-cli.sh --connect --file=configure-micrometer.cliCopy to Clipboard Copied! Toggle word wrap Toggle overflow 注記Windows Server の場合は、
<EAP_HOME>\bin\jboss-cli.batスクリプトを使用します。<EAP_HOME> をサーバーへのパスに置き換えます。
想定される出力:
The batch executed successfully process-state: reload-required
The batch executed successfully process-state: reload-requiredCopy to Clipboard Copied! Toggle word wrap Toggle overflow 以下の管理コマンドでサーバーをリロードします。
<EAP_HOME>/bin/jboss-cli.sh --connect --commands=reload
$ <EAP_HOME>/bin/jboss-cli.sh --connect --commands=reloadCopy to Clipboard Copied! Toggle word wrap Toggle overflow 次の内容を含む
docker-compose.yamlという名前の設定ファイルを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次の内容を含む
otel-collector-config.yamlという名前の設定ファイルを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、コレクターサーバーインスタンスを起動します。
docker-compose up
$ docker-compose upCopy to Clipboard Copied! Toggle word wrap Toggle overflow 注記Docker の代わりに Podman を使用することもできます。Podman を選択した場合は、
$ docker-compose upではなく$ podman-compose upコマンドを使用します。ご使用の環境で Docker または Podman がサポートされていない場合は、Otel Collector のドキュメント で OpenTelemetry Collector のインストールと実行に関するガイダンスを参照してください。RootResourceクラスでは、メーター登録前に適切なセットアップを確実に行うために、MeterRegistryがクラスに挿入される方法を確認します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow checkIfPrime()メソッド本体を調べて、登録されたメーターがアプリケーションロジック内でどのように使用されるかを確認します。以下に例を示します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow アプリケーションのルートディレクトリーに移動します。
構文
cd <path_to_application_root>/<application_root>
$ cd <path_to_application_root>/<application_root>Copy to Clipboard Copied! Toggle word wrap Toggle overflow Micrometer Quickstart を参考にした例:
cd ~/quickstarts/micrometer
$ cd ~/quickstarts/micrometerCopy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを使用して、アプリケーションをコンパイルおよびデプロイします。
mvn clean package wildfly:deploy
$ mvn clean package wildfly:deployCopy to Clipboard Copied! Toggle word wrap Toggle overflow
これにより、実行中のサーバーに micrometer/target/micrometer.war がデプロイされます。
検証
Web ブラウザー を使用してアプリケーションにアクセスするか、次のコマンドを実行します。
curl http://localhost:8080/micrometer/prime/13
$ curl http://localhost:8080/micrometer/prime/13Copy to Clipboard Copied! Toggle word wrap Toggle overflow 想定される出力:
13 is prime.
13 is prime.Copy to Clipboard Copied! Toggle word wrap Toggle overflow