Utiliser Stackdriver Monitoring pour les pipelines Cloud Dataflow

Stackdriver propose une suite très performante d'outils de surveillance, de journalisation et de diagnostic. L'intégration de Cloud Dataflow avec Stackdriver Monitoring vous permet d'accéder depuis les tableaux de bord Stackdriver à des métriques de tâche Cloud Dataflow, telles que l'état de la tâche, le nombre d'éléments, le retard du système (pour les tâches de traitement par flux) et les compteurs utilisateur. Vous pouvez également utiliser les fonctionnalités d'alerte de Stackdriver pour être averti de différentes conditions, comme un retard trop important du système de traitement par flux ou l'échec de certaines tâches.

Avant de commencer

Suivez l'un des guides de démarrage rapide pour configurer votre projet Cloud Dataflow et pour construire et exécuter votre pipeline.

Explorer les métriques

Vous pouvez explorer les métriques Cloud Dataflow à l'aide de Stackdriver. Suivez les étapes de cette section pour observer les différentes métriques standards fournies pour chacun de vos pipelines Apache Beam.

Remarque : Le cas échéant, l'agrégateur que vous définissez dans votre pipeline Apache Beam sera signalé par Cloud Dataflow à Stackdriver en tant que métrique personnalisée. Cloud Dataflow signalera des mises à jour incrémentielles à Stackdriver environ toutes les 30 secondes. Afin d'éviter les conflits, toutes les métriques utilisateur seront exportées sous le type de données "double".

  1. Accédez à la console Google Cloud Platform et sélectionnez le menu Stackdriver Monitoring. Stackdriver Monitoring

  2. Suivez les étapes de la console Google Cloud Platform pour créer un compte Stackdriver et commencer un essai gratuit de Stackdriver.

  3. Accédez au tableau de bord Cloud Dataflow de Stackdriver, puis à Resources (Ressources) > Metrics Explorer BETA (Explorateur de métriques (Bêta)). Explorateur de métriques

  4. Dans l'explorateur de mesures, sélectionnez le type de ressource dataflow_job. dataflow_job

  5. Dans la liste qui vous est présentée, sélectionnez une métrique à observer pour l'une de vos tâches.


    Choisir des métriques
    Exemple : L'exemple qui suit présente un pipeline de traitement par flux qui lit un sujet Cloud Pub/Sub et écrit dans BigQuery. Ce pipeline comporte 5 étapes, dont l'une correspond à une transformation PubsubIO.Read. L'image ci-dessous affiche le nombre d'éléments (dataflow/job/element_count) pour l'étape PubsubIO.Read du pipeline. Exemple

Créer des alertes et des tableaux de bord

Outre la possibilité d'accéder aux métriques relatives à Cloud Dataflow, Stackdriver vous permet de créer des alertes et des tableaux de bord, afin que vous puissiez représenter des métriques sous forme de séries temporelles dans un graphique et demander à être averti lorsque ces métriques atteignent des valeurs spécifiées.

Créer des groupes de ressources

Vous pouvez créer des groupes de ressources incluant plusieurs pipelines Apache Beam, ce qui offre un moyen simple de définir des alertes et de créer des tableaux de bord.

  1. Dans le tableau de bord Cloud Dataflow de Stackdriver, accédez au menu Groups (Groupes) et sélectionnez Create group (Créer un groupe).

  2. Ajoutez des critères de filtre afin de définir les ressources Cloud Dataflow à inclure dans le groupe. Par exemple, vous pourriez utiliser le préfixe du nom de vos pipelines comme critère de filtre. Créer un groupe

  3. Une fois le groupe créé, vous pourrez visualiser les métriques de base relatives aux ressources de ce groupe. Créer un groupe

Créer des alertes pour les métriques Cloud Dataflow

Stackdriver vous permet de créer des alertes et d'être averti lorsqu'une métrique donnée dépasse un seuil spécifié – par exemple, lorsque le retard du système d'un pipeline de traitement par flux dépasse une valeur prédéfinie.

  1. Dans le tableau de bord Cloud Dataflow de Stackdriver, accédez au menu Alerting (Alertes) et sélectionnez Policies Overview (Vue d'ensemble des règles).

  2. Cliquez sur Add Policy (Ajouter une règle). Ajouter une règle

  3. Dans la page Créer une règle d'alerte, vous pouvez définir les conditions d'alerte et les canaux de communication utilisés par les alertes.
    Par exemple, pour définir une alerte concernant la métrique "System Lag" (Retard du système) pour le groupe de pipelines Apache Beam WindowedWordCount, sélectionnez "Dataflow Job" (Tâche Dataflow) dans le menu déroulant Resource Type (Type de ressource), puis "Group" (Groupe) dans le menu déroulant Applies To (S'applique à) et, enfin, "System Lag" (Retard du système) dans le menu déroulant If Metric (Si la métrique). Créer une alerte

  4. Une fois que vous avez créé une alerte, vous pouvez consulter les événements liés à Cloud Dataflow en sélectionnant Alerting (Alertes) > Events (Événements). Chaque fois qu'une condition de seuil de métrique déclenche une alerte, un incident et l'événement correspondant sont créés dans Stackdriver. Si vous avez spécifié un mécanisme de notification dans l'alerte (e-mail, SMS, etc.), vous recevrez également une notification. Alerte d'incident

Construire votre propre tableau de bord de surveillance personnalisé

Vous pouvez créer des tableaux de bord de Stackdriver Monitoring intégrant les graphiques les plus pertinents liés à Cloud Dataflow.

  1. Dans le tableau de bord Cloud Dataflow de Stackdriver, accédez au menu Tableaux de bord et sélectionnez Créer un tableau de bord.

  2. Cliquez sur Add Chart (Ajouter un graphique).

  3. Dans la fenêtre Add Chart (Ajouter un graphique), sélectionnez "Dataflow Job" (Tâche Dataflow) dans le champ Resource Type (Type de ressource), sélectionnez la métrique à représenter dans le champ Metric Type (Type de métrique), puis sélectionnez un groupe contenant des pipelines Apache Beam dans le panneau Filter (Filtre). Ajouter un graphique

Vous pouvez ajouter autant de graphiques que vous le souhaitez au tableau de bord.

Recevoir les métriques de VM de calcul via l'agent Stackdriver Monitoring

Si vous souhaitez surveiller les métriques liées aux disques persistants, aux processeurs, au réseau et aux processus provenant de vos instances de VM de calcul Cloud Dataflow, vous pouvez activer l'agent Stackdriver Monitoring lors de l'exécution de votre pipeline. Consultez la liste des métriques disponibles via l'agent Monitoring.

Pour activer l'agent Monitoring, spécifiez l'option --experiments=enable_stackdriver_agent_metrics lors de l'exécution de votre pipeline.

Pour désactiver l'agent Monitoring sans arrêter votre pipeline, il vous suffit de lancer une tâche de substitution sans spécifier le paramètre --experiments=enable_stackdriver_agent_metrics, de façon à mettre le pipeline à jour.

Étape suivante

Nous vous recommandons de consulter ces ressources complémentaires pour plus d'informations :

Cette page vous a-t-elle été utile ? Évaluez-la :

Envoyer des commentaires concernant…

Besoin d'aide ? Consultez notre page d'assistance.