재시도 추가하기
특정 DAG에서 데이터를 추출하는 태스크가 자주 실패한다는 것을 발견했습니다. 몇 분 후에 태스크를 다시 실행하면 문제가 해결되는 경우가 많아 매우 번거롭습니다. Airflow DAG의 재시도 기능을 학습한 후, 태스크를 수동으로 재시작하지 않아도 되도록 재시도 기능을 적용하기로 했습니다.
dag, task, timedelta는 이미 가져온 상태입니다.
이 연습은 강의의 일부입니다
Python으로 배우는 Apache Airflow 입문
연습 안내
extract_data태스크가 실패하기 전에 3번 재시도하도록 설정하세요.extract_data태스크의 재시도 사이에 10분의 지연 시간을 추가하세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
@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()