Project: SkyWalking (Observability and Analysis / Observability)
File: backend-rocketmq-monitoring.md

SkyWalking leverages rocketmq-exporter for collecting metrics data from RocketMQ. It leverages OpenTelemetry Collector to transfer the metrics to and into the . The `rocketmq-exporter` (https://github.com/apache/rocketmq-exporter?tab=readme-ov-file#readme) collects metrics data from RocketMQ, The RocketMQ version is required to be 4.3.2+. OpenTelemetry Collector fetches metrics from rocketmq-exporter via Prometheus Receiver and pushes metrics to SkyWalking OAP Server via OpenTelemetry gRPC exporter. The SkyWalking OAP Server parses the expression with to filter/calculate/aggregate and store the results. Setup . Set up . The example for OpenTelemetry Collector configuration, refer to . Config SkyWalking . RocketMQ monitoring provides multidimensional metrics monitoring of RocketMQ Exporter as `Layer: RocketMQ` `Service` in the OAP. In each cluster, the broker is represented as `Instance` and the topic is represented as `Endpoint`. | Monitoring Panel |Unit | Metric Name | Description | Data Source | |--||-|--|| | Messages Produced Today | Count | meterrocketmqclustermessagesproduced_today | The number of cluster messages produced today. | RocketMQ Exporter | | Messages Consumed Today | Count | meterrocketmqclustermessagesconsumed_today | The number of cluster messages consumed today. | RocketMQ Exporter | | Total Producer Tps | Msg/sec | meterrocketmqclustertotalproducer_tps | The number of messages produced per second. | RocketMQ Exporter | | Total Consume Tps | Msg/sec | meterrocketmqclustertotalconsumer_tps | The number of messages consumed per second. | RocketMQ Exporter | | Producer Message Size | Bytes/sec | meterrocketmqclusterproducermessage_size | The max size of a message produced per second. | RocketMQ Exporter | | Consumer Message Size | Bytes/sec | meterrocketmqclusterconsumermessage_size | The max size of the consumed message per second. | RocketMQ Exporter | | Messages Produced Until Yesterday | Count | meterrocketmqclustermessagesproduceduntilyesterday | The total number of messages put until 12 o'clock last night. | RocketMQ Exporter | | Messages Consumed Until Yesterday | Count | meterrocketmqclustermessagesconsumeduntilyesterday | The total number of messages read until 12 o'clock last night. | RocketMQ Exporter | | Max Consumer Latency | ms | meterrocketmqclustermaxconsumer_latency | The max number of consumer latency. | RocketMQ Exporter | | Max CommitLog Disk Ratio | % | meterrocketmqclustermaxcommitLogdiskratio | The max utilization ratio of the commit log disk. | RocketMQ Exporter | | CommitLog Disk Ratio | % | meterrocketmqclustercommitLogdisk_ratio | The utilization ratio of the commit log disk per broker

| RocketMQ Exporter | | Pull ThreadPool Queue Head Wait Time | ms | meterrocketmqclusterpullthreadPoolqueueheadwaittime | The wait time in milliseconds for pulling threadPool queue per broker IP. | RocketMQ Exporter | | Send ThreadPool Queue Head Wait Time | ms | meterrocketmqclustersendthreadPoolqueueheadwaittime | The wait time in milliseconds for sending threadPool queue per broker IP. | RocketMQ Exporter | | Monitoring Panel |Unit | Metric Name | Description | Data Source | |--||-|-|-| | Produce TPS | Msg/sec | meterrocketmqbrokerproducetps | The number of broker produces messages per second. | RocketMQ Exporter | | Consume QPS | Msg/sec | meterrocketmqbrokerconsumeqps | The number of broker consumes messages per second. | RocketMQ Exporter | | Producer Message Size | Bytes/sec | meterrocketmqbrokerproducermessage_size | The max size of the messages produced per second. | RocketMQ Exporter | | Consumer Message Size | Bytes/sec | meterrocketmqbrokerconsumermessage_size | The max size of the messages consumed per second. | RocketMQ Exporter | | Monitoring Panel |Unit | Metric Name | Description | Data Source | |--||-|--|-| | Max Producer Message Size | Byte | meterrocketmqtopicmaxproducermessagesize | The maximum number of messages produced. | RocketMQ Exporter | | Max Consumer Message Size | Byte | meterrocketmqtopicmaxconsumermessagesize | The maximum number of messages consumed. | RocketMQ Exporter | | Consumer Latency | ms | meterrocketmqtopicconsumerlatency | Consumption delay time of a consumer group. | RocketMQ Exporter | | Producer Tps | Msg/sec | meterrocketmqtopicproducertps | The number of messages produced per second. | RocketMQ Exporter | | Consumer Group Tps | Msg/sec | meterrocketmqtopicconsumergroup_tps | The number of messages consumed per second per consumer group. | RocketMQ Exporter | | Producer Offset | Count | meterrocketmqtopicproduceroffset | The max progress of a topic's production message. | RocketMQ Exporter | | Consumer Group Offset | Count | meterrocketmqtopicconsumergroup_offset | The max progress of a topic's consumption message per consumer group. | RocketMQ Exporter | | Producer Message Size | Byte/sec | meterrocketmqtopicproducermessage_size | The max size of messages produced per second. | RocketMQ Exporter | | Consumer Message Size | Byte/sec | meterrocketmqtopicconsumermessage_size | The max size of messages consumed per second. | RocketMQ Exporter | You can customize your own metrics/expression/dashboard panel. The metrics definition and expression rules are found in `otel-rules/rocketmq/rocketmq-cluster.yaml, otel-rules/rocketmq/rocketmq-broker.yaml, otel-rules/rocketmq/rocketmq-topic.yaml`. The RocketMQ dashboard panel configurations are found in `ui-initialized-templates/rocketmq`.