我试图在run_id中读取SnowflakeOperator中的DAG,以设置会话参数query_tag。但是,会话参数似乎没有模板化。
snowflake_operator = SnowflakeOperator(
task_id='snowflake_task',
snowflake_conn_id='snowflake_conn',
sql='resources/some.sql',
warehouse='my_warehouse',
database='my_database',
role='my_role',
session_parameters={
'QUERY_TAG': 'dagrun_{{run_id}}'
}
)我如何引用run_id并在这里使用它作为输入?
发布于 2022-08-10 08:36:35
你需要制作非模板字段模板。
class MySnowflakeOperator(SnowflakeOperator):
template_fields = (
"session_parameters",
) + SnowflakeOperator.template_fields然后您可以将其用作:
snowflake_operator = MySnowflakeOperator(
task_id='snowflake_task',
snowflake_conn_id='snowflake_conn',
sql='resources/some.sql',
warehouse='my_warehouse',
database='my_database',
role='my_role',
session_parameters={
'QUERY_TAG': 'dagrun_{{run_id}}'
}
)https://stackoverflow.com/questions/73301749
复制相似问题