Micrometer 観測資料

このセクションでは、Micrometer の統合について説明します。

可観測性 - メトリクス

以下に、このプロジェクトで宣言されたすべての指標のリストを示します。

リスナーの観測

Rabbit リスナーの観測。

指標名  spring.rabbit.listener (規約クラス RabbitListenerObservation$DefaultRabbitListenerObservationConvention で定義)。タイプ  timer.

指標名  spring.rabbit.listener.active (規約クラス RabbitListenerObservation$DefaultRabbitListenerObservationConvention で定義)。タイプ  long task timer.

観測の開始後に追加された KeyValues は、*.active メトリクスから欠落している可能性があります。
Micrometer は、ベースユニットに nanoseconds を内部的に使用します。ただし、各バックエンドが実際のベースユニットを決定します。(つまり、Prometheus は秒を使用します)

包含クラス RabbitListenerObservation の名前。

表 1: カーディナリティの低いキー

名前

説明

messaging.destination.name (必須)

リスナーが接続されているキュー。

messaging.rabbitmq.message.delivery_tag (必須)

配信タグ。廃止後は、このキーは低カーディナリティタグとして公開されません。

spring.rabbit.listener.id (必須)

リスナー ID。

ストリームリスナーの観測

Rabbit ストリームリスナーの観測。

指標名  spring.rabbit.stream.listener (規約クラス RabbitStreamListenerObservation$DefaultRabbitStreamListenerObservationConvention で定義)。タイプ  timer.

指標名  spring.rabbit.stream.listener.active (規約クラス RabbitStreamListenerObservation$DefaultRabbitStreamListenerObservationConvention で定義)。タイプ  long task timer.

観測の開始後に追加された KeyValues は、*.active メトリクスから欠落している可能性があります。
Micrometer は、ベースユニットに nanoseconds を内部的に使用します。ただし、各バックエンドが実際のベースユニットを決定します。(つまり、Prometheus は秒を使用します)

包含クラス RabbitStreamListenerObservation の名前。

すべてのタグには、spring.rabbit.stream.listener プレフィックスを付ける必要があります。
表 2: カーディナリティの低いキー

名前

説明

spring.rabbit.stream.listener.id (必須)

リスナー ID。

ストリームテンプレートの観測

`RabbitStreamTemplate` の観測。

指標名  spring.rabbit.stream.template (規約クラス RabbitStreamTemplateObservation$DefaultRabbitStreamTemplateObservationConvention で定義)。タイプ  timer.

指標名  spring.rabbit.stream.template.active (規約クラス RabbitStreamTemplateObservation$DefaultRabbitStreamTemplateObservationConvention で定義)。タイプ  long task timer.

観測の開始後に追加された KeyValues は、*.active メトリクスから欠落している可能性があります。
Micrometer は、ベースユニットに nanoseconds を内部的に使用します。ただし、各バックエンドが実際のベースユニットを決定します。(つまり、Prometheus は秒を使用します)

包含クラス RabbitStreamTemplateObservation の名前。

すべてのタグには、spring.rabbit.stream.template プレフィックスを付ける必要があります。
表 3: カーディナリティの低いキー

名前

説明

spring.rabbit.stream.template.name (必須)

テンプレートの Bean 名。

テンプレート観測

RabbitTemplates の観測。

指標名  spring.rabbit.template (規約クラス RabbitTemplateObservation$DefaultRabbitTemplateObservationConvention で定義)。タイプ  timer.

指標名  spring.rabbit.template.active (規約クラス RabbitTemplateObservation$DefaultRabbitTemplateObservationConvention で定義)。タイプ  long task timer.

観測の開始後に追加された KeyValues は、*.active メトリクスから欠落している可能性があります。
Micrometer は、ベースユニットに nanoseconds を内部的に使用します。ただし、各バックエンドが実際のベースユニットを決定します。(つまり、Prometheus は秒を使用します)

包含クラス RabbitTemplateObservation の名前。

表 4: カーディナリティの低いキー

名前

説明

messaging.destination.name (必須)

宛先取引所(デフォルトの取引所の場合は空)。

messaging.rabbitmq.destination.routing_key (必須)

宛先ルーティングキー。

spring.rabbit.template.name (必須)

テンプレートの Bean 名。

可観測性 - スパン

以下に、このプロジェクトで宣言されたすべてのスパンのリストを示します。

リスナーの観測スパン

Rabbit リスナーの観測。

スパン名  spring.rabbit.listener (規約クラス RabbitListenerObservation$DefaultRabbitListenerObservationConvention で定義)。

包含クラス RabbitListenerObservation の名前。

表 5: タグキー

名前

説明

messaging.destination.name (required)

The queue the listener is plugged to.

messaging.rabbitmq.message.delivery_tag (required)

The delivery tag. After deprecation this key is not exposed as a low cardinality tag.

messaging.rabbitmq.message.delivery_tag (required)

The delivery tag.

spring.rabbit.listener.id (required)

Listener id.

Stream Listener Observation Span

Observation for Rabbit stream listeners.

Span name spring.rabbit.stream.listener (defined by convention class RabbitStreamListenerObservation$DefaultRabbitStreamListenerObservationConvention).

Name of the enclosing class RabbitStreamListenerObservation.

All tags must be prefixed with spring.rabbit.stream.listener prefix!
Table 6. Tag Keys

Name

Description

spring.rabbit.stream.listener.id (required)

Listener id.

Stream Template Observation Span

Observation for `RabbitStreamTemplate`s.

Span name spring.rabbit.stream.template (defined by convention class RabbitStreamTemplateObservation$DefaultRabbitStreamTemplateObservationConvention).

Name of the enclosing class RabbitStreamTemplateObservation.

All tags must be prefixed with spring.rabbit.stream.template prefix!
Table 7. Tag Keys

Name

Description

spring.rabbit.stream.template.name (required)

Bean name of the template.

Template Observation Span

Observation for RabbitTemplates.

Span name spring.rabbit.template (defined by convention class RabbitTemplateObservation$DefaultRabbitTemplateObservationConvention).

Name of the enclosing class RabbitTemplateObservation.

Table 8. Tag Keys

Name

Description

messaging.destination.name (required)

The destination exchange (empty if default exchange).

messaging.rabbitmq.destination.routing_key (required)

The destination routing key.

spring.rabbit.template.name (required)

Bean name of the template.

Observability - Conventions

Below you can find a list of all GlobalObservationConvention and ObservationConvention declared by this project.

Table 9. ObservationConvention implementations

ObservationConvention Class Name

Applicable ObservationContext Class Name

RabbitListenerObservation

RabbitMessageReceiverContext

RabbitListenerObservation.DefaultRabbitListenerObservationConvention

RabbitMessageReceiverContext

RabbitListenerObservationConvention

RabbitMessageReceiverContext

RabbitStreamMessageReceiverContext

RabbitMessageReceiverContext

RabbitStreamMessageReceiverContext.DefaultRabbitListenerObservationConvention

RabbitMessageReceiverContext

RabbitTemplateObservation

RabbitMessageSenderContext

RabbitTemplateObservation.DefaultRabbitTemplateObservationConvention

RabbitMessageSenderContext

RabbitTemplateObservationConvention

RabbitMessageSenderContext

RabbitStreamListenerObservation

RabbitStreamMessageReceiverContext

RabbitStreamListenerObservation.DefaultRabbitStreamListenerObservationConvention

RabbitStreamMessageReceiverContext

RabbitStreamListenerObservationConvention

RabbitStreamMessageReceiverContext

RabbitStreamTemplateObservation

RabbitStreamMessageSenderContext

RabbitStreamTemplateObservation.DefaultRabbitStreamTemplateObservationConvention

RabbitStreamMessageSenderContext

RabbitStreamTemplateObservationConvention

RabbitStreamMessageSenderContext