새벽을 밝히는 붉은 달

[Airflow] on_failure_callback에서 Xcom 사용하기 본문

Data Engineering

[Airflow] on_failure_callback에서 Xcom 사용하기

자윰 2023. 2. 5. 01:24

글에 앞서, 나는 airflow 1.10.7 버전을 사용하고 있음을 알린다.

 

airflow에서는 특정 상황을 만족할 시, callback 함수를 실행할 수 있도록 제공한다. 만약 더 자세한 정보를 읽고 싶다면 공식 문서에서 확인해볼 수 있다.

 

총 4가지의 callback 함수가 있는데, 내가 사용한 것은 on_failure_callback이다.

 

DAG의 특정 task가 실패할 경우, on_failure_callback을 부르는데, 이때 Xcom value를 사용하여 처리에 활용을 하려고 했다. 그런데, Xcom value를 불러오면 None만 return하는 문제가 있었다.

 

Airflow 2점 대에서 수정이 된 사항인지는 모르겠지만, 구글링을 해보니 on_failure_callback에서는 Xcom value를 얻기 위해서는 ti key가 아닌 task_instance key를 사용해주어야 한다고 한다.

 

나와 비슷한 에러를 겪는 사람이 있다면 도움이 되었으면 좋겠다 !

 

출처

https://www.mikulskibartosz.name/xcom-value-in-airflow-on-failure-callback/

 

Get an XCom value in the Airflow on_failure_callback function

How to get the task instance in the on_failure_callback to get access to XCom

www.mikulskibartosz.name

 

Comments