Python 是否可以更新/覆盖气流[‘;dag#U run’;]conf?
我们通常使用Python 是否可以更新/覆盖气流[‘;dag#U run’;]conf?,python,airflow,Python,Airflow,我们通常使用trigger\u dagCLI命令启动气流dag。例如: 气流触发器\u dag my\u dag--conf'{“field1”:1,“field2”:2}' 我们使用context['dag_run']在操作符中访问此conf。conf 有时,当DAG在某个任务中中断时,我们希望“更新”配置,并使用此新配置重新启动中断的任务(以及下游依赖项)。例如: 新配置-->{“field1”:3,“field2”:4} 是否可以使用这样的新json字符串“更新”dag_run conf
trigger\u dag
CLI命令启动气流dag。例如:
气流触发器\u dag my\u dag--conf'{“field1”:1,“field2”:2}'
我们使用context['dag_run']在操作符中访问此conf。conf
有时,当DAG在某个任务中中断时,我们希望“更新”配置,并使用此新配置重新启动中断的任务(以及下游依赖项)。例如:
新配置-->{“field1”:3,“field2”:4}
是否可以使用这样的新json字符串“更新”dag_run conf
会有兴趣听取关于这方面的想法、其他解决方案,或者从一开始就可能避免这种情况的方法
使用Apache Airflow v1.10.3
非常感谢。这似乎是气流的一个很好的使用案例。如果需要,您可以轻松查看和修改气流UI本身的配置输入
在通过另一个任务本身重新运行任务/DAG之前,您甚至可以进行创新并自动更新配置(现在存储在变量中)。请参见当从
变量
s读取配置时,我经常实现足够接近的行为(对于连接
s也是如此);当我的任务是为重试而启动时,我更新和变量,并在重试时选择更新的会话。我同意@y2k shubham。将配置存储在变量中,并在必要时进行更新。如果您的配置是JSON格式的,则可以使用模板中的Variable.get(“”,反序列化_JSON=True)['field1']
或var.JSON..field1
检索它们。