CommencezCommencez gratuitement

Ajouter des nouvelles tentatives

Vous avez remarqué qu'un certain Dag échoue souvent sur une tâche qui extrait des données d'une source donnée. Frustrant : exécuter la tâche quelques minutes plus tard semble régler le problème. Après avoir appris la fonctionnalité de nouvelles tentatives (retries) dans les Dags Airflow, vous décidez de l'implanter sur cette tâche pour éviter de la relancer manuellement.

Les objets dag, task et timedelta sont déjà importés pour vous.

Cette activité fait partie du cours

Introduction à Apache Airflow en Python

Voir le cours

Instructions de l’exercice

  • Configurez la tâche extract_data pour qu'elle effectue 3 nouvelles tentatives avant d'échouer.
  • Ajoutez un délai de 10 minutes entre les tentatives pour la tâche extract_data.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

@dag(schedule="@daily", start_date=datetime(2026, 5, 1))
def etl_pipeline():

  # Set retries and retry delay on extract_data
  @task(____=3, ____=____(minutes=10))
  def extract_data():
    print("Extracting data from source...")
  
  @task()
  def process_source_data():
    print("Now processing data...")

  extract_data() >> process_source_data()
  
etl_pipeline()
Modifier et exécuter le code