HiveMQ Distributed Tracing Spans
HiveMQ distributed tracing spans represent work done within a specific trace including time intervals and associated metadata.
Resources
Resources capture information about the entity for which telemetry data is recorded.
All captured spans are correlated with OpenTelemetry Resources:
-
The HiveMQ Enterprise Distributed Tracing Extension provides values for all required and recommended Service resources.
-
If possible, the HiveMQ Enterprise Distributed Tracing Extension also displays values for optional resources related to the Host, Operating System, and Cloud provider.
Resource Attribute | Description |
---|---|
|
The name of the service as defined in the |
|
The node ID of the HiveMQ Broker instance. For example, |
|
The service namespace of the HiveMQ broker. For example, |
|
The version of the HiveMQ broker. For example, |
|
The name of the host, if detected. For example, |
|
The CPU architecture on which the host system runs, if detected. For example, |
|
The human-readable operating system name, if detected. For example, |
|
The operating system type, if detected. For example, |
|
The version string of the operating system, if detected. For example, |
|
The name of the cloud provider, if applicable and detected. For example, |
|
The geographical region in which the resource runs, if applicable and detected. |
Span Attributes
The captured spans from HiveMQ follow the OpenTelemetry semantic conventions for Messaging systems as closely as possible.
Span attributes are key and value pairs that describe a span.
The information in the span attributes provides the detailed information you need to effectively observe your application.
HiveMQ Broker Spans
PUBLISH Receive Span
The PUBLISH receive
span captures tracing data for incoming MQTT PUBLISH packets.
The OpenTelemetry SpanKind of PUBLISH receive spans is SERVER
.
Span Attribute | Description |
---|---|
|
A string that identifies the messaging system. For example, |
|
The topic of the MQTT PUBLISH message. For example, |
|
The unique ID of the MQTT PUBLISH message. For example, |
|
The size of the MQTT message payload in bytes. For example, |
|
The identifier of the publishing MQTT client. For example, |
|
The QoS level of the MQTT PUBLISH message. For example, |
|
The packet ID of the MQTT PUBLISH message. For example, |
|
The retain flag of the MQTT PUBLISH message. For example, |
|
The duplicate delivery flag of the MQTT PUBLISH. For example, |
|
The message expiry interval in seconds of the MQTT PUBLISH message. For example, |
|
The payload format indicator of the MQTT PUBLISH message. For example, |
|
The content type of the MQTT PUBLISH message. For example, |
|
The response topic of the MQTT PUBLISH message. For example, `<response/topic/name> `. |
|
The name of the transport protocol. For example, |
|
The version of the transport protocol. |
|
The IP address of the MQTT client that publishes the message. For example, |
|
The port of the MQTT client that publishes the message. For example, |
|
The IP address of the HiveMQ broker. For example, |
|
The port of the HiveMQ broker. For example, |
PUBLISH Send Span
The PUBLISH send
span captures tracing data for outgoing MQTT PUBLISH packets.
The OpenTelemetry SpanKind of PUBLISH Send spans CLIENT
.
Span Attribute | Description |
---|---|
|
A string that identifies the messaging system. For example, |
|
The topic of the MQTT PUBLISH message. For example, |
|
The unique ID of the MQTT PUBLISH message. For example, |
|
The size of the MQTT message payload in bytes. For example, |
|
The identifier of the publishing MQTT client. For example, |
|
The QoS level of the MQTT PUBLISH message. For example, |
|
The packet ID of the MQTT PUBLISH message. For example, |
|
The retain flag of the MQTT PUBLISH message. For example, |
|
The duplicate delivery flag of the MQTT PUBLISH. For example, |
|
The message expiry interval in seconds of the MQTT PUBLISH message. |
|
The payload format indicator of the MQTT PUBLISH message. |
|
The content type of the MQTT PUBLISH message. For example, |
|
The response topic of the MQTT PUBLISH message. For example, |
|
The name of the transport protocol. For example, |
|
The version of the transport protocol. |
|
The IP address of the MQTT client that publishes the message. For example, |
|
The port of the MQTT client that publishes the message. For example, |
|
The IP address of the HiveMQ broker. For example, |
|
The port of the HiveMQ broker. For example, |
Publish Inbound Interceptor Process Span
The Publish Inbound Interceptor process
span captures tracing data for each PublishInboundInterceptor.onInboundPublish()
invocation.
The OpenTelemetry SpanKind of Publish Inbound Interceptor process spans is`INTERNAL`.
Span Attribute | Description |
---|---|
|
The ID of the extension. For example, |
|
The version of the extension. For example, |
Publish Authorizer Process Span
The Publish Authorizer process
span captures tracing data for each PublishAuthorizer.authorizePublish()
invocation.
The OpenTelemetry SpanKind of Publish Authorizer process spans is INTERNAL
.
Span Attribute | Description |
---|---|
|
The ID of the extension. For example, |
|
The version of the extension. For example, |
Publish Outbound Interceptor Process Span
The Publish Outbound Interceptor process
span captures tracing data for each PublishOutboundInterceptor.onOutboundPublish()
invocation.
The OpenTelemetry SpanKind of Publish Outbound Interceptor process spans is INTERNAL
.
Span Attribute | Description |
---|---|
|
The ID of the extension. For example, |
|
The version of the extension. For example, |
Message Consumer Process Span
The Message Consumer process
span captures tracing data for each MessageConsumer.consume()
invocation.
The OpenTelemetry SpanKind of Message Consumer process spans is INTERNAL
.
Span Attribute | Description |
---|---|
|
The ID of the extension. For example, |
|
The version of the extension. For example, |
|
The ID of the |
Publish Service Process Span
The Publish Service process
span captures tracing data for each PublishService.publish()
and PublishService.publishToClient()
invocation.
The OpenTelemetry SpanKind of Publish Service process spans is INTERNAL
.
Span Attribute | Description |
---|---|
|
A string that identifies the messaging system. For example, |
|
The topic of the MQTT PUBLISH message. For example, |
|
The unique ID of the MQTT PUBLISH message. For example, |
|
The size of the MQTT message payload in bytes. For example, |
|
The QoS level of the MQTT PUBLISH message. For example, |
|
The packet ID of the MQTT PUBLISH message. For example, |
|
The retain flag of the MQTT PUBLISH message. For example, |
|
The duplicate delivery flag of the MQTT PUBLISH. For example, |
|
The message expiry interval in seconds of the MQTT PUBLISH message. |
|
The payload format indicator of the MQTT PUBLISH message. |
|
The content type of the MQTT PUBLISH message. For example, |
|
The response topic of the MQTT PUBLISH message. For example, |
|
The name of the transport protocol. For example, |
HiveMQ Enterprise Extension for Kafka Spans
Kafka Receive Span
The Kafka receive
span captures tracing data for incoming Kafka records.
The OpenTelemetry SpanKind of Kafka receive spans is CONSUMER
.
Span Attribute | Description |
---|---|
|
A string that identifies the messaging system. For example, |
|
The topic of the Kafka record. For example, |
|
A unique identifier for the Kafka consumer client. |
|
A string that identifies the kind of message consumption. For example, |
|
The size of the Kafka record payload in bytes. For example, |
|
The partition of the Kafka record. For example, |
|
The offset of the Kafka record in the corresponding partition. For example, |
|
An optional attribute that contains the key of the Kafka record, if the key is serializable. For example, |
|
An optional flag that indicates whether the Kafka record is a tombstone, if detected. For example, |
|
The type of the mapping from the |
Kafka Send Span
The Kafka send
span captures tracing data for incoming Kafka records.
The OpenTelemetry SpanKind of Kafka send spans is PRODUCER
.
Span Attribute | Description |
---|---|
|
A string that identifies the messaging system. For example, |
|
The topic of the Kafka record. For example, |
|
A unique identifier for the Kafka producer client. |
|
The size of the Kafka record payload in bytes. For example, |
|
The partition of the Kafka record. For example, |
|
The offset of the Kafka record in the corresponding partition. For example, |
|
An optional attribute that contains the key of the Kafka record, if the key is serializable. For example, |
|
An optional flag that indicates whether the Kafka record is a tombstone, if detected. For example, |
|
The type of the mapping from the |
MQTT to Kafka Transformer Process Span
The MQTT to Kafka Transformer process
span captures tracing data for each MqttToKafkaTransformer.transformMqttToKafka()
invocation.
The OpenTelemetry SpanKind of MQTT to Kafka Transformer process spans is INTERNAL
.
Span Attribute | Description |
---|---|
|
The fully qualified name of the transformer as defined in the |
Kafka to MQTT Transformer Process Span
The Kafka to MQTT Transformer process
span captures tracing data for each KafkaToMqttTransformer.transformKafkaToMqtt()
invocation.
The OpenTelemetry SpanKind of Kafka to MQTT Transformer process spans is INTERNAL
.
Span Attribute | Description |
---|---|
|
The fully qualified name of the transformer as defined in the |