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 merupakan bagian dari kursus
Pengantar Apache Airflow dengan Python
Instruksi 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 langsung praktik
Cobalah latihan ini dengan melengkapi kode contoh ini.
@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()