airflow.providers.slack.transfers.sql_to_slack

SqlToSlackApiFileOperator

在给定的 SQL 连接中执行 SQL 语句并将结果作为文件发送到 Slack API。

模块内容

class airflow.providers.slack.transfers.sql_to_slack.SqlToSlackApiFileOperator(*, sql, sql_conn_id, sql_hook_params=None, parameters=None, slack_conn_id=SlackHook.default_conn_name, slack_filename, slack_channels=None, slack_initial_comment=None, slack_title=None, slack_base_url=None, slack_method_version='v2', df_kwargs=None, action_on_empty_df='send', **kwargs)[source]

基类: airflow.providers.slack.transfers.base_sql_to_slack.BaseSqlToSlackOperator

在给定的 SQL 连接中执行 SQL 语句并将结果作为文件发送到 Slack API。

另请参阅

有关如何使用此 operator 的更多信息,请参阅指南:SqlToSlackApiFileOperator

参数:
  • sql (str) – 要执行的 SQL 查询

  • sql_conn_id (str) – 对特定 DB-API 连接的引用。

  • slack_conn_id (str) – Slack API 连接

  • slack_filename (str) – 在 slack 中显示的文件名。应包含 SUPPORTED_FILE_FORMATS 中引用的受支持的扩展名。也可以在扩展名中设置压缩:filename.csv.gzipfilename.json.zip 等。

  • sql_hook_params (dict | None) – 要传递给底层 hook 的额外配置参数。应匹配所需的 hook 构造函数参数。

  • parameters (list | tuple | collections.abc.Mapping[str, Any] | None) – 要传递给 SQL 查询的参数。

  • slack_channels (str | collections.abc.Sequence[str] | None) – 文件将要共享的频道名称或 ID 的逗号分隔列表。如果省略此参数,文件将发送到工作区。

  • slack_initial_comment (str | None) – 在指定的 slack_channels 中介绍文件的消息文本。

  • slack_title (str | None) – 文件标题。

  • slack_base_url (str | None) – 表示 Slack API 基础 URL 的字符串。可选

  • slack_method_version (typing_extensions.Literal[v1, v2]) – 要使用的 Slack SDK Client 方法的版本,可以是“v1”或“v2”。

  • df_kwargs (dict | None) – 转发到 pandas.DataFrame.to_{format}() 方法的关键字参数。

  • action_on_empty_df (typing_extensions.Literal[send, skip, error]) –

    指定如何处理空的 SQL 输出数据框。可能的值

    • send: (默认) 发送带有空文件的 slack 消息。

    • skip: 跳过发送 slack 消息。任务状态设置为“skipped”。

    • error: 引发错误以使任务失败。任务状态设置为“failed”。

template_fields: collections.abc.Sequence[str] = ('sql', 'slack_channels', 'slack_filename', 'slack_initial_comment', 'slack_title')[source]
template_ext: collections.abc.Sequence[str] = ('.sql', '.jinja', '.j2')[source]
template_fields_renderers[source]
SUPPORTED_FILE_FORMATS: collections.abc.Sequence[str] = ('csv', 'json', 'html')[source]
slack_conn_id = 'slack_api_default'[source]
slack_filename[source]
slack_channels = None[source]
slack_initial_comment = None[source]
slack_title = None[source]
slack_base_url = None[source]
slack_method_version = 'v2'[source]
df_kwargs[source]
action_on_empty_df = 'send'[source]
property slack_hook[source]

Slack API Hook。

execute(context)[source]

创建 operator 时派生。

Context 是与渲染 jinja 模板时使用的字典相同。

有关更多 context,请参阅 get_template_context。

此条目有帮助吗?