airflow.providers.amazon.aws.hooks.lambda_function¶
此模块包含 AWS Lambda hook。
类¶
与 AWS Lambda 交互。 |
模块内容¶
- class airflow.providers.amazon.aws.hooks.lambda_function.LambdaHook(*args, **kwargs)[源]¶
基础:
airflow.providers.amazon.aws.hooks.base_aws.AwsBaseHook
与 AWS Lambda 交互。
提供
boto3.client("lambda")
的精简封装。可以指定其他参数(例如
aws_conn_id
),并将这些参数传递给底层的 AwsBaseHook。- invoke_lambda(*, function_name, invocation_type=None, log_type=None, client_context=None, payload=None, qualifier=None)[源]¶
调用 Lambda 函数。
- 参数:
function_name (str) – AWS Lambda 函数名称
invocation_type (str | None) – AWS Lambda 调用类型 (RequestResponse, Event 等)
log_type (str | None) – 设置为 Tail 以在响应中包含执行日志。仅适用于同步调用的函数。
client_context (str | None) – 最多 3,583 字节的 base64 编码数据,包含有关调用客户端的信息,用于通过 context 对象传递给函数。
qualifier (str | None) – AWS Lambda 函数版本或别名。
- create_lambda(*, function_name, runtime=None, role, handler=None, code, description=None, timeout=None, memory_size=None, publish=None, vpc_config=None, package_type=None, dead_letter_config=None, environment=None, kms_key_arn=None, tracing_config=None, tags=None, layers=None, file_system_configs=None, image_config=None, code_signing_config_arn=None, architectures=None, ephemeral_storage=None, snap_start=None, logging_config=None)[源]¶
创建一个 Lambda 函数。
- 参数:
function_name (str) – AWS Lambda 函数名称
runtime (str | None) – 函数运行时的标识符。如果部署包是 .zip 文件归档,则 runtime 是必需的。
role (str) – 函数执行角色的 Amazon Resource Name (ARN)。
handler (str | None) – Lambda 调用以运行您的函数的方法名称。如果部署包是 .zip 文件归档,则 handler 是必需的。
code (dict) – 函数代码。
description (str | None) – 函数描述。
timeout (int | None) – Lambda 在停止函数运行前允许其运行的时间(秒)。
memory_size (int | None) – 运行时可用于函数的内存量。增加函数内存也会增加其 CPU 分配。
publish (bool | None) – 设置为 true 以在创建期间发布函数第一个版本。
vpc_config (Any | None) – 为了连接 VPC 中的 Amazon Web Services 资源,请在 VPC 中指定安全组和子网列表。
package_type (str | None) – 部署包类型。容器镜像设置为 Image,.zip 文件归档设置为 Zip。
dead_letter_config (Any | None) – 死信队列配置,指定 Lambda 在异步事件处理失败时发送事件的队列或主题。
environment (Any | None) – 函数代码在执行期间可访问的环境变量。
kms_key_arn (str | None) – 用于加密函数环境变量的 Key Management Service (KMS) 密钥的 ARN。如果未提供,Lambda 将使用默认服务密钥。
tracing_config (Any | None) – 将 Mode 设置为 Active 以使用 X-Ray 对传入请求的子集进行采样和跟踪。
tags (Any | None) – 应用于函数标签列表。
layers (list | None) – 要添加到函数执行环境的函数层列表。通过其 ARN(包括版本)指定每个层。
file_system_configs (list[Any] | None) – Amazon EFS 文件系统的连接设置。
image_config (Any | None) – 覆盖容器镜像 Dockerfile 中值的容器镜像配置值。
code_signing_config_arn (str | None) – 要为此函数启用代码签名,请指定代码签名配置的 ARN。代码签名配置包括一组签名配置文件,它们定义了此函数的受信任发布者。
ephemeral_storage (Any | None) – 函数 /tmp 目录的大小(MB)。默认值为 512,但可以是 512 到 10,240 MB 之间的任何整数。
snap_start (Any | None) – 函数的 SnapStart 设置。
logging_config (Any | None) – 函数的 Amazon CloudWatch Logs 配置设置。