@@ -118,6 +118,131 @@ init_config:
118118 metric_type: gauge
119119 alias: kafka.producer.io_wait
120120
121+ #
122+ # Producers (v0.11.x)
123+ #
124+ - include:
125+ domain: 'kafka.producer'
126+ bean_regex: 'kafka.producer:type=producer-metrics,client-id=([-.\w]+)'
127+ attribute:
128+ - waiting-threads:
129+ metric_type: gauge
130+ alias: kafka.producer.waiting_threads
131+ - buffer-total-bytes:
132+ metric_type: gauge
133+ alias: kafka.producer.buffer_bytes_total
134+ - buffer-available-bytes:
135+ metric_type: gauge
136+ alias: kafka.producer.available_buffer_bytes
137+ - bufferpool-wait-time:
138+ metric_type: gauge
139+ alias: kafka.producer.bufferpool_wait_time
140+ - batch-size-avg:
141+ metric_type: gauge
142+ alias: kafka.producer.batch_size_avg
143+ - batch-size-max:
144+ metric_type: gauge
145+ alias: kafka.producer.batch_size_max
146+ - compression-rate-avg:
147+ metric_type: rate
148+ alias: kafka.producer.compression_rate_avg
149+ - record-queue-time-avg:
150+ metric_type: gauge
151+ alias: kafka.producer.record_queue_time_avg
152+ - record-queue-time-max:
153+ metric_type: gauge
154+ alias: kafka.producer.record_queue_time_max
155+ - request-latency-avg:
156+ metric_type: gauge
157+ alias: kafka.producer.request_latency_avg
158+ - request-latency-max:
159+ metric_type: gauge
160+ alias: kafka.producer.request_latency_max
161+ - record-send-rate:
162+ metric_type: gauge
163+ alias: kafka.producer.records_send_rate
164+ - records-per-request-avg:
165+ metric_type: gauge
166+ alias: kafka.producer.records_per_request
167+ - record-retry-rate:
168+ metric_type: gauge
169+ alias: kafka.producer.record_retry_rate
170+ - record-error-rate:
171+ metric_type: gauge
172+ alias: kafka.producer.record_error_rate
173+ - record-size-max:
174+ metric_type: gauge
175+ alias: kafka.producer.record_size_max
176+ - record-size-avg:
177+ metric_type: gauge
178+ alias: kafka.producer.record_size_avg
179+ - requests-in-flight:
180+ metric_type: gauge
181+ alias: kafka.producer.requests_in_flight
182+ - metadata-age:
183+ metric_type: gauge
184+ alias: kafka.producer.metadata_age
185+ - produce-throttle-time-max:
186+ metric_type: gauge
187+ alias: kafka.producer.throttle_time_max
188+ - produce-throttle-time-avg:
189+ metric_type: gauge
190+ alias: kafka.producer.throttle_time_avg
191+
192+ #
193+ # Producers: Per Topic Metrics
194+ #
195+ - include:
196+ domain: 'kafka.producer'
197+ bean_regex: 'kafka\.producer:type=producer-topic-metrics,client-id=(.*?),topic=(.*?)(?:,|$)'
198+ attribute:
199+ byte-rate:
200+ metric_type: gauge
201+ alias: kafka.producer.bytes_out
202+ tags:
203+ client: $1
204+ topic: $2
205+ - include:
206+ domain: 'kafka.producer'
207+ bean_regex: 'kafka\.producer:type=producer-topic-metrics,client-id=(.*?),topic=(.*?)(?:,|$)'
208+ attribute:
209+ record-send-rate:
210+ metric_type: gauge
211+ alias: kafka.producer.record_send_rate
212+ tags:
213+ client: $1
214+ topic: $2
215+ - include:
216+ domain: 'kafka.producer'
217+ bean_regex: 'kafka\.producer:type=producer-topic-metrics,client-id=(.*?),topic=(.*?)(?:,|$)'
218+ attribute:
219+ compression-rate:
220+ metric_type: gauge
221+ alias: kafka.producer.compression_rate
222+ tags:
223+ client: $1
224+ topic: $2
225+ - include:
226+ domain: 'kafka.producer'
227+ bean_regex: 'kafka\.producer:type=producer-topic-metrics,client-id=(.*?),topic=(.*?)(?:,|$)'
228+ attribute:
229+ record-retry-rate:
230+ metric_type: gauge
231+ alias: kafka.producer.record_retry_rate
232+ tags:
233+ client: $1
234+ topic: $2
235+ - include:
236+ domain: 'kafka.producer'
237+ bean_regex: 'kafka\.producer:type=producer-topic-metrics,client-id=(.*?),topic=(.*?)(?:,|$)'
238+ attribute:
239+ record-error-rate:
240+ metric_type: gauge
241+ alias: kafka.producer.record_error_rate
242+ tags:
243+ client: $1
244+ topic: $2
245+
121246 #
122247 # Consumers (only v0.8.2.x)
123248 #
@@ -184,6 +309,61 @@ init_config:
184309 metric_type: gauge
185310 alias: kafka.consumer.messages_in
186311
312+ #
313+ # Consumers: Per Topic Metrics
314+ #
315+
316+ - include:
317+ domain: 'kafka.consumer'
318+ bean_regex: 'kafka\.consumer:type=consumer-fetch-manager-metrics,client-id=(.*?),topic=(.*?)(?:,|$)'
319+ attribute:
320+ fetch-size-avg:
321+ metric_type: gauge
322+ alias: kafka.consumer.fetch_size_avg
323+ tags:
324+ client: $1
325+ topic: $2
326+ - include:
327+ domain: 'kafka.consumer'
328+ bean_regex: 'kafka\.consumer:type=consumer-fetch-manager-metrics,client-id=(.*?),topic=(.*?)(?:,|$)'
329+ attribute:
330+ fetch-size-max:
331+ metric_type: gauge
332+ alias: kafka.consumer.fetch_size_max
333+ tags:
334+ client: $1
335+ topic: $2
336+ - include:
337+ domain: 'kafka.consumer'
338+ bean_regex: 'kafka\.consumer:type=consumer-fetch-manager-metrics,client-id=(.*?),topic=(.*?)(?:,|$)'
339+ attribute:
340+ bytes-consumed-rate:
341+ metric_type: gauge
342+ alias: kafka.consumer.bytes_consumed
343+ tags:
344+ client: $1
345+ topic: $2
346+ - include:
347+ domain: 'kafka.consumer'
348+ bean_regex: 'kafka\.consumer:type=consumer-fetch-manager-metrics,client-id=(.*?),topic=(.*?)(?:,|$)'
349+ attribute:
350+ records-per-request-avg:
351+ metric_type: gauge
352+ alias: kafka.consumer.records_per_request_avg
353+ tags:
354+ client: $1
355+ topic: $2
356+ - include:
357+ domain: 'kafka.consumer'
358+ bean_regex: 'kafka\.consumer:type=consumer-fetch-manager-metrics,client-id=(.*?),topic=(.*?)(?:,|$)'
359+ attribute:
360+ records-consumed-rate:
361+ metric_type: gauge
362+ alias: kafka.consumer.records_consumed
363+ tags:
364+ client: $1
365+ topic: $2
366+
187367 #
188368 # Aggregate cluster stats
189369 #
@@ -216,6 +396,38 @@ init_config:
216396 metric_type: rate
217397 alias: kafka.net.bytes_rejected.rate
218398
399+ #
400+ # Brokers: Per Topic Metrics
401+ #
402+ - include:
403+ domain: 'kafka.server'
404+ bean_regex: 'kafka\.server:type=BrokerTopicMetrics,name=BytesOutPerSec,topic=.*'
405+ attribute:
406+ Count:
407+ metric_type: rate
408+ alias: kafka.topics.net.bytes_out.rate
409+ - include:
410+ domain: 'kafka.server'
411+ bean_regex: 'kafka\.server:type=BrokerTopicMetrics,name=BytesInPerSec,topic=.*'
412+ attribute:
413+ Count:
414+ metric_type: rate
415+ alias: kafka.topics.net.bytes_in.rate
416+ - include:
417+ domain: 'kafka.server'
418+ bean_regex: 'kafka\.server:type=BrokerTopicMetrics,name=MessagesInPerSec,topic=.*'
419+ attribute:
420+ Count:
421+ metric_type: rate
422+ alias: kafka.topics.messages_in.rate
423+ - include:
424+ domain: 'kafka.server'
425+ bean_regex: 'kafka\.server:type=BrokerTopicMetrics,name=BytesRejectedPerSec,topic=.*'
426+ attribute:
427+ Count:
428+ metric_type: rate
429+ alias: kafka.topics.net.bytes_rejected.rate
430+
219431 #
220432 # Request timings
221433 #
@@ -314,13 +526,31 @@ init_config:
314526 99thPercentile:
315527 metric_type: gauge
316528 alias: kafka.request.offsets.time.99percentile
529+ - include:
530+ domain: 'kafka.network'
531+ bean: 'kafka.network:type=RequestChannel,name=RequestQueueSize'
532+ attribute:
533+ Value:
534+ metric_type: gauge
535+ alias: kafka.request.channel.queue.size
536+ - include:
537+ domain: 'kafka.network'
538+ bean: 'kafka.network:type=SocketServer,name=NetworkProcessorAvgIdlePercent'
539+ attribute:
540+ Value:
541+ metric_type: gauge
542+ alias: kafka.net.handler.avg.idle.pct.rate
317543 - include:
318544 domain: 'kafka.server'
319545 bean: 'kafka.server:type=KafkaRequestHandlerPool,name=RequestHandlerAvgIdlePercent'
320546 attribute:
321547 OneMinuteRate:
322548 metric_type: gauge
323549 alias: kafka.request.handler.avg.idle.pct.rate
550+
551+ #
552+ # Request Purgatory (only v0.8.2.x)
553+ #
324554 - include:
325555 domain: 'kafka.server'
326556 bean: 'kafka.server:type=ProducerRequestPurgatory,name=PurgatorySize'
@@ -336,6 +566,24 @@ init_config:
336566 metric_type: gauge
337567 alias: kafka.request.fetch_request_purgatory.size
338568
569+ #
570+ # Request Purgatory (v0.9.0.x onwards)
571+ #
572+ - include:
573+ domain: 'kafka.server'
574+ bean: 'kafka.server:type=DelayedOperationPurgatory,name=PurgatorySize,delayedOperation=Produce'
575+ attribute:
576+ Value:
577+ metric_type: gauge
578+ alias: kafka.request.producer_request_purgatory.size
579+ - include:
580+ domain: 'kafka.server'
581+ bean: 'kafka.server:type=DelayedOperationPurgatory,name=PurgatorySize,delayedOperation=Fetch'
582+ attribute:
583+ Value:
584+ metric_type: gauge
585+ alias: kafka.request.fetch_request_purgatory.size
586+
339587 #
340588 # Replication stats
341589 #
0 commit comments