Esta seção oferece uma visão geral das métricas de monitoramento disponíveis para monitorar o serviço gerenciado para Apache Kafka. Este documento também mostra como monitorar o uso do Serviço gerenciado para Apache Kafka no console Google Cloud usando o Monitoring.
Se você quiser ver métricas de outros recursos do Google Cloud , além do conjunto completo de métricas do Serviço gerenciado para Apache Kafka, use o Monitoring.
Caso contrário, use os painéis de monitoramento com uma seleção de métricas fornecidas no Serviço gerenciado para Apache Kafka. Para mais informações, consulte os seguintes tópicos:
Visão geral das métricas do Serviço gerenciado para Apache Kafka
O Serviço Gerenciado para Apache Kafka exporta várias métricas disponíveis na distribuição de código aberto do Kafka, além de métricas específicas do serviço, como o atraso de offset do grupo de consumidores. Para monitoramento, o serviço gerenciado para Apache Kafka
é identificado pelo URL do serviço managedkafka.googleapis.com.
As métricas do Serviço gerenciado para Apache Kafka são organizadas em quatro categorias de recursos:
Cluster: essas métricas são destinadas a manter a integridade geral do cluster.
Tópico: essas métricas incluem taxas e erros de editor e consumidor. Essas métricas monitoram a integridade geral dos aplicativos Kafka e problemas específicos de um agente.
Partição de tópico: essas métricas são destinadas ao monitoramento e à depuração de problemas de desempenho específicos de partições individuais. Um exemplo é a distribuição desigual de chaves.
Grupo de consumidores de partição de tópico: essas métricas monitoram a integridade do aplicativo consumidor, principalmente o atraso do consumidor. As métricas de erro do Kafka de código aberto para grupos de consumidores não estão disponíveis por partição, apenas no nível do tópico.
Algumas métricas podem ser agrupadas por corretor. Embora o próprio serviço Managed Service para Apache Kafka não exponha agentes como um recurso, é essencial monitorá-los para detectar cenários de falha, como latência devido a agentes sobrecarregados.
As métricas seguem a convenção que inclui o URL da API de serviço, o recurso monitorado e a métrica. Por exemplo, o identificador da métrica do tópico message_in_count é managedkafka.googleapis.com/Topic/message_in_count.
Para acessar essas métricas, consulte Ver uma única métrica do serviço gerenciado para Apache Kafka.
Antes de começar
Antes de usar o Monitoring, verifique se você preparou um projeto do Serviço gerenciado para Apache Kafka com o faturamento ativado. Uma maneira de fazer isso é concluir o guia de início rápido do Serviço gerenciado para Apache Kafka.
Papéis e permissões necessárias
Para receber as permissões necessárias para
ver os gráficos de monitoramento,
peça ao administrador para conceder a você o
papel do IAM de Leitor do Kafka gerenciado (roles/managedkafka.Viewer)
no seu projeto.
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Também é possível conseguir as permissões necessárias usando papéis personalizados ou outros papéis predefinidos.
Para mais informações sobre essa função, consulte Funções predefinidas do Managed Service para Apache Kafka.
Ver uma única métrica do Serviço gerenciado para Apache Kafka
Para conferir uma única métrica do Serviço gerenciado para Apache Kafka usando o console Google Cloud , siga estas etapas:
No console do Google Cloud , acesse a página Monitoring.
No painel de navegação, selecione Metrics Explorer.
Na seção Configuração, clique em Selecionar uma métrica.
No filtro, digite
Apache Kafka.Em Recursos ativos, selecione uma das seguintes opções:
Cluster do Apache Kafka
Tópico do Apache Kafka
Partição de tópico do Apache Kafka
Grupo de consumidores de partição de tópico do Apache Kafka
Selecione uma métrica e clique em Aplicar.
A página de uma métrica específica é aberta.
Para saber mais sobre o painel de monitoramento, leia a documentação do Cloud Monitoring.
Métricas do cluster
| Métrica | Descrição | Nome do MBean equivalente |
|---|---|---|
| cpu/core_usage_time | Uso acumulado de CPU do cluster em vCPU. Isso pode ser útil para entender o custo geral de operação do cluster. | N/A |
| cpu/limit | Contagem atual de CPUs configuradas para o cluster. Pode ser usado para monitorar a utilização da CPU como uma proporção com a métrica cpu/usage. |
N/A |
| memory/usage | Uso atual de RAM no cluster. Pode ser usado para monitorar a utilização da RAM como uma proporção com a métrica memory/limit. |
N/A |
| memory/limit | Tamanho da RAM configurada atualmente do cluster. Pode ser usado para monitorar a utilização da RAM como uma proporção com a métrica memory/usage. |
N/A |
| cluster_byte_in_count | O número total de bytes dos clientes enviados a todos os tópicos. | kafka.server:type=BrokerTopicMetrics,name=BytesInPerSec |
| cluster_byte_out_count | O número total de bytes enviados aos clientes de todos os tópicos. | kafka.server:type=BrokerTopicMetrics,name=BytesOutPerSec |
| cluster_message_in_count | O número total de mensagens publicadas em todos os tópicos. | kafka.server:type=BrokerTopicMetrics,name=MessagesInPerSec |
| request_count | O número total de solicitações feitas ao corretor | kafka.network:type=RequestMetrics,name=RequestsPerSec,request=
{Produce|FetchConsumer|FetchFollower},version=([0-9]+) |
| request_byte_count | O tamanho total, em bytes, das solicitações feitas ao cluster. | kafka.network:type=RequestMetrics,name=RequestBytes,request=
([-.\w]+) |
| partições | O número atual de partições processadas por esse cluster, dividido por broker. | kafka.server:type=ReplicaManager,name=PartitionCount |
| request_latencies | O número de milissegundos necessários para cada solicitação, em vários percentis. | kafka.network:type=RequestMetrics,name=TotalTimeMs,request=
{Produce|FetchConsumer|FetchFollower} |
| consumer_groups | O número atual de grupos de consumidores que consomem do agente | kafka.server:type=GroupMetadataManager,name=NumGroups |
| offline_partitions | O número de partições de tópico off-line, conforme observado pelo controlador. | kafka.controller:type=KafkaController,name=OfflinePartitionCount |
Métricas de tópico
| Métrica | Descrição | Nome equivalente do MBean |
|---|---|---|
| message_in_count | O número total de mensagens publicadas no tópico. | kafka.server:type=BrokerTopicMetrics,name=MessagesInPerSec,
topic=([-.\w]+) |
| byte_in_count | O número total de bytes enviados pelos clientes para o tópico. | kafka.server:type=BrokerTopicMetrics,name=BytesInPerSec,topic=([-.\w]+) |
| topic_request_count | O número total de solicitações de produção e busca feitas para o tópico. | kafka.server:type=BrokerTopicMetrics,name=TotalProduceRequestsPerSec,topic=([-.\w]+)kafka.server:type=BrokerTopicMetrics,name=TotalFetchRequestsPerSec,topic=([-.\w]+) |
| topic_error_count | O número total de solicitações de produção e busca com falha feitas para o tópico. | kafka.server:type=BrokerTopicMetrics,name=FailedProduceRequestsPerSec,topic=([-.\w]+)kafka.server:type=BrokerTopicMetrics,name=FailedFetchRequestsPerSec,topic=([-.\w]+) |
| byte_out_count | O número total de bytes enviados aos clientes. | kafka.server:type=BrokerTopicMetrics,name=BytesOutPerSec,
topic=([-.\w]+) |
Métricas de partição
| Métrica | Descrição | Nome equivalente do MBean |
|---|---|---|
| consumer_lag | Atraso de replicação em mensagens entre o líder e cada réplica seguidora. |
kafka.server:type=FetcherLagMetrics,name=ConsumerLag,clientId=([-.\w]+),topic=([-.\w]+),partition=([0-9]+)
|
| log_segments | O número atual de segmentos de registros. Isso é útil para garantir que o armazenamento em camadas permaneça íntegro. | kafka.log:type=Log,name=NumLogSegments,topic=([-.\w]+),partition=([0-9]+) |
| first_offset | O primeiro deslocamento de cada partição no tópico. Em combinação com o last_offset, ele pode ser usado para monitorar um limite superior no número total de mensagens armazenadas e para encontrar o deslocamento real da mensagem mais antiga. |
kafka.log:type=Log,name=LogStartOffset,topic=([-.\w]+),partition=([0-9]+) |
| last_offset | O último deslocamento na partição. Isso pode ser usado para encontrar o deslocamento mais recente de cada partição ao longo do tempo. Isso pode ser útil para identificar o deslocamento específico necessário para reprocessar dados a partir de um determinado momento no passado. | kafka.log:type=Log,name=LogEndOffset,topic=([-.\w]+),partition=([0-9]+) |
| byte_size | O tamanho da partição no disco em bytes. | - |
Métricas do grupo de consumidores
| Métrica | Descrição | Nome equivalente do MBean |
|---|---|---|
| Offset_lag | A diferença entre o último deslocamento e o último deslocamento confirmado para o grupo de consumidores de cada partição. Essa métrica estima quantas mensagens produzidas o consumidor ainda não processou. | N/A |