Kafka Error UNKNOWN_SUBSCRIPTION_ID
Error code 117 · Non-retriable Telemetry
Client sent a push telemetry request with an invalid or outdated subscription ID.
Common Causes
- The client sent a `PushTelemetry` request with a subscription ID that the broker doesn't recognize — typically because the subscription expired or the broker restarted and lost in-memory subscription state.
- Client reused a cached subscription ID after reconnecting to a different broker (or after broker restart) where the subscription was not replicated.
- Telemetry subscription ID was obtained from a `GetTelemetrySubscriptions` response but the client waited too long before sending the first `PushTelemetry`, causing the subscription to expire on the broker side.
Solutions
- The client must call `GetTelemetrySubscriptions` again to obtain a fresh, valid subscription ID before retrying `PushTelemetry`. Kafka clients implementing KIP-714 handle this automatically.
- Ensure the client re-subscribes after any broker reconnection event rather than reusing cached subscription IDs. The subscription ID is broker-local and not transferable.
- Honor the push interval returned by GetTelemetrySubscriptions and do not cache subscription IDs across client restarts or broker reconnects.
Diagnostic Commands
# Check if broker supports telemetry APIs
kafka-broker-api-versions.sh --bootstrap-server localhost:9092 | grep -i telemetry
# Look for telemetry events in logs
grep 'UNKNOWN_SUBSCRIPTION_ID\|PushTelemetry\|GetTelemetrySubscriptions' /var/log/kafka/server.log | tail -30Related APIs
This error can be returned by: GetTelemetrySubscriptions · PushTelemetry
Debugging Kafka errors? Conduktor Console gives you real-time visibility into your cluster. Explore all errors in the Error Decoder.