Airflow Dag从未按计划在Google Composer上运行

时间:2019-09-02 06:18:52

标签: google-cloud-platform airflow

以下是我的默认参数,以及开始日期和计划间隔以及后跟的dag定义。如果手动触发,一切正常。但是我的Dag脚本都没有按照计划的时间运行。

    default_args = {
    'owner': 'airflow',
    'start_date': datetime(2019,8,31),
    'email_on_failure':True,
    'retries':1,
    'retry_delay': timedelta(minutes=1),
    'depends_on_past':False,
    'email':['sid-test@gmail.com'],
    'schedule_interval':'0 */2 * * *' # Every 2 Hours
}

    dag = DAG('mktg_cost_dag',default_args=default_args,catchup=False)

2 个答案:

答案 0 :(得分:0)

尝试从默认参数中提取计划间隔。看起来在默认参数中使用它时,Airflow无法正确检测到它:

 default_args = {
'owner': 'airflow',
'start_date': datetime(2019,8,31),
'email_on_failure':True,
'retries':1,
'retry_delay': timedelta(minutes=1),
'depends_on_past':False,
'email':['sid-test@gmail.com']
}

dag = DAG('mktg_cost_dag',default_args=default_args, schedule_interval='0 */2 * * *', catchup=False)

答案 1 :(得分:0)

default_args是DAG属性,因此应将其从DAG()中删除,并将其设置在default_args = { 'owner': 'airflow', 'start_date': datetime(2019,8,31), 'email_on_failure':True, 'retries':1, 'retry_delay': timedelta(minutes=1), 'depends_on_past':False, 'email':['sid-test@gmail.com'], } dag = DAG('mktg_cost_dag',default_args=default_args,catchup=False, schedule_interval='0 */2 * * *') 中。

SparkSession spark = SparkSession
        .builder()
        .appName("DatabaseMigrationUtility")
        //.enableHiveSupport()
        .getOrCreate();