airflow.providers.google.cloud.sensors.cloud_composer

此模块包含一个 Cloud Composer 传感器。

CloudComposerDAGRunSensor

检查 DAG 运行是否已完成。

模块内容

class airflow.providers.google.cloud.sensors.cloud_composer.CloudComposerDAGRunSensor(*, project_id, region, environment_id, composer_dag_id, allowed_states=None, execution_range=None, gcp_conn_id='google_cloud_default', impersonation_chain=None, deferrable=conf.getboolean('operators', 'default_deferrable', fallback=False), poll_interval=10, **kwargs)[source]

基类: airflow.sensors.base.BaseSensorOperator

检查 DAG 运行是否已完成。

参数:
  • project_id (str) – 必需。服务所属的 Google Cloud 项目 ID。

  • region (str) – 必需。服务所属的 Google Cloud 区域 ID。

  • environment_id (str) – Composer 环境的名称。

  • composer_dag_id (str) – 可执行 DAG 的 ID。

  • allowed_states (collections.abc.Iterable[str] | None) – 允许的状态的可迭代对象,默认为 ['success']

  • execution_range (datetime.timedelta | list[datetime.datetime] | None) – 执行 DAG 的时间范围。传感器仅检查在此时间范围内启动的 DAG 的状态。对于昨天,使用 [正数!] datetime.timedelta(days=1)。对于未来,使用 [负数!] datetime.timedelta(days=-1)。对于特定时间,使用日期时间列表 [datetime(2024,3,22,11,0,0), datetime(2024,3,22,12,0,0)]。或 [datetime(2024,3,22,0,0,0)],在这种情况下,传感器将检查从过去的特定时间到当前执行时间的 DAG 状态。默认值为 datetime.timedelta(days=1)。

  • gcp_conn_id (str) – 获取连接信息时使用的连接 ID。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选的服务帐号,用于使用短期凭据进行模拟,或获取列表中最后一个帐号的 access_token 所需的帐号链,最后一个帐号将在请求中被模拟。如果设置为字符串,则该帐号必须授予原始帐号 Service Account Token Creator IAM 角色。如果设置为序列,则列表中的身份必须授予直接前一个身份 Service Account Token Creator IAM 角色,列表中的第一个帐号将此角色授予原始帐号(模板化)。

  • poll_interval (int) – 可选:控制可延迟运行结果的轮询速率。

  • deferrable (bool) – 以可延迟模式运行传感器。

template_fields = ('project_id', 'region', 'environment_id', 'composer_dag_id', 'impersonation_chain')[source]
project_id[source]
region[source]
environment_id[source]
composer_dag_id[source]
allowed_states[source]
execution_range = None[source]
gcp_conn_id = 'google_cloud_default'[source]
impersonation_chain = None[source]
deferrable = True[source]
poll_interval = 10[source]
poke(context)[source]

在派生此类时覆盖。

execute(context)[source]

创建操作符时派生。

执行任务的主要方法。Context 与渲染 jinja 模板时使用的字典相同。

请参阅 get_template_context 以获取更多上下文。

execute_complete(context, event)[source]
property hook: airflow.providers.google.cloud.hooks.cloud_composer.CloudComposerHook[source]

此条目是否有帮助?