AWS MSK (Prometheus)¶
Amazon Managed Streaming for Apache Kafka (Amazon MSK) open monitoring exposes Kafka Broker JMX and Broker node metrics in Prometheus format. DataKit scrapes these endpoints directly with the Prometheus collector, without AWS AK, Func, or CloudWatch collection scripts.
Configuration¶
Prerequisites¶
- This integration applies to MSK Provisioned clusters with Amazon MSK open monitoring enabled.
- An existing cluster must be in the
ACTIVEstate before open monitoring can be enabled. Enable it during cluster creation or later in the Monitoring section of the cluster properties. - DataKit must be deployed in a network that can resolve and access the private DNS names of MSK Brokers, typically the same VPC or a connected VPC.
- MSK security groups must allow the DataKit security group or network segment to access TCP ports
11001and11002; DNS must be enabled for the VPC. For network requirements, see AWS MSK Prometheus Collector prerequisites. - JMX Exporter uses port
11001, and Node Exporter uses port11002. AWS recommends a scrape interval of at least 60 seconds; shorter intervals may increase cluster CPU utilization.
Note: KRaft metadata mode and MSK Express Broker cannot enable open monitoring and public access at the same time. Open monitoring itself is free, but cross-Availability Zone data transfer may incur charges.
Enable Open Monitoring¶
When creating an MSK Provisioned cluster, select Enable open monitoring with Prometheus in the Monitoring section and enable JMX Exporter, Node Exporter, or both.
Enable it for an existing cluster as follows:
- Sign in to the Amazon MSK console and open the target cluster.
- On the Properties tab, locate Monitoring and click Edit.
- Select Enable open monitoring with Prometheus.
- Enable JMX Exporter, Node Exporter, or both, and save the changes.
You can also use the AWS CLI to update the monitoring configuration:
aws kafka update-monitoring \
--cluster-arn <cluster-arn> \
--current-version <current-version> \
--open-monitoring 'Prometheus={JmxExporter={EnabledInBroker=true},NodeExporter={EnabledInBroker=true}}'
For more information, see the official AWS documentation:
Obtain Prometheus Monitoring Targets¶
Use ListNodes to obtain the cluster Broker DNS names:
Record all Broker DNS names in BrokerNodeInfo.Endpoints from the response. Configure two targets for each Broker:
| Type | Target | Description |
|---|---|---|
| JMX Exporter | <broker-dns>:11001 |
Kafka Broker JMX metrics and Consumer Lag metrics. |
| Node Exporter | <broker-dns>:11002 |
Broker node CPU, memory, disk, and network metrics. |
To collect Controller JMX metrics from a KRaft cluster, also add the Controller DNS names returned by ControllerNodeInfo.Endpoints to the 11001 targets. For endpoint formats and KRaft details, see AWS Prometheus host configuration.
Verify network connectivity from the DataKit host:
curl -sS "http://<broker-dns>:11001/metrics" | head
curl -sS "http://<broker-dns>:11002/metrics" | head
Configure DataKit¶
In the DataKit installation directory, go to conf.d/samples, copy prom.conf.sample, and name it aws_msk_prom.conf:
Edit aws_msk_prom.conf. Add all Broker DNS names to the corresponding urls; add KRaft Controller DNS names only to the JMX Exporter configuration.
[[inputs.prom]]
urls = [
"http://<broker-dns-1>:11001/metrics",
"http://<broker-dns-2>:11001/metrics",
# Optional for KRaft:
# "http://<controller-dns-1>:11001/metrics",
]
source = "kafka_jmx"
interval = "60s"
metric_name_filter = ["^kafka_"]
measurement_prefix = ""
keep_exist_metric_name = false
honor_timestamps = true
election = false
disable_host_tag = true
disable_instance_tag = true
disable_info_tag = false
[[inputs.prom.measurements]]
prefix = "kafka_controller_"
name = "kafka_controller"
[[inputs.prom.measurements]]
prefix = "kafka_network_"
name = "kafka_network"
[[inputs.prom.measurements]]
prefix = "kafka_log_"
name = "kafka_log"
[[inputs.prom.measurements]]
prefix = "kafka_server_"
name = "kafka_server"
[inputs.prom.tags]
cloud_provider = "aws"
service = "msk"
region_id = "<aws-region>"
cluster_id = "<cluster-arn-or-id>"
cluster_name = "<msk-cluster-name>"
[[inputs.prom]]
urls = [
"http://<broker-dns-1>:11002/metrics",
"http://<broker-dns-2>:11002/metrics",
]
source = "kafka_node"
interval = "60s"
metric_name_filter = ["^node_"]
measurement_prefix = ""
keep_exist_metric_name = false
honor_timestamps = true
election = false
disable_host_tag = true
disable_instance_tag = true
disable_info_tag = false
[[inputs.prom.measurements]]
prefix = "node_"
name = "kafka_node"
[inputs.prom.tags]
cloud_provider = "aws"
service = "msk"
region_id = "<aws-region>"
cluster_id = "<cluster-arn-or-id>"
cluster_name = "<msk-cluster-name>"
# Optional: collect JMX Exporter metrics from application clients such as Producer, Consumer, Kafka Streams, and Kafka Connect.
[[inputs.prom]]
urls = [
"http://<producer-client-ip>:7072/metrics",
"http://<consumer-client-ip>:7073/metrics",
"http://<streams-client-ip>:7074/metrics",
"http://<connect-worker-ip>:7075/metrics",
]
source = "kafka_client"
interval = "60s"
metric_name_filter = ["^kafka_(producer|consumer|stream|connect)_"]
measurement_prefix = ""
keep_exist_metric_name = false
honor_timestamps = true
election = false
disable_host_tag = false
disable_instance_tag = true
disable_info_tag = false
[[inputs.prom.measurements]]
prefix = "kafka_producer_"
name = "kafka_producer"
[[inputs.prom.measurements]]
prefix = "kafka_consumer_"
name = "kafka_consumer"
[[inputs.prom.measurements]]
prefix = "kafka_connect_"
name = "kafka_connect"
[[inputs.prom.measurements]]
prefix = "kafka_stream_"
name = "kafka_stream"
[inputs.prom.tags]
cloud_provider = "aws"
service = "msk"
region_id = "<aws-region>"
cluster_id = "<cluster-arn-or-id>"
cluster_name = "<msk-cluster-name>"
11001 exposes Kafka Broker JMX and Consumer Lag metrics, while 11002 exposes Broker node metrics such as CPU and disk. For the exact scope, see AWS Prometheus metrics. Producer, Consumer, Kafka Streams, and Kafka Connect are client-process metrics and require JMX Exporter on the corresponding processes.
Restart DataKit after completing the configuration:
Verification¶
- Confirm in the DataKit logs that
aws_msk_prom.confhas no connection or resolution errors. - In TrueWatch Metrics, confirm that measurements such as
kafka_controller,kafka_network,kafka_server, andkafka_nodeexist. - Verify that
cloud_provider=aws,cluster_name=<msk-cluster-name>, and the Brokerhosttag have the expected values. - If client JMX Exporters are configured, confirm that
kafka_producer,kafka_consumer,kafka_stream, andkafka_connectcontain data.
Metrics¶
After configuring Prometheus collection, the recommended scope includes 9 measurements and 115 metric contexts distinguished by measurement, field, and fixed semantic tags. Amazon MSK open monitoring natively provides Broker JMX and Node Exporter metrics; Producer, Consumer, Kafka Streams, and Kafka Connect metrics require JMX Exporter on the corresponding client processes.
Controller Metrics¶
kafka_controller contains 8 recommended metric contexts.
| MetricName | MetricDescribe | Dimensions | Unit |
|---|---|---|---|
kafka_controller.ControllerEventManager_Count{name=EventQueueTimeMs} |
Cumulative samples recorded by the Controller event-queue wait-time metric. | cloud_provider, cluster_name, host, name |
count |
kafka_controller.ControllerEventManager_Value{name=EventQueueSize} |
Number of events currently waiting in the Controller event queue. | cloud_provider, cluster_name, host, name |
count |
kafka_controller.KafkaController_Value{name=ActiveBrokerCount} |
Number of Brokers currently active and participating in cluster services. | cloud_provider, cluster_name, host, name |
count |
kafka_controller.KafkaController_Value{name=ActiveControllerCount} |
Number of active Controllers in the cluster; normally 1. | cloud_provider, cluster_name, host, name |
count |
kafka_controller.KafkaController_Value{name=FencedBrokerCount} |
Number of fenced Brokers that cannot participate in normal cluster services. | cloud_provider, cluster_name, host, name |
count |
kafka_controller.KafkaController_Value{name=GlobalPartitionCount} |
Current total partition count; use the maximum when multiple Brokers expose the same global value. | cloud_provider, cluster_name, host, name |
count |
kafka_controller.KafkaController_Value{name=GlobalTopicCount} |
Current total Topic count; use the maximum when multiple Brokers expose the same global value. | cloud_provider, cluster_name, host, name |
count |
kafka_controller.KafkaController_Value{name=OfflinePartitionsCount} |
Number of partitions without a Leader that cannot be read or written normally. | cloud_provider, cluster_name, host, name |
count |
Network Request Metrics¶
kafka_network contains 24 recommended metric contexts.
| MetricName | MetricDescribe | Dimensions | Unit |
|---|---|---|---|
kafka_network.RequestChannel_Value{name=RequestQueueSize} |
Entries currently waiting in the Broker request queue. | cloud_provider, cluster_name, host, name |
count |
kafka_network.RequestChannel_Value{name=ResponseQueueSize} |
Entries currently waiting in the Broker response queue. | cloud_provider, cluster_name, host, name |
count |
kafka_network.RequestMetrics_95thPercentile{name=TotalTimeMs;request=FetchConsumer} |
FetchConsumer request end-to-end P95 processing time. | cloud_provider, cluster_name, host |
ms |
kafka_network.RequestMetrics_95thPercentile{name=TotalTimeMs;request=Produce} |
Produce request end-to-end P95 processing time. | cloud_provider, cluster_name, host |
ms |
kafka_network.RequestMetrics_Max{name=TemporaryMemoryBytes;request=Produce} |
Maximum temporary memory used by the Broker while processing Produce requests. | cloud_provider, cluster_name, host, name, request |
B |
kafka_network.RequestMetrics_Mean{name=LocalTimeMs;request=FetchConsumer} |
FetchConsumer request average local processing time. | cloud_provider, cluster_name, host, name, request |
ms |
kafka_network.RequestMetrics_Mean{name=LocalTimeMs;request=FetchFollower} |
FetchFollower request average local processing time. | cloud_provider, cluster_name, host, name, request |
ms |
kafka_network.RequestMetrics_Mean{name=MessageConversionsTimeMs;request=Produce} |
Produce request average message-format conversion time. | cloud_provider, cluster_name, host, name, request |
ms |
kafka_network.RequestMetrics_Mean{name=RemoteTimeMs;request=FetchConsumer} |
FetchConsumer request average remote processing time. | cloud_provider, cluster_name, host, name, request |
ms |
kafka_network.RequestMetrics_Mean{name=RemoteTimeMs;request=FetchFollower} |
FetchFollower request average remote processing time. | cloud_provider, cluster_name, host, name, request |
ms |
kafka_network.RequestMetrics_Mean{name=RemoteTimeMs;request=Produce} |
Produce request average remote processing time. | cloud_provider, cluster_name, host, name, request |
ms |
kafka_network.RequestMetrics_Mean{name=RequestQueueTimeMs;request=FetchConsumer} |
FetchConsumer request average wait time in the request queue. | cloud_provider, cluster_name, host, name, request |
ms |
kafka_network.RequestMetrics_Mean{name=RequestQueueTimeMs;request=Produce} |
Produce request average wait time in the request queue. | cloud_provider, cluster_name, host, name, request |
ms |
kafka_network.RequestMetrics_Mean{name=ResponseQueueTimeMs;request=FetchConsumer} |
FetchConsumer request average wait time in the response queue. | cloud_provider, cluster_name, host, name, request |
ms |
kafka_network.RequestMetrics_Mean{name=ResponseQueueTimeMs;request=FetchFollower} |
FetchFollower request average wait time in the response queue. | cloud_provider, cluster_name, host, name, request |
ms |
kafka_network.RequestMetrics_Mean{name=ResponseQueueTimeMs;request=Produce} |
Produce request average wait time in the response queue. | cloud_provider, cluster_name, host, name, request |
ms |
kafka_network.RequestMetrics_Mean{name=ResponseSendTimeMs;request=FetchConsumer} |
FetchConsumer request average response-send time. | cloud_provider, cluster_name, host, name, request |
ms |
kafka_network.RequestMetrics_Mean{name=ResponseSendTimeMs;request=FetchFollower} |
FetchFollower request average response-send time. | cloud_provider, cluster_name, host, name, request |
ms |
kafka_network.RequestMetrics_Mean{name=ResponseSendTimeMs;request=Produce} |
Produce request average response-send time. | cloud_provider, cluster_name, host, name, request |
ms |
kafka_network.RequestMetrics_Mean{name=TotalTimeMs;request=FetchConsumer} |
FetchConsumer request average end-to-end processing time. | cloud_provider, cluster_name, host, name, request |
ms |
kafka_network.RequestMetrics_Mean{name=TotalTimeMs;request=Produce} |
Produce request average end-to-end processing time. | cloud_provider, cluster_name, host, name, request |
ms |
kafka_network.RequestMetrics_OneMinuteRate{name=RequestsPerSec} |
Broker request rate over the last minute. | cloud_provider, cluster_name, host, name, request |
ops |
kafka_network.SocketServer_Value{name=MemoryPoolUsed} |
Memory currently used by the Broker network-layer memory pool. | cloud_provider, cluster_name, host, name |
B |
kafka_network.SocketServer_Value{name=NetworkProcessorAvgIdlePercent} |
Ratio of time that Broker network-processing threads are idle. | cloud_provider, cluster_name, host, name |
percent |
Log Metrics¶
kafka_log contains 4 recommended metric contexts.
| MetricName | MetricDescribe | Dimensions | Unit |
|---|---|---|---|
kafka_log.LogFlushStats_OneMinuteRate{name=LogFlushRateAndTimeMs} |
Average number of Broker log flush operations per second. | cloud_provider, cluster_name, host, name |
ops |
kafka_log.Log_Value{name=LogEndOffset} |
Current log end offset of the selected Topic partition. | cloud_provider, cluster_name, host, name, partition, topic |
offset |
kafka_log.Log_Value{name=LogStartOffset} |
Earliest readable log offset of the selected Topic partition. | cloud_provider, cluster_name, host, name, partition, topic |
offset |
kafka_log.Log_Value{name=Size} |
Disk space used by logs for the selected Topic partition. | cloud_provider, cluster_name, host, name, topic |
B |
Broker Service Metrics¶
kafka_server contains 10 recommended metric contexts.
| MetricName | MetricDescribe | Dimensions | Unit |
|---|---|---|---|
kafka_server.BrokerTopicMetrics_OneMinuteRate{name=BytesInPerSec} |
Bytes of produced messages received by the Broker or Topic per second. | cloud_provider, cluster_name, host, name, topic |
B/S |
kafka_server.BrokerTopicMetrics_OneMinuteRate{name=BytesOutPerSec} |
Bytes sent by the Broker or Topic to consumers per second. | cloud_provider, cluster_name, host, name, topic |
B/S |
kafka_server.BrokerTopicMetrics_OneMinuteRate{name=FetchMessageConversionsPerSec} |
Number of Fetch message-format conversions performed by the Broker per second. | cloud_provider, cluster_name, host, name, topic |
ops |
kafka_server.BrokerTopicMetrics_OneMinuteRate{name=MessagesInPerSec} |
Messages received by the Broker or Topic per second. | cloud_provider, cluster_name, host, name, topic |
ops |
kafka_server.BrokerTopicMetrics_OneMinuteRate{name=TotalFetchRequestsPerSec} |
Fetch requests received by the Broker or Topic per second. | cloud_provider, cluster_name, host, name, topic |
ops |
kafka_server.BrokerTopicMetrics_OneMinuteRate{name=TotalProduceRequestsPerSec} |
Produce requests received by the Broker or Topic per second. | cloud_provider, cluster_name, host, name, topic |
ops |
kafka_server.KafkaRequestHandlerPool_FiveMinuteRate{name=RequestHandlerAvgIdlePercent} |
Average idle ratio of Broker request-handler threads over the last five minutes. | cloud_provider, cluster_name, host |
percent |
kafka_server.ReplicaManager_Value{name=UnderMinIsrPartitionCount} |
Number of partitions whose in-sync replica count is below min.insync.replicas. | cloud_provider, cluster_name |
count |
kafka_server.ReplicaManager_Value{name=UnderReplicatedPartitions} |
Number of partitions whose replica count is below the target replication factor. | cloud_provider, cluster_name |
count |
kafka_server.socket_server_metrics_response_rate |
Responses sent by Broker network-processing threads per second. | cloud_provider, cluster_name, host |
ops |
Node Resource Metrics¶
kafka_node contains 9 recommended metric contexts.
| MetricName | MetricDescribe | Dimensions | Unit |
|---|---|---|---|
kafka_node.cpu_seconds_total{mode!=idle} |
Broker node CPU utilization calculated as the non-idle CPU-time increase divided by total CPU-time increase. | cloud_provider, cluster_name, host, mode |
percent |
kafka_node.disk_read_bytes_total |
Bytes read from Broker node disks per second. | cloud_provider, cluster_name, host |
B/S |
kafka_node.disk_reads_completed_total |
Disk read operations completed by Broker nodes per second. | cloud_provider, cluster_name, host |
ops |
kafka_node.disk_writes_completed_total |
Disk write operations completed by Broker nodes per second. | cloud_provider, cluster_name, host |
ops |
kafka_node.disk_written_bytes_total |
Bytes written to Broker node disks per second. | cloud_provider, cluster_name, host |
B/S |
kafka_node.filesystem_avail_bytes |
Percentage of used space on the Broker node filesystem. | cloud_provider, cluster_name, host |
percent |
kafka_node.filesystem_files |
Percentage of used Inodes on the Broker node filesystem. | cloud_provider, cluster_name, host |
percent |
kafka_node.filesystem_files_free |
Percentage of used Inodes on the Broker node filesystem. | cloud_provider, cluster_name, host |
percent |
kafka_node.filesystem_size_bytes |
Percentage of used space on the Broker node filesystem. | cloud_provider, cluster_name, host |
percent |
Producer Client Metrics¶
kafka_producer contains 13 recommended metric contexts.
| MetricName | MetricDescribe | Dimensions | Unit |
|---|---|---|---|
kafka_producer.metrics_buffer_available_bytes |
Currently unused Producer buffer memory. | client_id, cloud_provider, cluster_name, host |
B |
kafka_producer.metrics_buffer_exhausted |
Cumulative record sends discarded by Producer due to buffer exhaustion. | client_id, cloud_provider, cluster_name, host |
count |
kafka_producer.metrics_buffer_exhausted_rate |
Producer record sends discarded per second due to buffer exhaustion. | client_id, cloud_provider, cluster_name, host |
ops |
kafka_producer.metrics_bufferpool_wait_time_ns |
Cumulative time Producer waited for buffer-space allocation. | client_id, cloud_provider, cluster_name, host |
ns |
kafka_producer.metrics_connection_count |
Current active client connections. | client_id, cloud_provider, cluster_name, host |
count |
kafka_producer.metrics_failed_authentication |
Cumulative client connections with authentication failures. | client_id, cloud_provider, cluster_name, host |
count |
kafka_producer.metrics_flush_time_ns |
Cumulative time spent by Producer on flush operations. | client_id, cloud_provider, cluster_name, host |
ns |
kafka_producer.metrics_io_wait_time_ns |
Cumulative time Producer I/O threads waited for readable/writable sockets. | client_id, cloud_provider, cluster_name, host |
ns |
kafka_producer.metrics_request_rate |
Requests sent by the client per second. | client_id, cloud_provider, cluster_name, host |
ops |
kafka_producer.metrics_requests_in_flight |
Producer requests sent but not yet answered. | client_id, cloud_provider, cluster_name, host |
count |
kafka_producer.metrics_response_rate |
Responses received by the client per second. | client_id, cloud_provider, cluster_name, host |
ops |
kafka_producer.metrics_select_rate |
Select operations performed by client I/O threads per second. | client_id, cloud_provider, cluster_name, host |
ops |
kafka_producer.metrics_txn_commit_time_ns |
Cumulative time Producer spent committing transactions. | client_id, cloud_provider, cluster_name, host |
ns |
Consumer Client Metrics¶
kafka_consumer contains 14 recommended metric contexts.
| MetricName | MetricDescribe | Dimensions | Unit |
|---|---|---|---|
kafka_consumer.coordinator_metrics_rebalance_latency |
Total duration of the latest Consumer Group rebalance. | client_id, cloud_provider, cluster_name, host |
ms |
kafka_consumer.coordinator_metrics_rebalance_rate_per_hour |
Average Consumer Group rebalances per hour. | client_id, cloud_provider, cluster_name, host |
times/hour |
kafka_consumer.metrics_connection_close_rate |
Connections closed by Consumer per second. | client_id, cloud_provider, cluster_name, host |
ops |
kafka_consumer.metrics_connection_count |
Current active client connections. | client_id, cloud_provider, cluster_name, host |
count |
kafka_consumer.metrics_failed_authentication |
Cumulative client connections with authentication failures. | client_id, cloud_provider, cluster_name, host |
count |
kafka_consumer.metrics_incoming_byte_rate |
Bytes read by the client from network sockets per second. | client_id, cloud_provider, cluster_name, host |
B/S |
kafka_consumer.metrics_io_time_ns_avg |
Average I/O time per Consumer select call. | client_id, cloud_provider, cluster_name, host |
ns |
kafka_consumer.metrics_io_wait_time_ns_avg |
Average time Consumer I/O threads wait for readable/writable sockets. | client_id, cloud_provider, cluster_name, host |
ns |
kafka_consumer.metrics_outgoing_byte_rate |
Bytes sent by the client to Brokers per second. | client_id, cloud_provider, cluster_name, host |
B/S |
kafka_consumer.metrics_request_rate |
Requests sent by the client per second. | client_id, cloud_provider, cluster_name, host |
ops |
kafka_consumer.metrics_request_size_avg |
Average Consumer request size. | client_id, cloud_provider, cluster_name, host |
B |
kafka_consumer.metrics_response_rate |
Responses received by the client per second. | client_id, cloud_provider, cluster_name, host |
ops |
kafka_consumer.metrics_select_rate |
Select operations performed by client I/O threads per second. | client_id, cloud_provider, cluster_name, host |
ops |
kafka_consumer.metrics_time_between_poll_avg |
Average interval between adjacent Consumer poll calls. | client_id, cloud_provider, cluster_name, host |
ms |
Kafka Streams Metrics¶
kafka_stream contains 25 recommended metric contexts.
| MetricName | MetricDescribe | Dimensions | Unit |
|---|---|---|---|
kafka_stream.stream_state_metrics_all_rate |
Operations performed by Kafka Streams state stores per second. | cloud_provider, cluster_name, host, rocksdb_state_id, thread_id |
ops |
kafka_stream.stream_state_metrics_block_cache_capacity |
Kafka Streams RocksDB block-cache capacity. | cloud_provider, cluster_name, host, rocksdb_state_id, thread_id |
B |
kafka_stream.stream_state_metrics_block_cache_data_hit_ratio |
Kafka Streams RocksDB block-cache data hit ratio. | cloud_provider, cluster_name, host, rocksdb_state_id, thread_id |
percent |
kafka_stream.stream_state_metrics_block_cache_filter_hit_ratio |
Kafka Streams RocksDB block-cache filter hit ratio. | cloud_provider, cluster_name, host, rocksdb_state_id, thread_id |
percent |
kafka_stream.stream_state_metrics_block_cache_index_hit_ratio |
Kafka Streams RocksDB block-cache index hit ratio. | cloud_provider, cluster_name, host, rocksdb_state_id, thread_id |
percent |
kafka_stream.stream_state_metrics_block_cache_usage |
Current Kafka Streams RocksDB block-cache usage. | cloud_provider, cluster_name, host, rocksdb_state_id, thread_id |
B |
kafka_stream.stream_state_metrics_bytes_read_compaction_rate |
Bytes read per second during Kafka Streams state-store compaction. | cloud_provider, cluster_name, host, rocksdb_state_id, thread_id |
B/S |
kafka_stream.stream_state_metrics_bytes_read_rate |
Bytes read by Kafka Streams state stores per second. | cloud_provider, cluster_name, host, rocksdb_state_id, thread_id |
B/S |
kafka_stream.stream_state_metrics_bytes_written_compaction_rate |
Bytes written per second during Kafka Streams state-store compaction. | cloud_provider, cluster_name, host, rocksdb_state_id, thread_id |
B/S |
kafka_stream.stream_state_metrics_bytes_written_rate |
Bytes written by Kafka Streams state stores per second. | cloud_provider, cluster_name, host, rocksdb_state_id, thread_id |
B/S |
kafka_stream.stream_task_metrics_active_process_ratio |
Ratio of Kafka Streams task-thread time spent processing records. | cloud_provider, cluster_name, host, task_id, thread_id |
percent |
kafka_stream.stream_task_metrics_cache_size_bytes |
Total size of the Kafka Streams task cache. | cloud_provider, cluster_name, host, task_id, thread_id |
B |
kafka_stream.stream_task_metrics_enforced_processing_rate |
Enforced processing operations performed by Kafka Streams tasks per second. | cloud_provider, cluster_name, host, task_id, thread_id |
ops |
kafka_stream.stream_task_metrics_process_rate |
Records processed by Kafka Streams tasks per second. | cloud_provider, cluster_name, host, task_id, thread_id |
ops |
kafka_stream.stream_thread_metrics_blocked_time_ns |
Cumulative time Kafka Streams threads were blocked while waiting. | cloud_provider, cluster_name, host, thread_id |
ns |
kafka_stream.stream_thread_metrics_commit_rate |
State commits by Kafka Streams threads per second. | cloud_provider, cluster_name, host, thread_id |
ops |
kafka_stream.stream_thread_metrics_poll_latency_avg |
Average latency of Kafka Streams thread poll calls. | cloud_provider, cluster_name, host, thread_id |
ms |
kafka_stream.stream_thread_metrics_poll_rate |
Poll operations performed by Kafka Streams threads per second. | cloud_provider, cluster_name, host, thread_id |
ops |
kafka_stream.stream_thread_metrics_task |
Cumulative tasks created by Kafka Streams threads. | cloud_provider, cluster_name, host, thread_id |
count |
kafka_stream.stream_thread_metrics_task_closed |
Cumulative tasks closed by Kafka Streams threads. | cloud_provider, cluster_name, host, thread_id |
count |
kafka_stream.stream_thread_metrics_thread_start_time |
Kafka Streams thread start timestamp. | cloud_provider, cluster_name, host, thread_id |
ms |
kafka_stream.stream_topic_metrics_bytes_consumed |
Cumulative bytes consumed by Kafka Streams from Topics. | cloud_provider, cluster_name, host, thread_id, topic |
B |
kafka_stream.stream_topic_metrics_bytes_produced |
Cumulative bytes produced by Kafka Streams to Topics. | cloud_provider, cluster_name, host, thread_id, topic |
B |
kafka_stream.stream_topic_metrics_records_consumed |
Cumulative records consumed by Kafka Streams source processor nodes. | cloud_provider, cluster_name, host, processor_node_id, thread_id, topic |
count |
kafka_stream.stream_topic_metrics_records_produced |
Cumulative records produced by Kafka Streams sink processor nodes. | cloud_provider, cluster_name, host, processor_node_id, thread_id, topic |
count |
Kafka Connect Metrics¶
kafka_connect contains 8 recommended metric contexts.
| MetricName | MetricDescribe | Dimensions | Unit |
|---|---|---|---|
kafka_connect.worker_connector_count |
Number of Connectors currently running in the Kafka Connect Worker. | cloud_provider, cluster_name, host |
count |
kafka_connect.worker_connector_startup_attempts |
Cumulative Connector startup attempts by the Kafka Connect Worker. | cloud_provider, cluster_name, host |
count |
kafka_connect.worker_connector_startup_failure_percentage |
Kafka Connect Worker Connector startup failure ratio. | cloud_provider, cluster_name, host |
percent |
kafka_connect.worker_rebalance_completed_rebalances |
Cumulative rebalances completed by the Kafka Connect Worker. | cloud_provider, cluster_name, host |
count |
kafka_connect.worker_rebalance_time_since_last_rebalance_ms |
Time since the Kafka Connect Worker last completed a rebalance. | cloud_provider, cluster_name, host |
ms |
kafka_connect.worker_task_startup_attempts |
Cumulative Task startup attempts by the Kafka Connect Worker. | cloud_provider, cluster_name, host |
count |
kafka_connect.worker_task_startup_failure |
Cumulative Task startup failures in the Kafka Connect Worker. | cloud_provider, cluster_name, host |
count |
kafka_connect.worker_task_startup_failure_percentage |
Kafka Connect Worker Task startup failure ratio. | cloud_provider, cluster_name, host |
percent |