资源占用:K8S下,cpu占用0.01core, 内存占用10MB。
监控指标:消息堆积数,精确到进程粒度。
监控目的:实时掌控消息消费的健康程度。
数据来源:从rocketmq-console的http请求获取数据。也就是说RocketmqExporter必须依赖rocketmq-console。好吧,我承认我图省事儿了^_^。
为什么自己要重新实现: 官方exporter是java的,相对费资源;另外我们要求对消息堆积数有完备监控,且精确到进程级别。 从topic, consumerGroup, broker,queueId, consumerClientIP, consumerClientPID等维度对消息堆积数进行聚合,如下图:
1.概述与效果
2.为何选择golang开发 (附带不同语言开发的优劣对比)
4.如何编译
5.相关编译文件说明
后续有时间会把官方rocketmq-exporter的监控指标也用go重写。