• /
  • EnglishEspañolFrançais日本語한국어Português
  • Se connecterDémarrer

Cette traduction automatique est fournie pour votre commodité.

En cas d'incohérence entre la version anglaise et la version traduite, la version anglaise prévaudra. Veuillez visiter cette page pour plus d'informations.

Créer un problème

moniteur Apache Airflow avec OpenTelemetry

Monitorez les données Apache Airflow en configurant OpenTelemetry pour envoyer des données à New Relic, où vous pouvez visualiser les tâches, les opérateurs et les exécutions DAG sous forme de métriques.

Screenshot showing sample Airflow DAG runs in New Relic

Prérequis

Avant d'activer OpenTelemetry dans Apache Airflow, vous devez installer le package Airflow avec le supplément otel . La méthode d'installation dépend de votre approche de déploiement Airflow :

Option 1 : Installation à partir de PyPi

  1. Suivez les instructions d'installation de la documentation d'Airflow.

  2. Lors de l'installation avec pip, ajoutez le otel supplémentaire à la commande. Par exemple:

    bash
    $
    pip install "apache-airflow[otel]"

Option 2 : Installation à partir de Docker

  1. Configurez l'image Docker Airflow en suivant les instructions de la documentation d'Airflow.

  2. Étendez l’image Docker prédéfinie en utilisant un Dockerfile pour installer le otel supplémentaire. Vous pouvez remplacer la dernière tag par la version souhaitée de l'image.

    FROM apache/airflow:latest
    RUN pip install --no-cache-dir "apache-airflow[otel]==$AIRFLOW_VERSION"

Conseil

$AIRFLOW_VERSION est déjà défini par le conteneur apache/airflow, mais peut être remplacé par un numéro de version pour d'autres images de base.

Configuration

Pour envoyer des métriques Airflow à New Relic, configurez les OpenTelemetry métriques pour exporter les données vers un OpenTelemetry Collector, qui transmettra ensuite les données à un point de terminaison OTLP New Relic à l'aide d'un.

Important

En raison du manque actuel de prise en charge d'Airflow pour l'envoi OpenTelemetry de données avec des en-têtes OpenTelemetry Collector d'authentification, le est essentiel pour l'authentification avec New Relic.

Configurer le OpenTelemetry Collector

  1. Suivez l'Collector exemple de base pour configurer votre OpenTelemetry Collector.
  2. Configurez le Collector avec votre point de terminaison OTLP approprié, tel que https://otlp.nr-data.net:4317.
  3. Pour l'authentification, ajoutez votre à la variable d'environnement NEW_RELIC_LICENSE_KEY afin qu'elle remplisse l'en-tête api-key .
  4. Assurez-vous que le port 4318 sur le Collector est accessible à partir de l' instance Airflow en cours d'exécution. (Pour Docker, vous devrez peut-être utiliser un réseau Docker.)
  5. lancement du Collector.

Configurer les métriques Airflow

Airflow envoie des métriques à l'aide d'OTLP sur HTTP, qui utilise le port 4318. Airflow dispose de plusieurs méthodes pour définir les options de configuration.

Important

Si votre environnement exécute Airflow dans un conteneur Docker à côté du OpenTelemetry Collector, vous devrez modifier le otel_host paramètre de localhost à l'adresse du conteneur du Collector.

Choisissez l’une des méthodes suivantes pour définir les options requises pour Airflow.

  1. Définissez les options requises dans le fichier airflow.cfg .

    [metrics]
    otel_on = True
    otel_host = localhost
    otel_port = 4318
    otel_ssl_active = False
  2. Ou définissez les options requises comme variables d’environnement.

    bash
    $
    export AIRFLOW__METRICS__OTEL_ON=True
    $
    export AIRFLOW__METRICS__OTEL_HOST=localhost
    $
    export AIRFLOW__METRICS__OTEL_PORT=4318
    $
    export AIRFLOW__METRICS__OTEL_SSL_ACTIVE=False

Conseil

Airflow dispose de paramètres supplémentaires pour les métriques qui peuvent être utiles. Cela inclut la possibilité de renommer les métriques avant l'envoi, ce qui est utile si les noms de métriques dépassent la limite de 63 octets pour OpenTelemetry.

Les données de validation sont envoyées à New Relic

Pour confirmer que New Relic collecte vos données Airflow, exécutez un DAG ou un pipeline :

  1. Connectez-vous à Airflow.
  2. Cliquez sur le bouton Exécuter sur l’un des DAG du didacticiel existants ou sur le vôtre.
  3. Attendez que le pipeline termine son exécution.
  4. Allez à one.newrelic.com > All capabilities > APM & services > Services - OpenTelemetry > Airflow.
  5. Cliquez sur Metrics Explorer pour visualiser les métriques des exécutions de pipeline.

Construire des Dashboards

Avec les métriques Airflow, vous pouvez créer un dashboard autour d'un pipeline individuel, des performances globales ou afficher une comparaison entre différents pipelines. Cliquez ici pour en savoir plus sur l'interrogation de vos métriques.

Cette requête récupère une liste de toutes les métriques signalées pour Airflow :

SELECT uniques(metricName) FROM Metric WHERE entity.name = 'Airflow'
AND metricName LIKE 'airflow.%' SINCE 30 MINUTES AGO LIMIT 100

Assurez-vous de modifier la limite (100) si vos noms métriques la dépassent.

Cette requête montre une comparaison de différents temps d'exécution pour les exécutions réussies de différents DAG :

SELECT latest(airflow.dagrun.duration.success) FROM Metric
FACET dag_id WHERE entity.name = 'Airflow' SINCE 30 minutes AGO TIMESERIES
Screenshot showing sample Airflow DAG runs in New Relic

Cette requête affiche le nombre d'exécutions DAG ayant échoué, qui peuvent être utilisées pour créer pour le pipeline critique :

SELECT count(airflow.dagrun.duration.failed) FROM Metric
FACET dag_id WHERE entity.name = 'Airflow' SINCE 30 minutes AGO TIMESERIES
Screenshot showing sample Airflow failures in New Relic

Important

Les métriques OpenTelemetry d'Airflow ne sont pas maintenues par New Relic, donc si vous rencontrez des problèmes avec l' instrumentation, créez un nouveau problème dans le référentiel GitHub d'Airflow (référentiel).

Ce document vous a-t-il aidé lors de votre installation ?

Droits d'auteur © 2025 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.