Size: a a a

2020 July 22

С

Сюткин in Airflow
Вообще на сайте airflow в документации все примеры разобраны
источник

С

Сюткин in Airflow
Ну я не токсичный, правда,простите
источник

EN

Eugene Nikolaev in Airflow
старый добрый RTFM не токсичен, если в мане есть оное
источник

DS

Dimitriy Scherbenko in Airflow
Alexander Millin
python_callable - это функция, а не файл
ага, спасибо, он у меня уже ругнулся
источник

A

Andrey in Airflow
Dimitriy Scherbenko
Всем привет! Помогите, пожалуйста, разобраться в проблеме. Есть даг, который обращается к .py файлу при помощи BashOperator.

Сам .py файл протестирован и работает нормально.

При тестировании дага при помощи  python даг.py отрабатывает, но ничего не происходит.
при таком тестировании он у тебя проверит синтаксис, запускай через airflow в gui, либо из консольки, в bash_command должен быть в начале интерпритатор
источник

A

Andrey in Airflow
к примеру bash_command='python3 file.py'
источник

A

Andrey in Airflow
и очень важное - смотри логи и научись отличать логи airflow от логов джобы
источник

DS

Dimitriy Scherbenko in Airflow
спасибо!
источник

A

Andrey in Airflow
Dimitriy Scherbenko
ага, спасибо, он у меня уже ругнулся
да и если через PythonOperator, то функция должна быть callcable, то есть не some_function() а some_function, аргументы передаются через op_args и op_kwargs
источник

DS

Dimitriy Scherbenko in Airflow
Andrey
да и если через PythonOperator, то функция должна быть callcable, то есть не some_function() а some_function, аргументы передаются через op_args и op_kwargs
указал в bash_command python => сделал так airflow trigger_dag tbl_rides_insert и получил ошибку Dag id tbl_rides_insert not found in DagModel
источник

A

Andrey in Airflow
Dimitriy Scherbenko
указал в bash_command python => сделал так airflow trigger_dag tbl_rides_insert и получил ошибку Dag id tbl_rides_insert not found in DagModel
значит твоего дага нет в airflow, нужно подкинуть его в директорию где располагаются даги
источник

DS

Dimitriy Scherbenko in Airflow
Andrey
значит твоего дага нет в airflow, нужно подкинуть его в директорию где располагаются даги
источник

DS

Dimitriy Scherbenko in Airflow
вот он вроде есть в шедулере
источник

A

Andrey in Airflow
а, значит у тебя не верно настроен AIRFLOW_HOME, поэтому не работает из консольки
источник

ДШ

Дмитрий Шепелев... in Airflow
Подскажите пожалуйста, как airflow инициализирует даги? Запускаю через контейнер, структура папок следующая
dags/
  app1/
      task_dag1.py
      task_dag2.py
   app2/
       task_dag3.py

Но щас при запуске airlow веб интерфейс не показывает даг из task_dag3. В чём может быть проблема? Название дага не оверрайдится (+пробовал размещать task_dag3 в папке app1, но тоже не успешно
источник

A

Andrey in Airflow
Дмитрий Шепелев
Подскажите пожалуйста, как airflow инициализирует даги? Запускаю через контейнер, структура папок следующая
dags/
  app1/
      task_dag1.py
      task_dag2.py
   app2/
       task_dag3.py

Но щас при запуске airlow веб интерфейс не показывает даг из task_dag3. В чём может быть проблема? Название дага не оверрайдится (+пробовал размещать task_dag3 в папке app1, но тоже не успешно
возможно скан дагов очень долгий, проверь через консольку airflow list_dags, если там появляется, то все ок, если не появляется, то в логах должна быть ошибка почему так происходит
источник

ДШ

Дмитрий Шепелев... in Airflow
Andrey
возможно скан дагов очень долгий, проверь через консольку airflow list_dags, если там появляется, то все ок, если не появляется, то в логах должна быть ошибка почему так происходит
Да, list_dags пробовал, там не отображается этот даг. Окей, буду разбираться по логам, спасибо
источник

DB

Denis Bakhtin in Airflow
Дмитрий Шепелев
Да, list_dags пробовал, там не отображается этот даг. Окей, буду разбираться по логам, спасибо
Если у вас в файле нет хотя бы одного импорта из библиотеки airflow (такое бывает, например, если используется кастомный класс-наследник класса DAG, или функции, вызывающие инициализацию DAG неявно), то дагбаг не распознает даг
источник

DS

Dimitriy Scherbenko in Airflow
Andrey
а, значит у тебя не верно настроен AIRFLOW_HOME, поэтому не работает из консольки
Вы правы. Не знаю, почему, но для этой процедуры указан неверный путь.
источник

DS

Dimitriy Scherbenko in Airflow
Всем спасибо за помощь. Даг заработал. Теперь осталось разобраться с досутпами (судя по логам) пользователя airflow к директории, где лежит скрипт.
источник