airflow.providers.pagerduty.hooks.pagerduty_events

用于从 PagerDuty 发送或接收数据以及创建 PagerDuty 事件的钩子。

模块内容

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 令牌和 PagerDuty 连接,其中 Events API 令牌作为密码/Pagerduty API 令牌。如果同时提供,则使用令牌。

(即集成密钥)作为密码/Pagerduty API 令牌。如果两者都提供,将使用令牌。

参数
  • integration_key (str | None) – PagerDuty Events API 令牌

  • pagerduty_events_conn_id (str | None) – 连接,在 Pagerduty API 令牌字段中具有 PagerDuty 集成密钥

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]

返回自定义字段行为。

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。如果未指定,则默认为触发。

  • 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]

这个条目是否有帮助?