Kafka 生产者 metricset
编辑Kafka 生产者 metricset
编辑此功能处于测试阶段,可能随时更改。其设计和代码不如正式 GA 功能成熟,按原样提供,不提供任何担保。测试版功能不受正式 GA 功能支持服务等级协议 (SLA) 的约束。
此 metricset 定期从用 Java 实现的 Kafka 生产者中获取 JMX 指标,并通过 Jolokia 代理公开 JMX 指标。
兼容性
编辑该模块已通过 Kafka 2.1.1 和 2.2.2 测试。预期其他版本也能正常工作。
用法
编辑生产者 metricset 需要 Jolokia 来获取 JMX 指标。有关 Jolokia 的更多信息,请参阅链接。
请注意,需要将 Jolokia 代理与 JVM 应用程序一起部署。启动 Kafka 生产者应用程序时,可以使用 KAFKA_OPTS
环境变量来实现此目的。
export KAFKA_OPTS=-javaagent:/opt/jolokia-jvm-1.5.0-agent.jar=port=8775,host=localhost ./bin/kafka-console-producer.sh --topic test --broker-list localhost:9091
然后就可以从 localhost:8775
收集 JMX 指标了。
有关 metricset 中每个字段的说明,请参阅 导出字段 部分。
以下是此 metricset 生成的示例文档。
{ "@timestamp": "2019-10-31T10:19:14.758Z", "@metadata": { "beat": "metricbeat", "type": "_doc", "version": "8.0.0" }, "metricset": { "name": "producer", "period": 10000 }, "ecs": { "version": "1.2.0" }, "host": { "os": { "name": "Mac OS X", "kernel": "18.7.0", "build": "18G95", "platform": "darwin", "version": "10.14.6", "family": "darwin" }, "id": "883134FF-0EC4-5E1B-9F9E-FD06FB681D84", "hostname": "abc.local", "name": "abc.local", "architecture": "x86_64" }, "agent": { "type": "metricbeat", "ephemeral_id": "b95327e7-2737-4262-a1a6-ab8547fc8c8d", "hostname": "abc.local", "id": "79dd1677-1bea-4efd-9131-e8ca464eddf0", "version": "8.0.0" }, "service": { "address": "localhost:8775", "type": "kafka" }, "event": { "dataset": "kafka.producer", "module": "kafka", "duration": 4485726 }, "kafka": { "producer": { "response_rate": 0, "request_rate": 0, "record_send_rate": 0, "batch_size_avg": 0, "record_size_avg": 0, "record_retry_rate": 0, "records_per_request": 0, "io_wait": 1.2487715219630156e+07, "mbean": "kafka.producer:client-id=console-producer,type=producer-metrics", "available_buffer_bytes": 0, "record_error_rate": 737.5234685412391 } } }