Exporter 将监控数据采集的端点通过 HTTP 服务的形式暴露给 Prometheus Server,Prometheus Server 通过访问该 Exporter 提供的 Endpoint 端点,即可获取到需要采集的监控数据。RocketMQ-Exporter 就是这样一个 Exporter,它首先从 RocketMQ 集群采集数据,然后借助 Prometheus 提供的第三方客户端库将采集的数据规范化成符合 Pro...
rocketmq.config.webTelemetryPath 配置 promethus 获取指标的路径,默认为 /metrics ,使用默认值即可. rocketmq.config.enableACL 如果 RocketMQ 集群开启了 ACL 验证,需要配置为 true, 并在 accessKey 和 secretKey 中配置相应的 ak, sk. rocketmq.config.outOfTimeSeconds 用于配置存储指标和相应的值的过期时间,...
编辑配置添加namesrvAddr(若roketmq为k8s 部署直接填写k8s地址即可,集群用;隔开) vim src/main/resources/application.yml 开始编译(后面跟着打docker镜像,若失败可直接进入 target/docker目录手动build docker) mvn package -Dmaven.test.skip=true docker:build 手动build docker build -t docker.io/rocketmq-export...
RocketMQ-Exporter主要包含哪些功能部分?
由于 MQ 内部本身提供了比较全面的数据统计信息,所以对于 Exporter 而言,只需要将 MQ 集群提供的统计信息取出然后进行加工而已。所以 RocketMQ-Exporter 的基本逻辑是内部启动多个定时任务周期性的从 MQ 集群拉取数据,然后将数据规范化后通过端点暴露给 Prometheus 即可。其中主要包含如下主要的三个功能部分:...
rocketmq实例不多还好,但是想象一下如果redis,mysql的exporter也是用java写,那这个差值就大了,放大到整个集群将成为潜在风险,我想这也是mysql-exporter, redis-exporter官方为什么用golang写的原因之一。 但是如果把request和max设置成一样,又很浪费。 综上所述,golang是最好的选择。
接前文,之前分享了node_exporter的安装,对于rocketmq而言,不仅要监控最基本的机器信息,同时也要监控rocketmq的服务可用性。常见的一些服务指标包括:producer的消息生产tps,consumer的消费tps,整个集群的broker的tps等。这里我们使用rocketmq-exporter来采集相关的信息。
{"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],"search_count":[{"count_phone":4,"count":4}]},"card":[],"search":[],"countinfo":{"search":{"length_pc":0,"length":0},"card":{"length_pc":0,"length":0}},"simplifiedDisplay":"newEdition","newCard":[{"link...
TP99.9分位数 Prometheus简介 6.PromQL rate(http_request_total{status=~“404|500|501“}[1m]) FunctionMetric Filter Parameter •rate •irate •increase •predict_linear •histogram_quantile •= •!= •=~ •!~ Prometheus简介 6. PromQL(续) sum(rate(http_request_total{status=~“...
可观测监控 Prometheus 版可通过配置接入参数主动拉取消息队列RocketMQ的性能指标,实现对其运行状况的实时监控和数据分析。 前提条件 容器服务环境 ECS(VPC) 已开通可观测监控Prometheus版。具体操作,请参见计费说明。 已创建Kubernetes集群。具体操作,请参见创建ACK托管集群。