Кастомный датчик в Apache Airflow - PullRequest
0 голосов
/ 19 июня 2019

Версия воздушного потока: 1.10.0

Следуя этому руководству Я создал папку sensors и my_sensor.py, я добавил импорт и использование

[...]
from sensors.my_sensor import MySensor

[...]
wait_something = MySensor(task_id='taskA')
[...]

К сожалению, Airflow жалуется при попытке перезагрузить DAG следующим образом:

Сломанный DAG: [/usr/local/airflow/dags/my_dag.py] Нет модуля с именем «sensor»

Я также перезапустил сервер, чтобы быть уверенным.

Следующее предложение (из вышеупомянутого руководства) заставляет меня задуматься, не удалось ли мне обновить эту переменную PATH, но яя нигде не могу его найти, и я не имею ни малейшего понятия:

Когда Airflow работает, он добавляет dags /, plugins / и config / в PATH

PS: Iне хотите использовать Plugins, смысл этого руководства - предоставить альтернативный способ загрузки пользовательских операторов / датчиков / крючков без с использованием Plugins

1 Ответ

0 голосов
/ 19 июня 2019

Попробуйте что-то вроде этого:

from airflow.sensors.sftp_sensor import SFTPSensor

where sftp_sensor is my name and sensor is SFTPSensor. 

class SFTPSensorPlugin(AirflowPlugin):
    name = "sftp_sensor"
    sensors = [SFTPSensor]
...