홍카나의 공부방

[Airflow] task 실패시 분석하기 본문

Data Engineering/Airflow

[Airflow] task 실패시 분석하기

홍문관카페나무 2023. 6. 6. 13:33

!?

 

Airflow 실습을 하다가 task 하나가 실패해서 원인을 찾고자 했다.

 

 

1. DAG의 Python 코드를 다시 살펴본다.

-> 눈으로 봤을땐 딱히 잘못된 부분이 없어보여서 넘어갔다.

 

 

2. airflow CLI를 통해 여러 test를 해본다.

airflow dags test {DAG이름} {EXECUTATION_DATE}
airflow tasks test {DAG이름} {task이름} {EXECUTAION_DATE}

위 코드로 특정 DAG나 task를 test할 수 있는데, 이 테스트로 딱히 찾지 못했다.

 

 

3. 웹 UI 에서 실패한 log를 살펴본다.

DAG의 실패한 task를 클릭

 

이런 식으로 task 정보를 살펴보면 Logs 탭에 로그 기록이 남는다.

 

문제 부분 확인

 

나의 경우 SQL INSERT 문에서 작은 따옴표를 작성할 때,

INPUT 값에 작은 따옴표가 있어서 구분이 잘못되는 문제였다.

찾아보니 replace로 작은 따옴표를 대체해주거나, sql execute시 (sql, values)로 분리해주면 되는데

나는 후자의 방법을 선택해서 성공했다.

 

clear~

반응형