Menambahkan retry
Anda melihat satu Dag tertentu sering gagal pada task yang mengekstrak data dari suatu sumber. Yang menjengkelkan, menjalankan task beberapa menit kemudian tampaknya menyelesaikan masalah. Setelah mempelajari fungsionalitas retry pada Airflow Dag, Anda memutuskan untuk menerapkan retry pada task ini agar tidak perlu memulainya ulang secara manual.
dag, task, dan timedelta sudah diimpor untuk Anda.
Latihan ini adalah bagian dari kursus
Pengantar Apache Airflow dengan Python
Petunjuk latihan
- Atur task
extract_dataagar mencoba ulang 3 kali sebelum dianggap gagal. - Tambahkan jeda 10 menit antar percobaan ulang pada task
extract_data.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
@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()