IniziaInizia gratis

Aggiungere i retry

Hai notato che un particolare Dag fallisce spesso in un task che estrae dati da una certa sorgente. Frustrante, perché eseguire il task alcuni minuti dopo sembra risolvere il problema. Dopo aver imparato la funzionalità di retry nei Dag di Airflow, decidi di implementare i retry su questo task per evitare di riavviarlo manualmente.

dag, task e timedelta sono già importati per te.

Questo esercizio fa parte del corso

Introduzione ad Apache Airflow in Python

Visualizza il corso

Istruzioni dell'esercizio

  • Imposta il task extract_data per riprovare 3 volte prima di fallire.
  • Aggiungi un'attesa di 10 minuti tra i tentativi di retry per il task extract_data.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

@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()
Modifica ed esegui il codice