我想尝试使用 Airflow 而不是 Cron。但是 schedule_interval 并没有像我预期的那样工作。
我写了如下的python代码。
据我了解,Airflow 应该在“2016/03/30 8:15:00”上运行,但当时它没有工作。
如果我像这样更改它“'schedule_interval': timedelta(minutes = 5)”,我认为它可以正常工作。
“notice_slack.sh”只是将 slack api 调用到我的频道。
# -*- coding: utf-8 -*-
from __future__ import absolute_import, unicode_literals
import os
from airflow.operators import BashOperator
from airflow.models import DAG
from datetime import datetime, timedelta
args = {
'owner': 'airflow',
'depends_on_past': False,
'start_date': datetime(2016, 3, 29, 8, 15),
}
dag = DAG(
dag_id='notice_slack',
default_args=args,
schedule_interval="@daily",
dagrun_timeout=timedelta(minutes=1))
# cmd file name
CMD = '/tmp/notice_slack.sh'
run_this = BashOperator(
task_id='run_transport', bash_command=CMD, dag=dag)
我想每天在特定时间运行我的一些脚本,就像这个 cron 设置一样。
15 08 * * * bash /tmp/notice_slack.sh
我已阅读文档Scheduling & Triggers,我知道它与 cron 有点不同。
所以我尝试安排在“start_date”和“schedule_interval”设置。
有谁知道我该怎么办?
气流版本
信息 - 使用执行器 LocalExecutor
v1.7.0
amazon-linux-ami/2015.09-release-notes