Monitoring Stream Applications

Metrics

The Streamiz library reports a variety of metrics through his own registry. You have to specify a metric reporter (see IStreamConfig.MetricsReporter) to export all metrics to a different layer (Prometheus, Elastic, …). This reporter will be triggered every IStreamConfig.MetricsIntervalMs (minimium and default : 30 seconds).

Streamiz provide two implementations :

  • one for Prometheus. See Streamiz.Kafka.Net.Metrics.Prometheus package.

  • an other for OpenTelemetry. See Streamiz.Kafka.Net.Metrics.OpenTelemetry package.

Each package provide an extension method to specify settings.

Example with the Prometheus exporter :

var config = new StreamConfig<StringSerDes, StringSerDes>();
config.ApplicationId = "test-app2";
config.BootstrapServers = "localhost:9092";
config.MetricsRecording = MetricsRecordingLevel.DEBUG;
// Run a http endpoint to 9090 and expose metrics to prometheus format
// Expose librdkafka metrics too !
config.UsePrometheusReporter(9090, true);

Accessing Metrics

The entire metrics registry of a KafkaStream instance can be accessed read-only through the method KafkaStream.Metrics(). The metrics registry will contain all the available metrics listed below.

Configuring Metrics Granularity

By default Streamiz has metrics with two recording levels: INFO and DEBUG. The DEBUG level records most metrics, while the INFO level records only some of them. Use the IStreamConfig.MetricsRecording configuration option to specify which metrics you want collected, see configuration parameters.

Application metrics

All the following metrics have a recording level of INFO.

Sensor : stream-metrics.sensor.app-info, Type : stream-metrics

Metric name Description Tags
version The version of the Streamiz client application_id,version
application_id The application ID of the Streamiz client application_id
topology_description The description of the topology executed in the Streamiz client application_id,topology_description
state The state of the Streamiz client (1 = running, 0 = stopped) application_id
stream_threads The number of stream threads that are running or participating in rebalance application_id

Thread metrics

All the following metrics have a recording level of INFO.

Sensor : internal.[THREAD_ID].sensor.thread-start-time, Type : stream-thread-metrics

Metric name Description Tags
thread-start-time The time that the thread was started thread_id

Sensor : internal.[THREAD_ID].sensor.task-created, Type : stream-thread-metrics

Metric name Description Tags
task-created-total The total number of newly created tasks thread_id
task-created-rate The average per-second number of newly created tasks thread_id

Sensor : internal.[THREAD_ID].sensor.task-closed, Type : stream-thread-metrics

Metric name Description Tags
task-closed-total The total number of closed tasks thread_id
task-closed-rate The average per-second number of closed tasks thread_id

Sensor : internal.[THREAD_ID].sensor.commit, Type : stream-thread-metrics

Metric name Description Tags
commit-total The total number of calls to commit thread_id
commit-rate The average per-second number of calls to commit thread_id
commit-latency-avg The average commit latency thread_id
commit-latency-max The maximum commit latency thread_id

Sensor : internal.[THREAD_ID].sensor.poll, Type : stream-thread-metrics

Metric name Description Tags
poll-total The total number of calls to poll thread_id
poll-rate The average per-second number of calls to poll thread_id
poll-latency-avg The average poll latency thread_id
poll-latency-max The maximum poll latency thread_id

Sensor : internal.[THREAD_ID].sensor.poll-records, Type : stream-thread-metrics

Metric name Description Tags
poll-records-max The maximum number of records polled from consumer within an iteration thread_id
poll-records-avg The average number of records polled from consumer within an iteration thread_id

Sensor : internal.[THREAD_ID].sensor.process-records, Type : stream-thread-metrics

Metric name Description Tags
process-records-max The maximum number of records processed from consumer within an iteration thread_id
process-records-avg The average number of records processed from consumer within an iteration thread_id

Sensor : internal.[THREAD_ID].sensor.process-rate, Type : stream-thread-metrics

Metric name Description Tags
process-rate-rate The average per-second number of calls to process thread_id
process-rate-total The total number of calls to process thread_id

Sensor : internal.[THREAD_ID].sensor.process-latency, Type : stream-thread-metrics

Metric name Description Tags
process-latency-avg The average process latency thread_id
process-latency-max The maximum process latency thread_id

Sensor : internal.[THREAD_ID].sensor.process-ratio, Type : stream-thread-metrics

Metric name Description Tags
process-ratio The fraction of time the thread spent on processing active tasks thread_id

Sensor : internal.[THREAD_ID].sensor.poll-ratio, Type : stream-thread-metrics

Metric name Description Tags
poll-ratio The fraction of time the thread spent on polling records from consumer thread_id

Sensor : internal.[THREAD_ID].sensor.commit-ratio, Type : stream-thread-metrics

Metric name Description Tags
commit-ratio The fraction of time the thread spent on committing all tasks thread_id

Task metrics

All the following metrics have a recording level of DEBUG.

Sensor : internal.[THREAD_ID].task.[TASK_ID].sensor.process-latency, Type : stream-task-metrics

Metric name Description Tags
process-latency-avg The average latency of calls to process thread_id,task_id
process-latency-max The maximum latency of calls to process thread_id,task_id

Sensor : internal.[THREAD_ID].task.[TASK_ID].sensor.enforced-processing, Type : stream-task-metrics

Metric name Description Tags
enforced-processing-total The total number of occurrences of enforced-processing operations thread_id,task_id
enforced-processing-rate The average number of occurrences of enforced-processing operations per second thread_id,task_id

Sensor : internal.[THREAD_ID].task.[TASK_ID].sensor.process, Type : stream-task-metrics

Metric name Description Tags
process-rate The average number of calls to process per second thread_id,task_id
process-total The total number of calls to process thread_id,task_id

Sensor : internal.[THREAD_ID].task.[TASK_ID].sensor.commit, Type : stream-task-metrics

Metric name Description Tags
commit-rate The average number of calls to commit per second thread_id,task_id
commit-total The total number of calls to commit thread_id,task_id

Sensor : internal.[THREAD_ID].task.[TASK_ID].sensor.dropped-records, Type : stream-task-metrics

Metric name Description Tags
dropped-records-rate The average number of dropped records per second thread_id,task_id
dropped-records-total The total number of dropped records thread_id,task_id

Sensor : internal.[THREAD_ID].task.[TASK_ID].sensor.active-buffer-count, Type : stream-task-metrics

Metric name Description Tags
active-buffer-count The count of buffered records that are polled from consumer and not yet processed for this active task thread_id,task_id

Sensor : internal.[THREAD_ID].task.[TASK_ID].sensor.restoration-records, Type : stream-task-metrics

Metric name Description Tags
restoration-records The count of records not restored yet for this active task thread_id,task_id

Sensor : internal.[THREAD_ID].task.[TASK_ID].sensor.active-restoration, Type : stream-task-metrics

Metric name Description Tags
active-restoration Indicate if the active task is in restoration or not (1 = restoration in progress, 0 = restoration done) thread_id,task_id

Processor metrics

All the following metrics have a recording level of DEBUG.

Sensor : internal.[THREAD_ID].task.[TASK_ID].node.[PROCESSOR_NODE_ID].sensor.process, Type : stream-processor-node-metrics

Metric name Description Tags
process-rate The average number of calls to process per second thread_id,task_id,processor_node_id
process-total The total number of calls to process thread_id,task_id,processor_node_id

State store metrics

All the following metrics have a recording level of DEBUG. The store-scope value is specified in IStoreSupplier.MetricsScope for the user’s customized state stores; for built-in state stores, currently we have:

  • in-memory_state

  • in-memory-window_state

  • rocksdb_state (for RocksDB backed key-value store)

  • rocksdb-window_state (for RocksDB backed window store)

Sensor : internal.[THREAD_ID].task.[TASK_ID].store.[STORE_NAME].sensor.put, Type : stream-state-metrics

Metric name Description Tags
put-rate The average number of calls to put per second thread_id,task_id,[STORE-TYPE]_id
put-avg The average latency of calls to put thread_id,task_id,[STORE-TYPE]_id
put-max The maximum latency of calls to put thread_id,task_id,[STORE-TYPE]_id

Sensor : internal.[THREAD_ID].task.[TASK_ID].store.[STORE_NAME].sensor.put-if-absent, Type : stream-state-metrics

Metric name Description Tags
put-rate The average number of calls to put-if-absent per second thread_id,task_id,[STORE-TYPE]_id
put-avg The average latency of calls to put-if-absent thread_id,task_id,[STORE-TYPE]_id
put-max The maximum latency of calls to put-if-absent thread_id,task_id,[STORE-TYPE]_id

Sensor : internal.[THREAD_ID].task.[TASK_ID].store.[STORE_NAME].sensor.put-all, Type : stream-state-metrics

Metric name Description Tags
put-rate The average number of calls to put-all per second thread_id,task_id,[STORE-TYPE]_id
put-avg The average latency of calls to put-all thread_id,task_id,[STORE-TYPE]_id
put-max The maximum latency of calls to put-all thread_id,task_id,[STORE-TYPE]_id

Sensor : internal.[THREAD_ID].task.[TASK_ID].store.[STORE_NAME].sensor.get, Type : stream-state-metrics

Metric name Description Tags
put-rate The average number of calls to get per second thread_id,task_id,[STORE-TYPE]_id
put-avg The average latency of calls to get thread_id,task_id,[STORE-TYPE]_id
put-max The maximum latency of calls to get thread_id,task_id,[STORE-TYPE]_id

Sensor : internal.[THREAD_ID].task.[TASK_ID].store.[STORE_NAME].sensor.fetch, Type : stream-state-metrics

Metric name Description Tags
put-rate The average number of calls to fetch per second thread_id,task_id,[STORE-TYPE]_id
put-avg The average latency of calls to fetch thread_id,task_id,[STORE-TYPE]_id
put-max The maximum latency of calls to fetch thread_id,task_id,[STORE-TYPE]_id

Sensor : internal.[THREAD_ID].task.[TASK_ID].store.[STORE_NAME].sensor.all, Type : stream-state-metrics

Metric name Description Tags
put-rate The average number of calls to all per second thread_id,task_id,[STORE-TYPE]_id
put-avg The average latency of calls to all thread_id,task_id,[STORE-TYPE]_id
put-max The maximum latency of calls to all thread_id,task_id,[STORE-TYPE]_id

Sensor : internal.[THREAD_ID].task.[TASK_ID].store.[STORE_NAME].sensor.range, Type : stream-state-metrics

Metric name Description Tags
put-rate The average number of calls to range per second thread_id,task_id,[STORE-TYPE]_id
put-avg The average latency of calls to range thread_id,task_id,[STORE-TYPE]_id
put-max The maximum latency of calls to range thread_id,task_id,[STORE-TYPE]_id

Sensor : internal.[THREAD_ID].task.[TASK_ID].store.[STORE_NAME].sensor.flush, Type : stream-state-metrics

Metric name Description Tags
put-rate The average number of calls to flush per second thread_id,task_id,[STORE-TYPE]_id
put-avg The average latency of calls to flush thread_id,task_id,[STORE-TYPE]_id
put-max The maximum latency of calls to flush thread_id,task_id,[STORE-TYPE]_id

Sensor : internal.[THREAD_ID].task.[TASK_ID].store.[STORE_NAME].sensor.delete, Type : stream-state-metrics

Metric name Description Tags
put-rate The average number of calls to delete per second thread_id,task_id,[STORE-TYPE]_id
put-avg The average latency of calls to delete thread_id,task_id,[STORE-TYPE]_id
put-max The maximum latency of calls to delete thread_id,task_id,[STORE-TYPE]_id

Sensor : internal.[THREAD_ID].task.[TASK_ID].store.[STORE_NAME].sensor.remove, Type : stream-state-metrics

Metric name Description Tags
put-rate The average number of calls to remove per second thread_id,task_id,[STORE-TYPE]_id
put-avg The average latency of calls to remove thread_id,task_id,[STORE-TYPE]_id
put-max The maximum latency of calls to remove thread_id,task_id,[STORE-TYPE]_id

RocksDb metrics

Not available for now, stay tuned works in progress

Librdkafka metrics

Only main consumer and producer librdkafka statistics are exposed for now in Streamiz application. All the following metrics have a recording level of INFO.

Main consumer

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.messages-consumed-total, Type : librdkafka-consumer-metrics

Metric name Description Tags
messages-consumed-total Total number of messages consumed, not including ignored messages (due to offset, etc), from Kafka brokers librdkafka_client_id, application_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.bytes-consumed-total, Type : librdkafka-consumer-metrics

Metric name Description Tags
bytes-consumed-total Total number of bytes received from Kafka brokers librdkafka_client_id, application_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.ops-waiting-queue-total, Type : librdkafka-consumer-metrics

Metric name Description Tags
ops-waiting-queue-total Number of ops (callbacks, events, etc) waiting in queue for application to serve with rd_kafka_poll(). librdkafka_client_id, application_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.responses-received-total, Type : librdkafka-consumer-metrics

Metric name Description Tags
responses-received-total Total number of responses received from Kafka brokers. librdkafka_client_id, application_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.responses-bytes-received-total, Type : librdkafka-consumer-metrics

Metric name Description Tags
responses-bytes-received-total Total number of reponses bytes received from Kafka brokers. librdkafka_client_id, application_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.time-rebalance-age, Type : librdkafka-consumer-metrics

Metric name Description Tags
time-rebalance-age Time elapsed since last rebalance (assign or revoke) (milliseconds). librdkafka_client_id, application_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.rebalance-total, Type : librdkafka-consumer-metrics

Metric name Description Tags
rebalance-total Total number of rebalances (assign or revoke). librdkafka_client_id, application_id
Broker metrics

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.broker-responses-received-total, Type : librdkafka-consumer-metrics

Metric name Description Tags
broker-responses-received-total Total number of responses received. librdkafka_client_id, application_id, broker_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.broker-responses-bytes-received-total, Type : librdkafka-consumer-metrics

Metric name Description Tags
broker-responses-bytes-received-total Total number of bytes received. librdkafka_client_id, application_id, broker_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.broker-error-received-total, Type : librdkafka-consumer-metrics

Metric name Description Tags
broker-error-received-total Total number of receive errors. librdkafka_client_id, application_id, broker_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.broker-connection-total, Type : librdkafka-consumer-metrics

Metric name Description Tags
broker-connection-total Number of connection attempts, including successful and failed, and name resolution failures. librdkafka_client_id, application_id, broker_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.broker-disconnection-total, Type : librdkafka-consumer-metrics

Metric name Description Tags
broker-disconnection-total Number of disconnects (triggered by broker, network, load-balancer, etc.). librdkafka_client_id, application_id, broker_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.broker-latency-avg-micros, Type : librdkafka-consumer-metrics

Metric name Description Tags
broker-latency-avg-micros Broker latency / round-trip time in microseconds. librdkafka_client_id, application_id, broker_id
Topic metrics

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.topic-batch-size-bytes-avg, Type : librdkafka-consumer-metrics

Metric name Description Tags
topic-batch-size-bytes-avg Batch sizes in bytes average. librdkafka_client_id, application_id, topic

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.topic-batch-message-count-avg, Type : librdkafka-consumer-metrics

Metric name Description Tags
topic-batch-message-count-avg Batch message counts average. librdkafka_client_id, application_id, topic
Partition metrics

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.consumer-lag, Type : librdkafka-consumer-metrics

Metric name Description Tags
consumer-lag Difference between (hi_offset or ls_offset) - max(app_offset, committed_offset). hi_offset is used when isolation.level=read_uncommitted, otherwise ls_offset. librdkafka_client_id, application_id, partition_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.partition-messages-consumed-total, Type : librdkafka-consumer-metrics

Metric name Description Tags
partition-messages-consumed-total Total number of messages consumed, not including ignored messages (due to offset, etc). librdkafka_client_id, application_id, partition_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.partition-bytes-consumed-total, Type : librdkafka-consumer-metrics

Metric name Description Tags
partition-bytes-consumed-total Total number of bytes received for rxmsgs. librdkafka_client_id, application_id, partition_id

Producer

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.messages-produced-total, Type : librdkafka-producer-metrics

Metric name Description Tags
messages-produced-total Total number of messages transmitted (produced) to Kafka brokers librdkafka_client_id, application_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.bytes-produced-total, Type : librdkafka-producer-metrics

Metric name Description Tags
bytes-produced-total Total number of message bytes (including framing, such as per-Message framing and MessageSet/batch framing) transmitted to Kafka brokers librdkafka_client_id, application_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.ops-waiting-queue-total, Type : librdkafka-producer-metrics

Metric name Description Tags
ops-waiting-queue-total Number of ops (callbacks, events, etc) waiting in queue for application to serve with rd_kafka_poll() librdkafka_client_id, application_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.messages-queue-current-total, Type : librdkafka-producer-metrics

Metric name Description Tags
messages-queue-current-total Current number of messages in producer queues librdkafka_client_id, application_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.bytes-queue-current-total, Type : librdkafka-producer-metrics

Metric name Description Tags
bytes-queue-current-total Current total size of messages in producer queues librdkafka_client_id, application_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.messages-queue-max, Type : librdkafka-producer-metrics

Metric name Description Tags
messages-queue-max Threshold: maximum number of messages allowed allowed on the producer queues librdkafka_client_id, application_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.bytes-queue-max, Type : librdkafka-producer-metrics

Metric name Description Tags
bytes-queue-max Threshold: maximum total size of messages allowed on the producer queues librdkafka_client_id, application_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.request-produced-total, Type : librdkafka-producer-metrics

Metric name Description Tags
request-produced-total Total number of requests sent to Kafka brokers librdkafka_client_id, application_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.request-bytes-produced-total, Type : librdkafka-producer-metrics

Metric name Description Tags
request-bytes-produced-total Total number of bytes transmitted to Kafka brokers librdkafka_client_id, application_id
Broker metrics

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.broker-request-awaiting-total, Type : librdkafka-producer-metrics

Metric name Description Tags
broker-request-awaiting-total Number of requests awaiting transmission to broker librdkafka_client_id, application_id,broker_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.broker-message-awaiting-total, Type : librdkafka-producer-metrics

Metric name Description Tags
broker-message-awaiting-total Number of messages awaiting transmission to broker librdkafka_client_id, application_id,broker_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.broker-request-in-flight-total, Type : librdkafka-producer-metrics

Metric name Description Tags
broker-request-in-flight-total Number of requests in-flight to broker awaiting response librdkafka_client_id, application_id,broker_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.broker-message-in-flight-total, Type : librdkafka-producer-metrics

Metric name Description Tags
broker-message-in-flight-total Number of messages in-flight to broker awaiting response librdkafka_client_id, application_id,broker_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.broker-request-sent-total, Type : librdkafka-producer-metrics

Metric name Description Tags
broker-request-sent-total Total number of requests sent librdkafka_client_id, application_id,broker_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.broker-request-sent-bytes-total, Type : librdkafka-producer-metrics

Metric name Description Tags
broker-request-sent-bytes-total Total number of bytes sent librdkafka_client_id, application_id,broker_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.broker-error-total, Type : librdkafka-producer-metrics

Metric name Description Tags
broker-error-total Total number of transmission errors librdkafka_client_id, application_id,broker_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.broker-retries-total, Type : librdkafka-producer-metrics

Metric name Description Tags
broker-retries-total Total number of request retries librdkafka_client_id, application_id,broker_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.broker-timeout-total, Type : librdkafka-producer-metrics

Metric name Description Tags
broker-timeout-total Total number of requests timed out librdkafka_client_id, application_id,broker_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.broker-connection-total, Type : librdkafka-producer-metrics

Metric name Description Tags
broker-connection-total Number of connection attempts, including successful and failed, and name resolution failures. librdkafka_client_id, application_id,broker_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.broker-disconnection-total, Type : librdkafka-producer-metrics

Metric name Description Tags
broker-disconnection-total Number of disconnects (triggered by broker, network, load-balancer, etc.). librdkafka_client_id, application_id,broker_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.broker-internal-queue-latency-micros, Type : librdkafka-producer-metrics

Metric name Description Tags
broker-internal-queue-latency-micros Internal producer queue latency in microseconds. librdkafka_client_id, application_id,broker_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.broker-internal-request-queue-latency-micros, Type : librdkafka-producer-metrics

Metric name Description Tags
broker-internal-request-queue-latency-micros Internal request queue latency in microseconds. This is the time between a request is enqueued on the transmit (outbuf) queue and the time the request is written to the TCP socket. Additional buffering and latency may be incurred by the TCP stack and network. librdkafka_client_id, application_id,broker_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.broker-latency-avg-micros, Type : librdkafka-producer-metrics

Metric name Description Tags
broker-latency-avg-micros Broker latency / round-trip time in microseconds. librdkafka_client_id, application_id,broker_id
Topic metrics

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.topic-batch-size-bytes-avg, Type : librdkafka-producer-metrics

Metric name Description Tags
topic-batch-size-bytes-avg Batch sizes in bytes average librdkafka_client_id, application_id,topic

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.topic-batch-count-avg, Type : librdkafka-producer-metrics

Metric name Description Tags
topic-batch-count-avg
Batch message counts average librdkafka_client_id, application_id,topic
Partition metrics

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.partition-messages-produced-total, Type : librdkafka-producer-metrics

Metric name Description Tags
partition-messages-produced-total Total number of messages transmitted (produced) librdkafka_client_id, application_id,partition_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.partition-bytes-produced-total, Type : librdkafka-producer-metrics

Metric name Description Tags
partition-bytes-produced-total Total number of bytes transmitted for txmsgs librdkafka_client_id, application_id,partition_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.partition-messages-in-flight-total, Type : librdkafka-producer-metrics

Metric name Description Tags
partition-messages-in-flight-total Current number of messages in-flight to/from broker librdkafka_client_id, application_id,partition_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.partition-next-expected-ack, Type : librdkafka-producer-metrics

Metric name Description Tags
partition-next-expected-ack Next expected acked sequence (idempotent producer) librdkafka_client_id, application_id,partition_id

Sensor : librdkafka.[LIBRDKAFKA_CLIENT_ID].sensor.partition-last-message-id-acked, Type : librdkafka-producer-metrics

Metric name Description Tags
partition-last-message-id-acked Last acked internal message id (idempotent producer) librdkafka_client_id, application_id,partition_id

External Thread metrics

All the following metrics have a recording level of INFO.

Sensor : internal.[THREAD_ID].sensor.commit, Type : stream-thread-metrics

Metric name Description Tags
commit-total The total number of calls to commit thread_id
commit-rate The average per-second number of calls to commit thread_id
commit-latency-avg The average commit latency thread_id
commit-latency-max The maximum commit latency thread_id

Sensor : internal.[THREAD_ID].sensor.poll, Type : stream-thread-metrics

Metric name Description Tags
poll-total The total number of calls to poll thread_id
poll-rate The average per-second number of calls to poll thread_id
poll-latency-avg The average poll latency thread_id
poll-latency-max The maximum poll latency thread_id

Sensor : internal.[THREAD_ID].sensor.process-rate, Type : stream-thread-metrics

Metric name Description Tags
process-rate-rate The average per-second number of calls to process thread_id
process-rate-total The total number of calls to process thread_id

Sensor : internal.[THREAD_ID].sensor.process-latency, Type : stream-thread-metrics

Metric name Description Tags
process-latency-avg The average process latency thread_id
process-latency-max The maximum process latency thread_id

External Task metrics

All the following metrics have a recording level of DEBUG.

Sensor : internal.[THREAD_ID].task.[TASK_ID].sensor.process-latency, Type : stream-task-metrics

Metric name Description Tags
process-latency-avg The average latency of calls to process thread_id,task_id
process-latency-max The maximum latency of calls to process thread_id,task_id

Sensor : internal.[THREAD_ID].task.[TASK_ID].sensor.process, Type : stream-task-metrics

Metric name Description Tags
process-rate The average number of calls to process per second thread_id,task_id
process-total The total number of calls to process thread_id,task_id

Sensor : internal.[THREAD_ID].task.[TASK_ID].sensor.dropped-records, Type : stream-task-metrics

Metric name Description Tags
dropped-records-rate The average number of dropped records per second thread_id,task_id
dropped-records-total The total number of dropped records thread_id,task_id

Sensor : internal.[THREAD_ID].task.[TASK_ID].sensor.active-buffer-count, Type : stream-task-metrics

Metric name Description Tags
active-buffer-count The count of buffered records that are polled from consumer and not yet processed for this active task thread_id,task_id