Apache Airflow 1.9 默认时区设置为 non UTC



我最近将气流版本从气流 1.8 升级到 apache-airflow 1.9,升级成功,我使用 Celery Executor 扩展了环境,一切似乎都工作正常,但 dag 和任务开始日期、执行日期等都出现在 UTC 时区中,计划的 dag 以 UTC 格式运行,在升级之前,它们曾经在本地时区运行,即 pdt。

关于如何将 pdt 作为气流中的默认时区的任何想法?

我尝试在airflow.cfg中使用default_timezonedefault_timezone = pdt但即使在重新启动所有服务后,它也会以 UTC 格式调度 dags 和任务。期待您在将默认时区修复为 pdt 方面的帮助。

在 1.9.0 版之前的本地时区运行的 Airflow 是无意的,只是使用 datetime.now()datetime.today() 而不是 datetime.utcnow() 的 Airflow 代码的副作用。这在 1.9.0 的 AIRFLOW-289 下得到了纠正,正如您所观察到的那样,使事情与时区无关(始终是 UTC(。

对 Airflow 的官方支持是时区感知的合并到主分支中。这项工作是作为 AIRFLOW-288 的一部分完成的,在最新的稳定版本 (1.9.0( 中不可用。您可能会在下一个主要版本中期待它。

一旦你有了这种改变,Matt的答案应该会让你得到你想要的东西。

根据这些文档,default_timezone接受 IANA TZ 数据库时区标识符。 它们在此处列出。

如果需要美国太平洋时间,则应设置 default_timezone=America/Los_Angeles

相关内容

  • 没有找到相关文章

最新更新