airflow.providers.standard.triggers.temporal

模組內容

類別

DateTimeTrigger

基於日期時間的觸發器。

TimeDeltaTrigger

基於延遲建立 DateTimeTriggers。

class airflow.providers.standard.triggers.temporal.DateTimeTrigger(moment, *, end_from_trigger=False)[原始碼]

基底: airflow.triggers.base.BaseTrigger

基於日期時間的觸發器。

一個觸發器,在給定的日期時間精確觸發一次,容許幾秒的誤差。

提供的日期時間必須是 UTC 時間。

參數
  • moment (datetime.datetime) – 產生事件的時間

  • end_from_trigger (bool) – 觸發器應在達到時間條件後標記任務成功,還是應在達到時間條件後恢復任務。

serialize()[原始碼]

傳回重建此觸發器所需的資訊。

傳回

(類別路徑,重新實例化所需的關鍵字引數)的元組。

回傳類型

tuple[str, dict[str, Any]]

async run()[原始碼]

迴圈直到達到相關時間。

我們確實有一個兩階段的延遲來節省一些週期,但無論如何睡眠都很便宜,所以它非常寬鬆。我們也不只是睡眠「直到時間的秒數」,以防系統時鐘意外更改,或處理 DST 更改不佳。

class airflow.providers.standard.triggers.temporal.TimeDeltaTrigger(delta, *, end_from_trigger=False)[原始碼]

基底: DateTimeTrigger

基於延遲建立 DateTimeTriggers。

子類別,用於基於時間延遲而不是精確時刻建立 DateTimeTriggers。

雖然這裏是它自己獨特的類別,但它將序列化為 DateTimeTrigger 類別,因為它們在操作上是相同的。

參數
  • delta (datetime.timedelta) – 等待多久

  • end_from_trigger (bool) – 觸發器應在達到時間條件後標記任務成功,還是應在達到時間條件後恢復任務。

此條目是否有幫助?