Observability Dev Services
Dev Service の概念には慣れていますが、Observability の場合、単一の Dev Service だけでなく、通常はそれらのスタック全体をオーケストレーションして接続する方法が必要です。たとえば、メトリクスエージェントが定期的にアプリケーションからメトリクスをスクレイピングし、それをタイムシリーズデータベースに送信し、Grafana がそのタイムシリーズデータのグラフを表示する、といった具合です。
これを念頭に置いて、Dev Service コンセプトと Testcontainers 間のアダプターである Dev Resource という新しいコンセプトを追加しました。また、コンテナーごとに Dev Resource が用意されたきめ細かいサービスが利用できるようになったため、これをさらに進めて、ユーザーがこの新しい Dev Resource 概念の使用方法を選択できるようにします。
Dev Resource の実装は @QuarkusTestResourceLifecycleManager の実装でもあります
|
-
Dev Services に、クラスパスからさまざまな Dev Resource を取得させ、Dev Service の概念をそれに適用する
-
明示的に Dev Service を無効にして Dev Resource を有効にし、Dev Resource の開始と停止のより簡単な概念を使用する
-
Dev Service と Dev Resource の両方を明示的に無効にし、Quarkus の
@QuarkusTestResource
テストコンセプトを使用する (注記を参照)
必要な Dev Resource の依存関係とともに Observability エクステンションの依存関係を追加するか、既存の sinks
- pom.xml ファイルを使用して、特定のテクノロジースタックに必要な他の依存関係とともに Observability エクステンションの依存関係を追加することができます。たとえば、 victoriametrics
シンクには、 pom.xml
にすでに含まれている quarkus-observability-devresource-victoriametrics
および quarkus-victoriametrics-client
依存関係があります。
これらのシンク依存関係の
|
OTel-LGTM Docker イメージの形式で、通常の all-in-one
Grafana の使用方法を使用して、これらすべてが実際にどのように見えるかを確認しましょう。