气流尝试编号问题

问题描述 投票:0回答:3

我在测试过程中遇到错误,有人对此有任何线索吗?

代码:

relative_path = self._render_filename(ti, ti.try_number)

错误:

AttributeError: 'str' object has no attribute 'try_number 
airflow airflow-scheduler airflow-2.x
3个回答
1
投票

Airflow 中出现此错误通常是因为 BaseHook 类无法再接收

str
参数[1],只能接收
ti
(TaskInstance)[2]。您可以简单地创建 BaseHook,而无需提供任何参数,例如:

my_hook = BaseHook()

[1] https://airflow.apache.org/docs/apache-airflow/stable/_modules/airflow/hooks/base.html#BaseHook

[2] https://airflow.apache.org/docs/apache-airflow/1.10.6/_modules/airflow/utils/log/logging_mixin.html


0
投票

我面临着同样的问题,但就我而言,我是用字符串初始化 BaseHook

super().__init__("mystring")

删除这个“mystring”并用 None 初始化基本钩子对我有用。


0
投票

此问题也可能出现在您的日志记录中。我们使用

S3TaskHandler
中的
airflow.providers.amazon.aws.log.s3_task_handler.S3TaskHandler
作为处理器处理程序类,但这是不允许的。我们将其更改为
airflow.utils.log.file_processor_handler.FileProcessorHandler
,删除了
s3_log_folder
额外参数,这解决了错误。

© www.soinside.com 2019 - 2024. All rights reserved.