Utiliser le tableau de bord de surveillance

Cloud Composer 1 | Cloud Composer 2

Cette page explique comment accéder au tableau de bord de surveillance d'un environnement Cloud Composer et l'utiliser.

Accéder au tableau de bord de surveillance

Le tableau de bord de surveillance contient des métriques et des graphiques permettant de surveiller les tendances dans les exécutions du DAG dans votre environnement, et d'identifier les problèmes liés aux composants Airflow et aux ressources Cloud Composer.

Pour accéder au tableau de bord de surveillance de votre environnement:

  1. Dans la console Google Cloud, accédez à la page Environnements.

    Accéder à la page Environnements

  2. Dans la liste des environnements, cliquez sur le nom de votre environnement. La page Détails de l'environnement s'ouvre.

  3. Accédez à l'onglet Surveillance.

Configurer des alertes pour les métriques

Vous pouvez configurer des alertes pour une métrique. Pour ce faire, cliquez sur l'icône en forme de cloche située dans l'angle de la carte de surveillance.

Créer une alerte pour une métrique affichée dans le tableau de bord de surveillance
Figure 1. Créer une alerte pour une métrique affichée dans le tableau de bord de surveillance (cliquez pour agrandir)

Afficher une métrique dans Monitoring

Vous pouvez examiner une métrique de plus près en l'affichant dans Monitoring.

Pour y accéder à partir du tableau de bord de surveillance Cloud Composer, cliquez sur les trois points dans l'angle supérieur droit d'une fiche de métrique, puis sélectionnez Afficher dans l'explorateur de métriques.

Afficher une métrique à partir du tableau de bord de surveillance dans l'Explorateur de métriques
Figure 2 : Afficher une métrique à partir du tableau de bord de surveillance dans l'Explorateur de métriques (cliquez pour agrandir)

Description des métriques

Chaque environnement Cloud Composer possède son propre tableau de bord de surveillance. Les métriques affichées dans un tableau de bord de surveillance pour un environnement particulier ne permettent de suivre que les exécutions du DAG, les composants Airflow et les détails de l'environnement pour cet environnement uniquement. Par exemple, si vous disposez de deux environnements, le tableau de bord n'agrège pas les métriques des deux environnements.

Vue d'ensemble de l'environnement

Métrique d'environnement Description
État de l'environnement (DAG de surveillance Airflow) Chronologie indiquant l'état du déploiement de Composer. L'état vert indique uniquement l'état du déploiement de Composer. Cela ne signifie pas que tous les composants Airflow sont opérationnels et que les DAG peuvent s'exécuter.
Pulsation du programmeur Chronologie montrant la pulsation du programmeur Airflow. Recherchez des zones rouges pour identifier les problèmes liés au planificateur Airflow. Si votre environnement comporte plusieurs programmeurs, l'état Heartbeat est opérationnel tant qu'au moins l'un des programmeurs répond.
État du serveur Web Chronologie indiquant l'état du serveur Web Airflow. Cet état est généré à partir des codes d'état HTTP renvoyés par le serveur Web Airflow.
État de la base de données Chronologie indiquant l'état de la connexion à l'instance Cloud SQL qui héberge la base de données Airflow.
Opérations liées à l'environnement Chronologie montrant les opérations qui modifient l'environnement, telles que les mises à jour de configuration ou le chargement d'instantanés d'environnement.
Opérations de maintenance Chronologie indiquant les périodes d'opérations de maintenance sur le cluster de l'environnement.
Dépendances de l'environnement Chronologie montrant l'état des vérifications de joignabilité et d'autorisations pour le fonctionnement de l'environnement.

Statistiques du DAG

Métrique d'environnement Description
Exécutions DAG ayant réussi Nombre total d'exécutions réussies pour tous les DAG de l'environnement au cours de la période sélectionnée. Si le nombre d'exécutions réussies du DAG passe en dessous des niveaux attendus, cela peut indiquer des échecs (voir Échecs d'exécution du DAG) ou un problème de planification.
Exécutions du DAG ayant échoué Tâches ayant échoué Nombre total d'exécutions ayant échoué pour tous les DAG de l'environnement au cours de la période sélectionnée. Nombre total de tâches ayant échoué dans l'environnement au cours de la période sélectionnée. Les tâches ayant échoué n'entraînent pas toujours l'échec de l'exécution d'un DAG, mais elles peuvent s'avérer utiles pour résoudre les erreurs de DAG.
Exécutions DAG terminées Nombre de réussites et d'échecs du DAG pour les intervalles au cours de la période sélectionnée. Cela peut vous aider à identifier les problèmes temporaires liés aux exécutions de DAG et à les corréler avec d'autres événements, tels que les évictions de pods de nœuds de calcul.
Tâches terminées Nombre de tâches terminées dans l'environnement, avec une répartition des tâches ayant réussi et échoué.
Durée médiane d'une exécution DAG Durée moyenne des exécutions DAG. Ce graphique peut vous aider à identifier les problèmes de performances et à repérer les tendances dans la durée des DAG.
Tâches Airflow Nombre de tâches en cours d'exécution, en file d'attente ou différées à un moment donné. Les tâches Airflow sont des tâches en file d'attente dans Airflow. Elles peuvent être déplacées dans la file d'attente de l'agent Celery ou Kubernetes Executor. Les tâches en file d'attente Celery sont des instances de tâches placées dans la file d'attente de l'agent Celery.
Tâches zombie supprimées Nombre de tâches zombies supprimées sur une courte période. Les tâches zombies sont souvent provoquées par l'arrêt externe des processus Airflow. Le programmeur Airflow supprime périodiquement les tâches zombies, ce qui se reflète dans ce graphique.
Taille de sac du DAG Nombre de DAG déployés dans le bucket de votre environnement et traités par Airflow à un moment donné. Cela peut être utile lors de l'analyse des goulots d'étranglement des performances. Par exemple, une augmentation du nombre de déploiements de DAG peut dégrader les performances en raison d'une charge excessive.
Erreurs du processeur DAG Nombre d'erreurs et d'expirations de délai par seconde lors du traitement des fichiers DAG. La valeur indique la fréquence des erreurs signalées par le processeur DAG. Elle ne correspond pas au nombre de DAG ayant échoué.
Temps d'analyse total pour tous les DAG Graphique indiquant le temps total nécessaire à Airflow pour traiter tous les DAG dans l'environnement. L'augmentation du temps d'analyse peut affecter l'efficacité de la programmation. Pour en savoir plus, consultez la section Différence entre le temps d'analyse du DAG et le temps d'exécution du DAG.

Statistiques du programmeur

Métrique d'environnement Description
Pulsation du programmeur Consultez Présentation de l'environnement.
Utilisation totale du processeur du programmeur Utilisation totale des cœurs de processeur virtuel par les conteneurs s'exécutant dans tous les pods de programmeurs Airflow et limite combinée des processeurs virtuels pour tous les programmeurs.
Utilisation totale de la mémoire du programmeur Utilisation totale de mémoire par les conteneurs s'exécutant dans tous les pods de programmeurs Airflow, et limite combinée des processeurs virtuels pour tous les programmeurs.
Utilisation totale du disque du programmeur Utilisation totale d'espace disque par les conteneurs s'exécutant dans tous les pods de programmeurs Airflow et limite d'espace disque combinée pour tous les programmeurs.
Redémarrages des conteneurs du programmeur Nombre total de redémarrages pour les conteneurs de planificateur individuels.
Évictions de pods de programmeur Nombre d'évictions de pods de programmeur Airflow. L'éviction d'un pod peut se produire lorsqu'un pod particulier du cluster de votre environnement atteint ses limites de ressources.

Statistiques des nœuds de calcul

Métrique d'environnement Description
Utilisation totale du processeur par nœud de calcul Utilisation totale des cœurs de processeur virtuel par les conteneurs s'exécutant dans tous les pods de nœuds de calcul Airflow et limite combinée des processeurs virtuels pour tous les nœuds de calcul.
Utilisation totale de la mémoire par les nœuds de calcul Utilisation totale de mémoire par les conteneurs s'exécutant dans tous les pods de nœuds de calcul Airflow et limite combinée de processeurs virtuels pour tous les nœuds de calcul.
Utilisation totale du disque des nœuds de calcul Utilisation totale d'espace disque par les conteneurs s'exécutant dans tous les pods de nœuds de calcul Airflow et limite d'espace disque combiné pour tous les nœuds de calcul.
Nœuds de calcul actifs Nombre actuel de nœuds de calcul dans votre environnement. Dans Cloud Composer 2, votre environnement adapte automatiquement le nombre de nœuds de calcul actifs.
Redémarrages de conteneurs de nœuds de calcul Nombre total de redémarrages pour les conteneurs de nœuds de calcul individuels.
Évictions de pods de nœuds de calcul Nombre d'évictions de pods de nœuds de calcul Airflow. L'éviction d'un pod peut se produire lorsqu'un pod particulier du cluster de votre environnement atteint ses limites de ressources. Si un pod de nœuds de calcul Airflow est évincé, toutes les instances de tâches exécutées sur ce pod sont interrompues, puis marquées comme défaillantes par Airflow.
Tâches Airflow Consultez Présentation de l'environnement.
Expirations de délais lors d'une publication vers l'agent Celery Nombre total d'erreurs AirflowTaskTimeout générées lors de la publication de tâches vers les courtiers Celery. Cette métrique correspond à la métrique Airflow celery.task_timeout_error.
Échecs de commande d'exécution Celery Nombre total de codes de sortie non nuls pour les tâches Celery. Cette métrique correspond à la métrique Airflow celery.execute_command.failure.
Tâches arrêtées par le système Nombre de tâches de workflow pour lesquelles l'exécuteur de tâches a été arrêté par un SIGKILL (par exemple, en raison de problèmes de mémoire ou de pulsation des nœuds).

Statistiques du serveur Web

Métrique d'environnement Description
État du serveur Web Consultez Présentation de l'environnement.
Utilisation du processeur du serveur Web Utilisation totale des cœurs de processeur virtuel par les conteneurs s'exécutant dans toutes les instances de serveur Web Airflow et limite combinée des processeurs virtuels pour tous les serveurs Web.
Utilisation de la mémoire du serveur Web Utilisation totale de mémoire par les conteneurs s'exécutant dans toutes les instances de serveur Web Airflow et limite combinée de processeurs virtuels pour tous les serveurs Web.
Utilisation totale du disque du serveur Web Utilisation totale d'espace disque par les conteneurs s'exécutant dans toutes les instances de serveur Web Airflow et limite d'espace disque combiné pour tous les serveurs Web.

Statistiques de la base de données SQL

Métrique d'environnement Description
État de la base de données Consultez Présentation de l'environnement.
Utilisation du processeur de la base de données Utilisation des cœurs de processeur par les instances de base de données Cloud SQL de votre environnement.
Utilisation de la mémoire de la base de données Utilisation totale de mémoire par les instances de base de données Cloud SQL de votre environnement.
Utilisation du disque de la base de données Utilisation totale de mémoire par les instances de base de données Cloud SQL de votre environnement.
Connexions à la base de données Nombre total de connexions actives à la base de données et limite du nombre total de connexions.
Taille de la base de données de métadonnées Airflow Taille de la base de données de métadonnées Airflow. Pour en savoir plus sur la gestion de la base de données de métadonnées Airflow, consultez la page Nettoyer la base de données Airflow.

Différence entre le temps d'analyse du DAG et le temps d'exécution du DAG

Le tableau de bord de surveillance d'un environnement affiche le temps total requis pour analyser tous les DAG de votre environnement Cloud Composer, ainsi que le temps moyen d'exécution d'un DAG.

L'analyse d'un DAG et la planification de tâches à partir d'un DAG pour leur exécution sont deux opérations distinctes effectuées par le programmeur Airflow.

Analyse du DAG et planification des tâches effectuées par le programmeur Airflow
Figure 3 : Analyse DAG et planification des tâches effectuées par le programmeur Airflow (cliquez pour agrandir)

Le temps d'analyse du DAG correspond au temps nécessaire au planificateur Airflow pour lire et analyser un fichier DAG.

Avant de pouvoir planifier une tâche d'un DAG, le programmeur Airflow doit analyser le fichier DAG pour découvrir la structure du DAG et les tâches définies. Une fois le fichier de DAG analysé, le programmeur peut commencer à planifier des tâches du DAG.

Le temps d'exécution du DAG correspond à la somme de toutes les durées d'exécution d'une tâche pour un DAG.

Pour connaître le temps nécessaire à l'exécution d'une tâche Airflow spécifique à partir d'un DAG, sélectionnez un DAG dans l'interface Web Airflow, puis ouvrez l'onglet Durée de la tâche. Cet onglet affiche les temps d'exécution des tâches pour le nombre spécifié de dernières exécutions du DAG.