Cette section présente les métriques de surveillance disponibles pour surveiller Managed Service pour Apache Kafka. Ce document vous explique également comment surveiller votre utilisation de Managed Service pour Apache Kafka dans la console Google Cloud à l'aide de Monitoring.
Si vous souhaitez afficher les métriques d'autres ressources Google Cloud en plus de l'ensemble complet des métriques Managed Service pour Apache Kafka, utilisez Monitoring.
Sinon, vous pouvez utiliser les tableaux de bord de surveillance avec une sélection de métriques fournies dans Managed Service pour Apache Kafka. Pour en savoir plus, consultez les articles suivants :
Présentation des métriques Managed Service pour Apache Kafka
Managed Service pour Apache Kafka exporte plusieurs métriques disponibles dans la distribution Kafka Open Source, ainsi que des métriques spécifiques au service, comme le décalage du groupe de consommateurs. Pour la surveillance, le service Managed Service pour Apache Kafka est identifié par l'URL du service managedkafka.googleapis.com.
Les métriques Managed Service pour Apache Kafka sont organisées en quatre catégories de ressources :
Cluster : ces métriques sont destinées à maintenir l'état général du cluster.
Thème : ces métriques incluent les taux et les erreurs des éditeurs et des consommateurs. Ces métriques permettent de surveiller l'état général des applications Kafka et les problèmes spécifiques à un courtier.
Partition de topic : ces métriques sont destinées à la surveillance et au débogage des problèmes de performances spécifiques à des partitions individuelles. Par exemple, la distribution des clés peut être inégale.
Groupe de consommateurs de partitions de sujets : ces métriques surveillent l'état de l'application consommateur, principalement le décalage du consommateur. Les métriques d'erreur Kafka Open Source pour les groupes de consommateurs ne sont pas disponibles par partition, mais uniquement au niveau du sujet.
Certaines métriques peuvent être regroupées par courtier. Bien que le service Managed Service pour Apache Kafka lui-même n'expose pas les brokers en tant que ressource, il est essentiel de les surveiller pour détecter les scénarios d'échec tels que la latence due à des brokers surchargés.
Les métriques sont nommées en suivant une convention qui inclut l'URL de l'API du service, la ressource surveillée et la métrique. Par exemple, l'identifiant de métrique du thème message_in_count est managedkafka.googleapis.com/Topic/message_in_count.
Pour accéder à ces métriques, consultez Afficher une seule métrique Managed Service pour Apache Kafka.
Avant de commencer
Avant d'utiliser Monitoring, assurez-vous d'avoir préparé un projet Managed Service pour Apache Kafka avec la facturation activée. Pour ce faire, vous pouvez suivre le démarrage rapide pour Managed Service pour Apache Kafka.
Rôles et autorisations nécessaires
Pour obtenir les autorisations nécessaires pour afficher les graphiques de surveillance, demandez à votre administrateur de vous accorder le rôle IAM Lecteur Managed Kafka (roles/managedkafka.Viewer) sur votre projet.
Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.
Vous pouvez également obtenir les autorisations requises avec des rôles personnalisés ou d'autres rôles prédéfinis.
Pour en savoir plus sur ce rôle, consultez Rôles prédéfinis de Managed Service pour Apache Kafka.
Afficher une seule métrique Managed Service pour Apache Kafka
Pour afficher une seule métrique Managed Service pour Apache Kafka à l'aide de la console Google Cloud , procédez comme suit :
Dans la console Google Cloud , accédez à la page Monitoring.
Dans le volet de navigation, sélectionnez Explorateur de métriques.
Dans la section Configuration, cliquez sur Sélectionner une métrique.
Dans le filtre, saisissez
Apache Kafka.Dans Ressources actives, sélectionnez l'une des options suivantes :
Cluster Apache Kafka
Sujet Apache Kafka
Partition de sujet Apache Kafka
Groupe de consommateurs de partition de sujet Apache Kafka
Sélectionnez une métrique, puis cliquez sur Appliquer.
La page d'une métrique spécifique s'ouvre.
Pour en savoir plus sur le tableau de bord de surveillance, consultez la documentation Cloud Monitoring.
Métriques de cluster
| Métrique | Description | Nom MBean équivalent |
|---|---|---|
| cpu/core_usage_time | Utilisation cumulative du processeur du cluster en vCPU. Cela peut être utile pour comprendre le coût global de fonctionnement du cluster. | N/A |
| cpu/limit | Nombre actuel de processeurs configurés pour le cluster. Peut être utilisé pour surveiller l'utilisation du processeur sous forme de ratio avec la métrique cpu/usage. |
N/A |
| memory/usage | Utilisation actuelle de la RAM sur le cluster. Peut être utilisé pour surveiller l'utilisation de la RAM sous forme de ratio avec la métrique memory/limit. |
N/A |
| memory/limit | Taille de la RAM actuellement configurée pour le cluster. Peut être utilisé pour surveiller l'utilisation de la RAM sous forme de ratio avec la métrique memory/usage. |
N/A |
| cluster_byte_in_count | Nombre total d'octets envoyés par les clients à tous les thèmes. | kafka.server:type=BrokerTopicMetrics,name=BytesInPerSec |
| cluster_byte_out_count | Nombre total d'octets envoyés aux clients depuis tous les thèmes. | kafka.server:type=BrokerTopicMetrics,name=BytesOutPerSec |
| cluster_message_in_count | Nombre total de messages publiés dans tous les sujets. | kafka.server:type=BrokerTopicMetrics,name=MessagesInPerSec |
| request_count | Nombre total de requêtes envoyées au courtier | kafka.network:type=RequestMetrics,name=RequestsPerSec,request=
{Produce|FetchConsumer|FetchFollower},version=([0-9]+) |
| request_byte_count | Taille totale, en octets, des requêtes envoyées au cluster. | kafka.network:type=RequestMetrics,name=RequestBytes,request=
([-.\w]+) |
| partitions | Nombre actuel de partitions gérées par ce cluster, réparti par courtier. | kafka.server:type=ReplicaManager,name=PartitionCount |
| request_latencies | Nombre de millisecondes nécessaires pour chaque requête, à différents centiles | kafka.network:type=RequestMetrics,name=TotalTimeMs,request=
{Produce|FetchConsumer|FetchFollower} |
| consumer_groups | Nombre actuel de groupes de consommateurs qui consomment des données de l'agent | kafka.server:type=GroupMetadataManager,name=NumGroups |
| offline_partitions | Nombre de partitions de sujets hors connexion observées par le contrôleur. | kafka.controller:type=KafkaController,name=OfflinePartitionCount |
Métriques sur les thèmes
| Métrique | Description | Nom MBean équivalent |
|---|---|---|
| message_in_count | Nombre total de messages publiés dans le sujet. | kafka.server:type=BrokerTopicMetrics,name=MessagesInPerSec,
topic=([-.\w]+) |
| byte_in_count | Nombre total d'octets envoyés au thème par les clients. | kafka.server:type=BrokerTopicMetrics,name=BytesInPerSec,topic=([-.\w]+) |
| topic_request_count | Nombre total de requêtes de production et de récupération effectuées pour le thème. | kafka.server:type=BrokerTopicMetrics,name=TotalProduceRequestsPerSec,topic=([-.\w]+)kafka.server:type=BrokerTopicMetrics,name=TotalFetchRequestsPerSec,topic=([-.\w]+) |
| topic_error_count | Nombre total de requêtes de production et de récupération ayant échoué pour le thème. | kafka.server:type=BrokerTopicMetrics,name=FailedProduceRequestsPerSec,topic=([-.\w]+)kafka.server:type=BrokerTopicMetrics,name=FailedFetchRequestsPerSec,topic=([-.\w]+) |
| byte_out_count | Nombre total d'octets envoyés aux clients. | kafka.server:type=BrokerTopicMetrics,name=BytesOutPerSec,
topic=([-.\w]+) |
Métriques de partition
| Métrique | Description | Nom MBean équivalent |
|---|---|---|
| consumer_lag | Délai de réplication en messages entre le réplica principal et chaque réplica subordonné. |
kafka.server:type=FetcherLagMetrics,name=ConsumerLag,clientId=([-.\w]+),topic=([-.\w]+),partition=([0-9]+)
|
| log_segments | Nombre actuel de segments de journaux. Cela permet de s'assurer que la hiérarchisation du stockage reste saine. | kafka.log:type=Log,name=NumLogSegments,topic=([-.\w]+),partition=([0-9]+) |
| first_offset | Premier décalage pour chaque partition du sujet. En combinaison avec last_offset, il peut être utilisé pour surveiller une limite supérieure du nombre total de messages stockés et pour trouver le décalage réel du message le plus ancien. |
kafka.log:type=Log,name=LogStartOffset,topic=([-.\w]+),partition=([0-9]+) |
| last_offset | Dernier décalage de la partition. Elle permet de trouver le dernier décalage pour chaque partition au fil du temps. Cela peut être utile pour identifier le décalage spécifique nécessaire pour retraiter les données à partir d'un moment précis dans le passé. | kafka.log:type=Log,name=LogEndOffset,topic=([-.\w]+),partition=([0-9]+) |
| byte_size | Taille de la partition sur le disque en octets. | - |
Métriques des groupes de consommateurs
| Métrique | Description | Nom MBean équivalent |
|---|---|---|
| Offset_lag | Différence entre le dernier décalage et le dernier décalage validé pour le groupe de consommateurs pour chaque partition. Cette métrique estime le nombre de messages produits que le consommateur n'a pas encore traités. | N/A |