O ApsaraMQ for RocketMQ utiliza os recursos de armazenamento e visualização de métricas do Managed Service for Prometheus e do Managed Service for Grafana, do Application Real-Time Monitoring Service (ARMS), para fornecer um painel de estatísticas em tempo real. Esse recurso permite coletar e monitorar métricas para compreender rapidamente o estado operacional da sua empresa. Este tópico descreve os casos de uso, o faturamento, as métricas disponíveis e como usar o painel.
Casos de uso
Receba alertas imediatos sobre anomalias no consumo de mensagens para localizar e resolver problemas rapidamente, garantindo o processamento oportuno das mensagens.
Solucione problemas com pedidos específicos, como um status anormal, ao revisar o rastreamento de mensagens para verifique a transmissão adequada das mensagens em todo o fluxo de trabalho.
Analise as tendências de tráfego de mensagens, os padrões de distribuição e o volume geral para prever tendências do negócio e planejar recursos.
Visualize e analise a topologia de dependências da sua aplicação para compreender as dependências upstream e downstream, o que simplifica o planejamento de atualizações, otimizações e refatorações de arquitetura.
Pré-requisitos
-
Crie uma função vinculada ao service.
Nome da função: AliyunServiceRoleForOns
Nome da política da função: AliyunServiceRolePolicyForOns
Descrição da permissão: Permite que o Message Queue for RocketMQ assuma a função e acesse o CloudMonitor e o ARMS para usar os recursos de monitoramento, alertas e painel.
Para mais detalhes, consulte Service-linked roles.
Faturamento
As métricas do painel para o ApsaraMQ for RocketMQ são métricas básicas no Managed Service for Prometheus. Como essas métricas são gratuitas, o recurso de painel também é gratuito.
Para mais informações, consulte Metrics e Pay-as-you-go.
Conceitos-chave
Antes de visualizar as métricas do painel, entenda os seguintes conceitos relacionados ao atraso do consumidor.

A figura anterior mostra o estado das mensagens em uma fila para um tópico específico. O Message Queue for RocketMQ coleta estatísticas sobre a quantidade e o tempo de processamento das mensagens em diferentes estágios. Essas métricas refletem diretamente a taxa de processamento de mensagens e o atraso do consumidor. O monitoramento dessas métricas ajuda a identificar rapidamente possíveis anomalias no consumo de mensagens.
Categoria | Métrica | Descrição | Fórmula de cálculo |
Métricas de contagem de mensagens | inflight messages | Mensagens que os clientes consumidores estão processando, mas ainda não confirmaram. | offset da última mensagem puxada - offset da última mensagem confirmada |
ready messages | Mensagens no servidor do Message Queue for RocketMQ que estão prontas para consumo. | Offset máximo da mensagem - offset da última mensagem puxada | |
consumer lag | O número total de mensagens não processadas. | Número de inflight messages + Número de ready messages | |
Métricas de latência de mensagens | ready time |
| Não aplicável |
ready message queue time | A diferença entre a hora atual e o ready time da mensagem pronta mais antiga. Esta métrica mostra a velocidade com que os consumidores puxam as mensagens. | Hora atual - Ready time da mensagem pronta mais antiga | |
consumer lag time | A diferença entre a hora atual e o ready time da mensagem não confirmada mais antiga. Esta métrica mostra a velocidade com que os consumidores processam as mensagens. | Hora atual - Ready time da mensagem não confirmada mais antiga |
Métricas
O painel do Message Queue for Apache RocketMQ fornece as seguintes métricas:
Producer: Visualize métricas de um tópico, como o número de mensagens enviadas, a taxa de sucesso de envio e o tempo de resposta de envio de mensagens.
Consumer: Visualize métricas relacionadas à assinatura de um grupo em um tópico específico, como o número de mensagens recebidas, a taxa de sucesso de consumo e o atraso do consumidor.
Instance top 20 overview: Visualize os 20 principais valores para métricas específicas dentro de uma instância, juntamente com o tópico ou grupo correspondente.
Billing metric overview: Visualize métricas de uma instância específica, como TPS de envio e recebimento, número de chamadas de API e tamanho médio da mensagem. Essas métricas ajudam a estimar os custos de faturamento.
O sistema coleta todas as métricas em um intervalo de 1 minuto. Consulte dados dos últimos 15 dias no Message Queue for Apache RocketMQ. O intervalo de tempo máximo para uma única consulta é de 24 horas.
Produtor
Métrica | Descrição |
Taxa de envio de mensagens | A taxa de mensagens enviadas e de chamadas de API feitas para um tópico. Unidades:
|
Taxa máxima de envio de mensagens | A taxa máxima de envio de mensagens. Unidade: mensagens/segundo. |
Total de mensagens enviadas | O número total de mensagens enviadas na instância especificada. Unidade: mensagens. |
Taxa de sucesso de chamadas de API de envio | A porcentagem de chamadas de API bem-sucedidas para enviar mensagens a um tópico. |
Tempo de resposta de envio de mensagens | O tempo necessário para enviar uma mensagem a um tópico. Unidade: ms. |
Consumidor
Métrica | Descrição |
Taxa média de sucesso de consumo | A porcentagem de mensagens consumidas com sucesso por um grupo. |
Atraso do consumidor (prontas + em trânsito) | O número total de mensagens acumuladas para um grupo. Unidade: mensagens. |
Mensagens em trânsito | O número de mensagens entregues aos clientes consumidores, mas ainda não confirmadas. Unidade: mensagens. |
Mensagens prontas | O número de mensagens no servidor do Message Queue for Apache RocketMQ disponíveis para consumo. Esta métrica indica o volume de mensagens que os consumidores ainda não começaram a processar. Unidade: mensagens. |
Tempo de fila de mensagens prontas | O tempo decorrido desde que a mensagem pronta mais antiga ficou disponível para consumo. Esta métrica é um indicador chave de atrasos no processamento de mensagens e é crítica para aplicações sensíveis ao tempo. O valor geral mostra o tempo médio de fila de mensagens prontas para a instância. Já o gráfico mostra o tempo de fila de mensagens prontas para um grupo específico que assina um tópico específico. Unidade: ms. |
Taxa de recebimento de mensagens | A taxa em que um grupo consome mensagens. Unidade: mensagens/segundo |
Taxa máxima de recebimento de mensagens | A taxa máxima de consumo de mensagens. Unidade: mensagens/segundo |
Total de mensagens recebidas | O número total de mensagens consumidas por um grupo. Unidade: mensagens. |
Atraso do consumidor | O número de mensagens acumuladas para um grupo, incluindo mensagens prontas e em trânsito. Unidade: mensagens. |
Tempo de processamento de mensagens | O tempo que um grupo leva para processar uma mensagem, desde o início do consumo até a conclusão. Unidade: ms. |
Tempo de espera no lado do consumidor | O tempo decorrido da chegada da mensagem ao cliente consumidor até o início do consumo. Unidade: ms. |
Taxa de sucesso de consumo | A taxa de sucesso do consumo de mensagens. |
Proporção de protocolo do cliente consumidor | A proporção de mensagens consumidas por cada protocolo de cliente. |
Top 20 da instância
|
Métrica |
Descrição |
|
Top 20 tópicos por taxa de envio de mensagens |
Os 20 tópicos com a maior taxa de envio de mensagens. Unidade: mensagens/segundo. |
|
Top 20 grupos por taxa de recebimento de mensagens |
Os 20 grupos com a maior taxa de consumo de mensagens. Unidade: mensagens/segundo. |
|
Top 20 grupos por mensagens prontas |
Os 20 grupos com o maior número de mensagens prontas. Unidade: mensagens. |
|
Top 20 grupos por tempo de fila de mensagens prontas |
Os 20 grupos com o maior tempo de fila de mensagens prontas. Unidade: ms. |
|
Top 20 grupos por atraso do consumidor (prontas + em trânsito) |
Os 20 grupos com o maior atraso do consumidor. Unidade: mensagens. |
Métricas de faturamento
As seguintes métricas de faturamento consideram multiplicadores para mensagens grandes e recursos avançados.
Multiplicador de mensagem grande: o sistema conta uma chamada de API para cada 4 KB de tamanho de mensagem. Por exemplo, o envio de uma mensagem de 16 KB é contabilizado como quatro chamadas de API (16 KB / 4 KB = 4).
Multiplicador de recurso avançado: o sistema conta chamadas de API para recursos avançados, como mensagens ordenadas, agendadas/atrasadas e transacionais, a uma taxa cinco vezes maior que a das mensagens normais.
|
Métrica |
Descrição |
|
TPS máximo de envio |
O número máximo de transações por segundo (TPS) para a produção de mensagens. Esta métrica ajuda a estimar a especificação de TPS de pico necessária para a sua instância. Unidade: TPS. |
|
TPS máximo de recebimento |
O TPS máximo para o consumo de mensagens. Esta métrica ajuda a estimar a especificação de TPS de pico necessária para a sua instância. Unidade: TPS. |
|
TPS máximo |
O TPS máximo combinado para a produção e o consumo de mensagens. Esta métrica ajuda a estimar a especificação de TPS de pico necessária para a sua instância. Unidade: TPS. |
|
Total de chamadas de API |
O número total de chamadas de API. Esta métrica ajuda a estimar o uso de chamadas de API para fins de faturamento. Unidade: chamadas. |
|
Tamanho médio da mensagem |
O tamanho médio de todas as mensagens produzidas. Unidade: bytes. |
|
TPS de envio e recebimento |
O TPS combinado para a produção e o consumo de mensagens. Unidade: TPS. |
|
Total de chamadas de API por dia |
O total diário de chamadas de API para a produção e o consumo de mensagens. Unidade: chamadas. |
Métricas
Todas as métricas de throughput de mensagens (TPS), requisições e contagem de mensagens usam uma mensagem normal de 4 KB como base. O sistema multiplica o valor final por fatores com base no tamanho real da mensagem e no tipo de mensagem avançada.
A tabela a seguir descreve os campos nas métricas.
Campo | Valor |
Tipo de métrica | Gauge: Uma métrica que pode aumentar ou diminuir. Representa uma medição instantânea, como o TPS de chamadas de API. |
Rótulo |
|
Métricas do lado do servidor
Tipo de métrica | Nome da métrica | Unidade | Descrição | Rótulo |
Gauge | rocketmq_instance_requests_threshold | count/s | O limiar de limitação da instância. |
|
Gauge | rocketmq_instance_requests_max | count/s | O número máximo de transações por segundo (TPS) da instância, excluindo requisições limitadas. Este valor é o TPS de pico registrado em um intervalo de um minuto. |
|
Métricas do produtor
Tipo de métrica | Nome da métrica | Unidade | Descrição | Rótulo |
Gauge | rocketmq_producer_requests (Métrica faturável) | count | O número de chamadas de API faturáveis para enviar mensagens. |
|
Gauge | rocketmq_producer_messages | message | O número de mensagens enviadas. |
|
Gauge | rocketmq_producer_message_size_bytes | byte | O tamanho total das mensagens enviadas. |
|
Gauge | rocketmq_producer_send_success_rate | % | A taxa de sucesso de envio de mensagens. |
|
Gauge | rocketmq_producer_failure_api_calls | count | O número de chamadas de API com falha para enviar mensagens. |
|
Gauge | rocketmq_producer_send_rt_milliseconds_avg | ms | O tempo médio de resposta para enviar mensagens. |
|
Gauge | rocketmq_producer_send_rt_milliseconds_min | ms | O tempo mínimo de resposta para enviar mensagens. |
|
Gauge | rocketmq_producer_send_rt_milliseconds_max | ms | O tempo máximo de resposta para enviar mensagens. |
|
Gauge | rocketmq_producer_send_rt_milliseconds_p95 | ms | O percentil 95 do tempo de resposta para enviar mensagens. |
|
Gauge | rocketmq_producer_send_rt_milliseconds_p99 | ms | O percentil 99 do tempo de resposta para enviar mensagens. |
|
Métricas do consumidor
Tipo de métrica | Nome da métrica | Unidade | Descrição | Rótulo |
Gauge | rocketmq_consumer_requests | count | O número de chamadas de API para consumir mensagens. |
|
Gauge | rocketmq_consumer_send_back_requests | count | O número de chamadas de API para devolver mensagens após uma falha de consumo. |
|
Gauge | rocketmq_consumer_send_back_messages | message | O número de mensagens devolvidas após uma falha de consumo. |
|
Gauge | rocketmq_consumer_messages | message | O número de mensagens consumidas. |
|
Gauge | rocketmq_consumer_message_size_bytes | byte | O tamanho total das mensagens consumidas. |
|
Gauge | rocketmq_consumer_ready_and_inflight_messages | message | O atraso total do consumidor, calculado como a soma de mensagens prontas e em trânsito. |
|
Gauge | rocketmq_consumer_ready_messages | message | O número de mensagens na fila disponíveis para consumo. Calculado como: |
|
Gauge | rocketmq_consumer_inflight_messages | message | O número de mensagens puxadas pelos consumidores, mas ainda não confirmadas. Calculado como: |
|
Gauge | rocketmq_consumer_queue_time_milliseconds | ms | O tempo de fila da mensagem. |
|
Gauge | rocketmq_consumer_message_await_time_milliseconds_avg | ms | O tempo médio que uma mensagem aguarda no buffer do cliente consumidor antes do processamento. |
|
Gauge | rocketmq_consumer_message_await_time_milliseconds_min | ms | O tempo mínimo que uma mensagem aguarda no buffer do cliente consumidor antes do processamento. |
|
Gauge | rocketmq_consumer_message_await_time_milliseconds_max | ms | O tempo máximo que uma mensagem aguarda no buffer do cliente consumidor antes do processamento. |
|
Gauge | rocketmq_consumer_message_await_time_milliseconds_p95 | ms | O percentil 95 do tempo que uma mensagem aguarda no buffer do cliente consumidor antes do processamento. |
|
Gauge | rocketmq_consumer_message_await_time_milliseconds_p99 | ms | O percentil 99 do tempo que uma mensagem aguarda no buffer do cliente consumidor antes do processamento. |
|
Gauge | rocketmq_consumer_message_process_time_milliseconds_avg | ms | O tempo médio que um consumidor gasta para processar uma mensagem. |
|
Gauge | rocketmq_consumer_message_process_time_milliseconds_min | ms | O tempo mínimo que um consumidor gasta para processar uma mensagem. |
|
Gauge | rocketmq_consumer_message_process_time_milliseconds_max | ms | O tempo máximo que um consumidor gasta para processar uma mensagem. |
|
Gauge | rocketmq_consumer_message_process_time_milliseconds_p95 | ms | O percentil 95 do tempo de processamento de mensagens. |
|
Gauge | rocketmq_consumer_message_process_time_milliseconds_p99 | ms | O percentil 99 do tempo de processamento de mensagens. |
|
Gauge | rocketmq_consumer_consume_success_rate | % | A taxa de sucesso de consumo de mensagens. |
|
Gauge | rocketmq_consumer_failure_api_calls | count | O número de chamadas de API com falha para consumir mensagens. |
|
Gauge | rocketmq_consumer_to_dlq_messages | message | O número de mensagens enviadas para a fila de mensagens mortas (dead-letter queue). |
|
Painel
Faça login no console do Message Queue for Apache RocketMQ. No painel de navegação à esquerda, clique em Instances.
Na barra de menu superior, selecione uma região, como China (Hangzhou). Em seguida, na lista de instâncias, clique na instância de destino.
-
Visualize o painel das seguintes maneiras:
Página Instance Details: Na página Instance Details, clique na aba Dashboard.
Aba Dashboard: No painel de navegação à esquerda, clique em Dashboard.
Página Topic Details: No painel de navegação à esquerda, clique em Topics. Na lista de tópicos, clique no tópico de destino. Na página Topic Details, clique na aba Topic Overview.
Página Group Details: No painel de navegação à esquerda, clique em Groups. Na lista de grupos, clique no grupo de destino. Na página Group Details, clique na aba Group Overview.
Perguntas frequentes sobre o painel
Acessar dados de métricas do painel
Use sua conta raiz para fazer login no console do ARMS.
No painel de navegação à esquerda, clique em Access Center.
Na página Access Center, insira
RocketMQna caixa de pesquisa e clique no ícone de pesquisa.Nos resultados da pesquisa, selecione o service de cloud que deseja integrar, como Alibaba Cloud Message Queue for RocketMQ. Para mais informações sobre o procedimento de integração, consulte Step 1: Integrate monitoring data from a cloud service.
Após a conclusão da integração, clique em Integration Management no painel de navegação à esquerda.
Na lista Cloud Service Environment, clique no nome do ambiente de destino para abrir sua página de detalhes.
Na aba Component Management, na seção Basic Information, clique na região do service de cloud ao lado de Prometheus instance.
Esta página fornece diferentes métodos para acessar os dados.{key, select, RAM {RAM} Overview {Overview} Identities {Identities} Users {Users} Groups {Groups} Roles {Roles} Settings {Settings} Permissions {Permissions} Grants {Grants} Troubleshoot {Troubleshooting} Policies {Policies} Integrations {Integrations} Providers {SSO} Applications {OAuth (Preview)} CloudSSO {CloudSSO} AccessAnalyzing {Access Analysis} Analyzers {Analyzers} Findings {Findings} Beta {Beta} Governance {Cloud Governance} AgentControl {Agent Management} other {{key}} }
Importar dados para um Grafana autogerenciado
O Alibaba Cloud Prometheus Service armazena todos os dados de métricas do Alibaba Cloud Message Queue for RocketMQ. Siga as etapas em How do I get dashboard metric data? para integrar o service de cloud e obter o nome do ambiente e o endpoint da API HTTP. Em seguida, use a API para importar esses dados para o seu Grafana autogerenciado. Para mais informações, consulte Use an HTTP API endpoint to connect to Grafana or a self-managed application to access Prometheus data.
TPS médio e máximo
TPS médio = Número total de requisições em um período de 1 minuto / 60 segundos
TPS máximo: O sistema amostra o valor de TPS uma vez por segundo durante um período de 1 minuto. O TPS máximo é o maior valor entre as 60 amostras.
Por exemplo:
Suponha que uma instância produza 60 mensagens em um minuto (todas mensagens normais de 4 KB).
TPS médio da instância = 60 requisições / 60 segundos = 1 requisição/segundo
O sistema calcula o TPS máximo da instância da seguinte forma:
-
Se todas as 60 mensagens forem enviadas no primeiro segundo, o TPS para cada segundo desse minuto será 60, 0, 0, ..., 0.
O TPS máximo da instância é de 60 requisições/segundo.
-
Se 40 mensagens forem enviadas no primeiro segundo e 20 no segundo seguinte, o TPS para cada segundo desse minuto será 40, 20, 0, 0, ..., 0.
O TPS máximo da instância é de 40 requisições/segundo.