airflow.providers.pagerduty.hooks.pagerduty_events

用於從 PagerDuty 傳送或接收資料以及建立 PagerDuty 事件的 Hook。

PagerdutyEventsHook

這個類可以用於與 Pagerduty Events API 進行互動。

模組內容

class airflow.providers.pagerduty.hooks.pagerduty_events.PagerdutyEventsHook(integration_key=None, pagerduty_events_conn_id=None)[source]

基類: airflow.hooks.base.BaseHook

這個類可以用於與 Pagerduty Events API 進行互動。

它同時接受 Events API token 以及一個包含 Events API token 的 PagerDuty 連線

(即 Integration key)作為密碼/Pagerduty API token。如果兩者都提供,則將使用 token。

引數:
  • integration_key (str | None) – PagerDuty Events API token

  • pagerduty_events_conn_id (str | None) – 連線,其 Pagerduty API token 欄位中包含 PagerDuty integration key

conn_name_attr = 'pagerduty_events_conn_id'[source]
default_conn_name = 'pagerduty_events_default'[source]
conn_type = 'pagerduty_events'[source]
hook_name = 'Pagerduty Events'[source]
classmethod get_ui_field_behaviour()[source]

返回自定義欄位行為。

integration_key = None[source]
send_event(summary, severity, source='airflow', action='trigger', dedup_key=None, custom_details=None, group=None, component=None, class_type=None, images=None, links=None)[source]

為服務整合建立事件。

引數:
  • summary (str) – 事件摘要

  • severity (str) – 事件嚴重性,必須是以下之一:info, warning, error, critical

  • source (str) – 具體的、人類可讀的唯一識別符號,例如遇到問題的系統的主機名。

  • action (str) – 事件動作,必須是以下之一:trigger, acknowledge, resolve。如果未指定,預設為 trigger。

  • dedup_key (str | None) – 一個用於識別給定事件觸發的警報的字串。對於 acknowledge 和 resolve 動作是必需的。

  • custom_details (Any | None) – 事件的自由格式詳情。可以是字典或字串。如果傳入字典,它將在 PagerDuty 中顯示為表格。

  • group (str | None) – 源的叢集或分組。例如,源“prod-datapipe-02”和“prod-datapipe-03”可能都屬於“prod-datapipe”的一部分

  • component (str | None) – 受影響系統中發生故障的部分或元件。

  • class_type (str | None) – 事件的類別/型別。

  • images (list[Any] | None) – 要包含的圖片列表。列表中的每個字典接受以下鍵:src:附加到事件的圖片的來源(URL)。該圖片必須透過 HTTPS 提供。href:[可選] 用於使圖片成為可點選連結的 URL。alt:[可選] 圖片的替代文字。

  • links (list[Any] | None) – 要包含的連結列表。列表中的每個字典接受以下鍵:href:要附加的連結的 URL。text:[可選] 描述連結用途的純文字,可用作連結的文字。

返回值:

PagerDuty Events API v2 響應。

返回型別:

dict

static prepare_event_data(summary, severity, source, custom_details, component, group, class_type, action, dedup_key, images, links, action_key_name='action')[source]

為 send_event / post(‘/v2/enqueue’) 方法準備事件資料。

create_change_event(summary, source='airflow', custom_details=None, timestamp=None, links=None)[source]

為服務整合建立變更事件。

引數:
  • summary (str) – 事件摘要

  • source (str) – 具體的、人類可讀的唯一識別符號,例如遇到問題的系統的主機名。

  • custom_details (Any | None) – 事件的自由格式詳情。可以是字典或字串。如果傳入字典,它將在 PagerDuty 中顯示為表格。

  • timestamp (datetime.datetime | None) – 發出工具檢測或生成事件的時間。

  • links (list[Any] | None) – 要包含的連結列表。列表中的每個字典接受以下鍵:href:要附加的連結的 URL。text:[可選] 描述連結用途的純文字,可用作連結的文字。

返回值:

PagerDuty Change Events API v2 響應。

返回型別:

dict

test_connection()[source]

此條目有幫助嗎?