Skip to main content

Kafkametrics Receiver

Status Available in: contrib Maintainers: @dmitryax Source: opentelemetry-collector-contrib

Supported Telemetry

Metrics

Overview

Note: This receiver was renamed from kafkametrics to kafka_metrics to match the snake_case naming convention. The deprecated component type kafkametrics is still accepted as an alias and will log a deprecation warning.

Prerequisites

This receiver supports Kafka versions 2.x, 3.x and 4.x (including KRaft mode).
Note: Compatibility is determined by the underlying Kafka protocol support in the driver (e.g., franz-go or sarama). Basic metrics collection remains compatible with Kafka 4.x brokers.

Feature gates

See documentation.md for the complete list of feature gates supported by this processor. Feature gates can be enabled using the --feature-gates flag:

Getting Started

Required settings (no defaults):
  • scrapers: any combination of the following scrapers can be enabled.
    • topics
    • consumers
    • brokers
Metrics collected by the associated scraper are listed in metadata.yaml Optional Settings (with defaults):
  • cluster_alias: Alias name of the cluster. Adds kafka.cluster.alias resource attribute.
  • The cluster’s unique ID can be auto-discovered from cluster metadata and emitted as the kafka.cluster.id resource attribute. It is disabled by default; enable it via resource_attributes.kafka.cluster.id.enabled: true.
  • protocol_version (default = 2.1.0): Kafka protocol version
  • brokers (default = localhost:9092): the list of brokers to read from.
  • resolve_canonical_bootstrap_servers_only (default = false): whether to resolve then reverse-lookup broker IPs during startup.
  • topic_match (default = ^[^_].*$): regex pattern of topics to filter on metrics collection. The default filter excludes internal topics (starting with _).
  • group_match (default = .*): regex pattern of consumer groups to filter on for metrics.
  • client_id (default = otel-collector): consumer client id
  • collection_interval (default = 1m): frequency of metric collection/scraping.
  • initial_delay (default = 1s): defines how long this receiver waits before starting.
  • tls: see TLS Configuration Settings for the full set of available options.
  • auth (default none)
    • plain_text (Deprecated in v0.123.0: use sasl with mechanism set to PLAIN instead.)
      • username: The username to use.
      • password: The password to use
    • sasl
      • username: The username to use.
      • password: The password to use.
      • mechanism: The sasl mechanism to use (SCRAM-SHA-256, SCRAM-SHA-512, AWS_MSK_IAM_OAUTHBEARER, or PLAIN)
      • aws_msk
        • region: AWS Region in case of AWS_MSK_IAM_OAUTHBEARER mechanism
    • tls ((Deprecated in v0.124.0: configure tls at the top level): this is an alias for tls at the top level.
    • kerberos
      • service_name: Kerberos service name
      • realm: Kerberos realm
      • use_keytab: Use of keytab instead of password, if this is true, keytab file will be used instead of password
      • username: The Kerberos username used for authenticate with KDC
      • password: The Kerberos password used for authenticate with KDC
      • config_file: Path to Kerberos configuration. i.e /etc/krb5.conf
      • keytab_file: Path to keytab file. i.e /etc/security/kafka.keytab
      • disable_fast_negotiation: Disable PA-FX-FAST negotiation (Pre-Authentication Framework - Fast). Some common Kerberos implementations do not support PA-FX-FAST negotiation. This is set to false by default.
  • metadata
    • full (default = true): Whether to maintain a full set of metadata. When disabled, the client does not make the initial request to broker at the startup.
    • retry
      • max (default = 3): The number of retries to get metadata
      • backoff (default = 250ms): How long to wait between metadata retries

Examples:

  1. Basic configuration with all scrapers:
  1. Configuration with more optional settings:
For this example:
  • A non-default broker is specified
  • cluster alias is set to “kafka-prod”
  • collection interval is 5 secs.
  • Kafka protocol version is 3.0.0
  • mTLS is configured

Metrics

Attributes

Resource Attributes

Configuration

Example Configuration


Last generated: 2026-09-07