如何在Airflow中设置SLA?

ebe*_*tbm 7 airflow apache-airflow airflow-scheduler

我想在传感器操作员中设置SLA.该文件是不是太清楚它的使用.所以我使用S3KeySensor运算符进行了测试,该运算符正在查找不存在的文件.我将sla设置为30秒,我希望在UI中看到30秒后的记录- 在SLA未命中 - 但它没有发生.我究竟做错了什么?

inputsensor = S3KeySensor(
    task_id='check_for_files_in_s3',
    bucket_key='adp/backload/20136585/',
    wildcard_match=True,
    bucket_name='weblogs-raw',
    s3_conn_id='AWS_S3_CENTRAL',
    timeout=120,
    poke_interval=10,
    sla=timedelta(seconds=30),
    dag=dag)

inputsensor.set_downstream(next_step)
Run Code Online (Sandbox Code Playgroud)

Man*_*jan 8

'sla': timedelta(hours=2),
Run Code Online (Sandbox Code Playgroud)

来自 Airflow Git 存储库的示例:airflow/example_dags/tutorial.py#L54


小智 8

根据文档,SLA 表示计划周期结束后的时间增量。因此,如果您的计划间隔为'@daily'sla=timedelta(hours=1)那么 Airflow 将在凌晨 1:00(即计划周期结束多一小时时)检查 SLA 缺失情况。