我最近将airflow版本从airflow 1.8升级到apache-airflow 1.9,升级成功,我使用Celery Executor扩展了环境,一切似乎运行正常,但dag和任务开始日期、执行日期等都显示在UTC时区,计划的dag在UTC运行,在升级之前他们使用的是本地时区,即pdt。
关于如何将pdt设置为airflow中的默认时区,有什么建议吗?
我尝试在airflow.cfg中使用default_timezone连接到default_timezone = pdt,但即使在重启所有服务之后,它也会在UTC中调度dags和任务。期待您的帮助,将默认时区修复为pdt。
发布于 2018-01-11 14:17:35
Airflow在1.9.0版本之前的本地时区运行是意外的,只是使用datetime.now()和datetime.today()而不是datetime.utcnow()的Airflow代码的副作用。这在AIRFLOW-289下的1.9.0中得到了纠正,正如你所观察到的那样,使事情独立于时区(总是协调世界时)。
官方对Airflow的时区感知支持被合并到主分支中。这项工作是作为AIRFLOW-288的一部分完成的,在最新的稳定版本(1.9.0)中不是可用的。您可能会在下一个主要版本中看到它。
一旦你有了改变,Matt的答案应该会得到你想要的东西。
发布于 2018-01-11 03:20:34
根据these docs的说法,default_timezone接受IANA TZ数据库时区标识符。它们在这里列出。
如果你想要美国太平洋时间,你应该设置default_timezone=America/Los_Angeles。
https://stackoverflow.com/questions/48194000
复制相似问题