小编Mao*_*eli的帖子

时区感知 DAG 的气流执行日期错误

我们在 Kubernetes (KubernetesExecutor) 上使用 Airflow v2.2.3,我们的环境需要 DAG 预客户,并且每个客户可以位于不同的时区。

每个 DAG 应该在午夜安排在自己的时区,我发现可以使用 Airflow 的时区感知 DAG来实现

因此,为每个 DAG 配置时区感知是有效的start_date,并使每个 DAG 在自己的时区午夜执行:

start_date_utc = (datetime.now() - timedelta(days=2)).replace(
        hour=0, minute=0, second=0, microsecond=0)

timezone = pendulum.timezone(get_customer_timezone(customer))
START_DATE = start_date_utc.replace(tzinfo=timezone)

default_args = {
        "owner": "owner",
        "depends_on_past": False,
        "start_date": START_DATE,
}

dag = DAG(
    dag_id,
    schedule_interval="0 0 * * *",
    default_args=default_args,
    tags=[cusotmer_name]
)

date = '{{ execution_date | ds }}'

operator_args = {
    "customer_date": date,
}
Run Code Online (Sandbox Code Playgroud)

我的问题是jinja 模板和 dag_run execution_date(dag_run.logic_date) 仍然是 …

timezone jinja2 airflow

5
推荐指数
1
解决办法
4280
查看次数

标签 统计

airflow ×1

jinja2 ×1

timezone ×1