Airflow 气流1.10.1-更改时区
我通过docker在GCP上的VM内运行气流(1.10.1)。已经更改了虚拟机的本地时间,配置(afflow.cfg)也设置了我所在国家(美国/圣保罗)的默认_区域,但它仍然在主屏幕上以UTC时间继续,因此处理也以UTC时间完成。您还可以做些什么吗?从: 默认情况下启用对时区的支持。Airflow在内部和数据库中以UTC格式存储日期时间信息。它允许您使用时区相关的时间表运行DAG。目前,气流不会在用户界面中将其转换为最终用户的时区。在那里,它将始终以UTC显示。此外,运算符中使用的模板也不会转换Airflow 气流1.10.1-更改时区,airflow,airflow-scheduler,Airflow,Airflow Scheduler,我通过docker在GCP上的VM内运行气流(1.10.1)。已经更改了虚拟机的本地时间,配置(afflow.cfg)也设置了我所在国家(美国/圣保罗)的默认_区域,但它仍然在主屏幕上以UTC时间继续,因此处理也以UTC时间完成。您还可以做些什么吗?从: 默认情况下启用对时区的支持。Airflow在内部和数据库中以UTC格式存储日期时间信息。它允许您使用时区相关的时间表运行DAG。目前,气流不会在用户界面中将其转换为最终用户的时区。在那里,它将始终以UTC显示。此外,运算符中使用的模板也不会转换
时区信息是公开的,由DAG的编写者进行相应的处理。作为对给定答案的补充,我能够通过以下代码根据我在DAG内的时区更改执行:
import pendulum
default_args = {
'owner': 'airflow',
'start_date': pendulum.datetime(year=2019, month=7, day=26).astimezone('America/Sao_Paulo'),
'depends_on_past': False,
'email': ['airflow@airflow.com'],
'email_on_failure': False,
'email_on_retry': False,
'depends_on_past': False,
# If a task fails, retry it once after waiting
# at least 5 minutes
'retries': 1,
'retry_delay': timedelta(minutes=5),
'on_failure_callback': slack_msg
}
dag = DAG(
dag_id=nm_dag,
default_args=default_args,
schedule_interval='40 11 * * *',
dagrun_timeout=timedelta(minutes=60)
)
您可以通过在AIRFLOW config文件中的变量“AIRFLOW\uuuuu CORE\uuuuu DEFAULT\u timezone”中设置时区的正确值来更改它,或者在运行时从环境变量中进行更改。如果我的开始日期=天之前(1)怎么办?似乎没有考虑钟摆时区:S