This is the Kafka module.

The default metricsets are `consumergroup` and `partition`.

If authorization is configured in the Kafka cluster, the following ACLs are
required for the Metricbeat user:

* READ Topic, for the topics to be monitored
* DESCRIBE Group, for the groups to be monitored

For example, if the `stats` user is being used for Metricbeat, to monitor all
topics and all consumer groups, ACLS can be granted with the following commands:

[source,shell]
-----
kafka-acls --authorizer-properties zookeeper.connect=localhost:2181 --add --allow-principal User:stats --operation Read --topic '*'
kafka-acls --authorizer-properties zookeeper.connect=localhost:2181 --add --allow-principal User:stats --operation Describe --group '*'
-----

[float]
=== Compatibility

This module is tested with Kafka 0.10.2.1, 1.1.0, 2.1.1, and 2.2.2.

The Broker, Producer, Consumer metricsets require <<metricbeat-module-jolokia,Jolokia>> to fetch JMX metrics. Refer to the link for Jolokia's compatibility notes.

[float]
=== Usage
The Broker, Producer, Consumer metricsets require <<metricbeat-module-jolokia,Jolokia>> to fetch JMX metrics. Refer to those Metricsets' documentation about how to use Jolokia.


[float]
=== Dashboard

The Kafka module comes with a predefined dashboard. For example:

image::./images/metricbeat_kafka_dashboard.png[]
