conduktor.io ↗

Kafka PushTelemetry Request Wire Format v0 — Binary Protocol Layout

What is PushTelemetry?

Delivers OpenTelemetry-encoded metrics to the broker on the interval agreed during GetTelemetrySubscriptions (KIP-714). This enables broker-side aggregation of client metrics without external agents: latency histograms, record error rates, and connection stats flow through here.

Related Errors

TELEMETRY_TOO_LARGE · UNKNOWN_SUBSCRIPTION_ID

Wire Diagram

Request Header · flexible
message_size int32 · 4B
api_key int16 · 2B
api_version int16 · 2B
correlation_id int32 · 4B
client_id string (compact)
tagged var
PushTelemetryRequest v0
ClientInstanceId uuid · 16B
SubscriptionId int32 · 4B
Terminating bool · 1B
CompressionType int8 · 1B
Metrics bytes (compact)
tagged var

Schema & Example

Schema
{
  "ClientInstanceId": uuid,
  "SubscriptionId": int32,
  "Terminating": bool,
  "CompressionType": int8,
  "Metrics": bytes
}
Example
{
  "ClientInstanceId": "550e8400-e29b-41d4-a716-446655440000",
  "SubscriptionId": 1,
  "Terminating": true,
  "CompressionType": 1,
  "Metrics": "<binary>"
}