Community

airflow xcom_pull() 이 None 을 리턴합니다 (오류)

api 를 만들고 Airflow 를 사용해서 ETL 파이프라인을 만드는 도중에 생긴 문제인데요, simplehttpOperator 로 api 에서 결과를 가져왔고 (성공), 결과값을 transform 하려고 simplehttpOperator 를 xcom_pull 하는 코드를 짰습니다. (코드는 아래와 같습니다.) def _processing_api(ti): if not len(assets): raise ValueError('empty') assets = ti.xcom_pull(task_ids = 'extract_riot_api') 결과는 ValueError 를 리턴했습니다. 이유를 찾으려고 riot api 에서 테스트를 시작했고 riot api 웹에서 얻어지는 리턴값을 airflow UI 의 simplehttpOperator 의 xcom 에서 key - return_value , value - [{}, {}, ...] json 형식의 값을 확인할 수 있었는데, 역시 xcom_pull 을 한 결과가 ValueError 였습니다. extract_data 는 api 에서 json data 를 가져오는 코드이고 _processing_api 함수는 pythonoperator 에서 쓰려고 만든 코드입니다. stackoverflow, airflow docs 등을 3~4 일 정도 본 것 같은데, 해결하지 못했네요.. 비슷한 경험을 해결하셨던 분 계신가요 ..? 어디 물어볼 곳도 없어서.. 여기에 마지막으로 올려봐요. 아시는 분 도움주시면 감사하겠습니다

Loading...

알림

알림이 없습니다