как запустить экземпляр задачи воздушного потока в интерактивном режиме с ведением журнала - PullRequest
0 голосов
/ 23 апреля 2019

У меня есть оператор с именем MsSqlToS3Operator, который делает то, что вы думаете.

Он регистрирует некоторые вещи, используя self.log.info.

Мне нравится тестировать вещи в реплее в интерактивном режиме Я понял, что могу создать экземпляр задачи и запустить ее так:

# mssql_to_s3 is a task defined, using this operator, above
ti = TaskInstance(mssql_to_s3, execution_date=pendulum.datetime(2019, 4, 23, 3, 5, 6, 3000))
ti.render_templates()
print(ti.task.sql)
ti.task.execute(None)

Работает нормально. Однако при использовании self.log.info в операторе запись в журнал не выводится на стандартный вывод.

Кто-нибудь знает, что я могу сделать, чтобы распечатать журнал?

Единственный вывод, который я вижу, это строка [2019-04-23 12:36:58,980] {base_hook.py:83} INFO - Using connection to: id: mssql_default...

Мой оператор подклассов BaseOperator и запускает его метод init:

class MsSqlToS3Operator(BaseOperator):
    template_fields = ('sql', 'key')

    @apply_defaults
    def __init__(self, sql, bucket, key, mssql_conn_id='mssql_default', s3_conn_id='aws_default', s3_replace=True,
                 **kwargs):
        self.sql = sql
        self.bucket = bucket
        self.key = key
        self.mssql_conn_id = mssql_conn_id
        self.s3_conn_id = s3_conn_id
        self.s3_replace = s3_replace
        super(MsSqlToS3Operator, self).__init__(**kwargs)
...