Surveiller le Snowflake Connector for Kafka¶
Cette rubrique explique comment surveiller le Snowflake Connector for Kafka.
Surveillance JMX¶
Le connecteur expose les métriques via Java Management Extensions (JMX) MBeans. JMX est activé par défaut (jmx=true).
Pour utiliser la surveillance JMX, configurez la JVM de votre nœud de travail Kafka Connect à l’aide des propriétés système suivantes :
Vous pouvez alors utiliser n’importe quel outil de surveillance compatible avec JMX (par exemple, JConsole ou Prometheus avec une exportation JMX) pour afficher les métriques du connecteur.
Domaine MBean et nommage¶
Le connecteur enregistre MBeans sous le domaine snowflake.kafka.connector avec le modèle ObjectName suivant :
Où <scope> est soit task (métriques au niveau des tâches), soit channel (métriques des canaux par partition).
Métriques au niveau des tâches¶
Ces métriques sont rattachées à une tâche de connecteur et fournissent une visibilité globale sur le débit et le cycle de vie des opérations.
Métrique |
Type |
Description |
|---|---|---|
|
Compteur |
Nombre d’enregistrements reçus par la tâche via |
|
Minuterie |
Durée de chaque appel |
|
Minuterie |
Durée des opérations de pré-validation, qui incluent la vérification du décalage. |
|
Jauge |
Nombre actuel de partitions Kafka attribuées à cette tâche. Utile pour vérifier la distribution équilibrée des partitions entre les tâches. |
|
Minuterie |
Délai d’ouverture des canaux Snowpipe Streaming. Des valeurs élevées peuvent indiquer des problèmes de connexion. |
|
Compteur |
Nombre total de canaux ouverts par cette tâche. |
|
Compteur |
Nombre de fois où le connecteur a dû revenir en arrière en raison d’une contre-pression en aval. Des valeurs continues non nulles indiquent que le connecteur produit plus rapidement que Snowflake ne peut ingérer. |
Métriques au niveau du canal¶
Ces métriques portent sur un canal spécifique de sujet-partition Kafka et sont essentielles pour surveiller le décalage d’ingestion et la pérennité des données.
Métrique |
Type |
Description |
|---|---|---|
|
Jauge |
Le décalage le plus récent mis en mémoire tampon par le connecteur. Il s’agit du dernier enregistrement reçu de Kafka pour cette partition. |
|
Jauge |
Le dernier décalage dont la validation durable a été confirmée dans Snowflake. Comparez-le à |
|
Jauge |
Le dernier décalage disponible par le consommateur Kafka pour cette partition. Comparez à |
|
Jauge |
Nombre d’événements de récupération de canaux. Une valeur élevée ou en hausse indique une instabilité sur le canal Snowpipe Streaming. |
Métriques clés pour les alertes¶
Pour les déploiements de production, envisagez de lancer des alertes sur les éléments suivants :
Décalage d’ingestion :
latest-consumer-offsetmoinspersisted-in-snowflake-offset. Un écart croissant indique que le connecteur est en retard.Contre-pression :
backpressure-rewind-countaugmentant avec le temps.Récupération du canal :
channel-recovery-counten augmentation, ce qui peut indiquer des problèmes de connexion ou d’authentification.Durée de mise :
put-durationmoyenne ou p99 dépassant votre seuil acceptable.
Journalisation MDC¶
Activez la journalisation MDC (Mapped Diagnostic Context) pour ajouter le contexte du connecteur au début des messages de journal. Ceci est utile lorsque vous exécutez plusieurs instances de connecteur et que vous devez corréler les entrées de journal :
Estimation de la latence d’ingestion¶
Le champ SnowflakeConnectorPushTime dans RECORD_METADATA enregistre l’horodatage lorsque le connecteur a mis en mémoire tampon un enregistrement pour l’ingestion. Vous pouvez utiliser cette valeur pour estimer la latence d’ingestion de bout en bout en la comparant au moment où l’enregistrement devient interrogeable dans Snowflake.
Par exemple :
Pour plus d’informations sur la surveillance de l’ingestion de Snowpipe Streaming, voir Concepts clés Snowpipe Streaming.