본문 바로가기
Airflow

[Airflow] 에어플로 DAG seems to be missing. 에러 해결

by 초이MS 2020. 8. 27.

상황

  • 에어플로에서 DAG 작성 후 web ui에서 확인 시 다음과 같은 메시지가 출력된다.
  • 해당 DAG는 아리 사진의 번개표시의 "Code View" 기능을 제외한 다른기능들은 동작하지 않았다.
  • web ui에서 DAG 그림도 나오지 않고, pause를 헤제 할 수도 없었다.

발생 이유

  • 필자는 airflow DAG를 여러 sub module로 관리하였으며 이 sub module을 이용하기 위해 from ${디렉토리}.${파일명} import ${메소드 명} 의 import 구문으로 모듈을 추가하여 이용하였다.
  • 모듈 파일이 dagbag에 캐시되어 코드를 수정하여도 바로 반영되지 않아 DAG가 제대로 생성되지 않았으며, 따라서 web ui에서 DAG가 제대로 동작하지 않았다.

에러를 찾은 방법 및 에러 해결방법

  1. 우선 DAG가 제대로 그려지지 않았기에, DAG를 그려보아야 겠다는 생각을 하였다.
  2. web ui에서는 보이지 않았으므로 airflow cli를 이용하여 DAG를 확인하려 하였다. airflow show_dag ${DAG ID}의 명령을 이용하여 DAG를 그리려는 시도를 하였다.
  3. 이때 에러 메시지가 발생하였으며, 에러 메시지를 통해 "발생이유" 알아낼 수 있었다.
  4. 모듈 파일 명 변경 후 import 구문의 파일명 변경을 통하여 모듈파일을 새로 인식시켰다.

결론

  • DAG가 그려지지 않을 때, 제대로 동작하지 않을 때는 DAG 자체에 문제가 있을 가능성이 있다.
  • airflow show_dag ${DAG ID}와 같은 cli 커맨드를 활용하여 에러 메시지를 확인하고 이를 해결하자.
반응형

댓글