airflow調度系統學習筆記一一DAG觸發,重啓

一、aiflow觸發DAG有兩種方式:

1、內部觸發:

也就是通過設置參數 schedule_interval 來觸發DAG,時間一到,DAG就會執行

2、外部傳參觸發:

import requests
import json

data={
    # "ipaddr":"10.0.6.165",
    # "user":"postgres",
    "lucyIp":"10.21.154.76",
    "execTime":"2h"
}

url="http://10.0.0.53:8082/api/experimental/dags/dag_id/dag_runs"
data_info={}
data_info["conf"]=data
data_info['execution_date'] = '2019/09/26 03:10:35'   #指定DAG執行時間


headers = {'Content-type': 'application/json'}
r = requests.post(url, data=json.dumps(data_info), auth=(user, password),headers=headers)
print(r.text)
print(data)

上面是通過web傳參觸發 ,設置的execution_date時間會指定DAG執行時間

參考鏈接:https://blog.csdn.net/YF_Li123/article/details/84075588 

3、注意:兩種DAG觸發方式不能共存

通過內部觸發DAG,就不能用外部傳參觸發DAG ;用外部傳參觸發DAG就不能用內部觸發DAG

二、服務重啓 ,webserver重啓一樣

cat airflow-scheduler.pid   #查看pid
ps -ef | grep airflow       #kill掉相關pid
rm airflow-scheduler.pid    #先刪除Pid文件
airflow scheduler -D        #後臺重啓               
airflow scheduler           #前臺重啓

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章