Amazon Lambda 函数和参数参考 - Amazon Relational Database Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

Amazon Lambda 函数和参数参考

以下是通过 RDS for PostgreSQL 调用 Lambda 所用函数和参数的参考。

aws_lambda.invoke

RDS for PostgreSQL 数据库实例 运行 Lambda 函数。

有关调用 Lambda 函数的更多详细信息,另请参阅 Amazon Lambda 开发人员指南中的调用

语法

JSON
aws_lambda.invoke( IN function_name TEXT, IN payload JSON, IN region TEXT DEFAULT NULL, IN invocation_type TEXT DEFAULT 'RequestResponse', IN log_type TEXT DEFAULT 'None', IN context JSON DEFAULT NULL, IN qualifier VARCHAR(128) DEFAULT NULL, OUT status_code INT, OUT payload JSON, OUT executed_version TEXT, OUT log_result TEXT)
aws_lambda.invoke( IN function_name aws_commons._lambda_function_arn_1, IN payload JSON, IN invocation_type TEXT DEFAULT 'RequestResponse', IN log_type TEXT DEFAULT 'None', IN context JSON DEFAULT NULL, IN qualifier VARCHAR(128) DEFAULT NULL, OUT status_code INT, OUT payload JSON, OUT executed_version TEXT, OUT log_result TEXT)
JSONB
aws_lambda.invoke( IN function_name TEXT, IN payload JSONB, IN region TEXT DEFAULT NULL, IN invocation_type TEXT DEFAULT 'RequestResponse', IN log_type TEXT DEFAULT 'None', IN context JSONB DEFAULT NULL, IN qualifier VARCHAR(128) DEFAULT NULL, OUT status_code INT, OUT payload JSONB, OUT executed_version TEXT, OUT log_result TEXT)
aws_lambda.invoke( IN function_name aws_commons._lambda_function_arn_1, IN payload JSONB, IN invocation_type TEXT DEFAULT 'RequestResponse', IN log_type TEXT DEFAULT 'None', IN context JSONB DEFAULT NULL, IN qualifier VARCHAR(128) DEFAULT NULL, OUT status_code INT, OUT payload JSONB, OUT executed_version TEXT, OUT log_result TEXT )
输入参数
function_name

Lambda 函数的标识名称。该值可以是函数名称、ARN 或部分 ARN。有关可能的格式的列表,请参阅 Amazon Lambda 开发人员指南中的 Lambda 函数名称格式

payload

Lambda 函数的输入。格式可以是 JSON 或 JSONB。有关更多信息,请参阅 PostgreSQL 文档中的 JSON 类型

区域

(可选)函数的 Lambda 区域。默认情况下,RDS 会从 function_name 的完整 ARN 中解析 Amazon 区域,或使用 RDS for PostgreSQL 数据库实例区域。如果此区域值与 function_name ARN 中提供的值冲突,则会引发错误。

invocation_type

Lambda 函数的调用类型。 值区分大小写。可能的值包括:

  • RequestResponse – 默认值。Lambda 函数的这种调用类型是同步的,并在结果中返回响应负载。当工作流程依赖于立即接收 Lambda 函数结果时,请使用 RequestResponse 调用类型。

  • Event – Lambda 函数的这种调用类型是异步的,并在没有返回负载的情况下立即返回。如果您不需要在工作流程开始之前了解 Lambda 函数的结果,请使用 Event 调用类型。

  • DryRun – 这种类型的调用在不允许 Lambda 函数的情况下测试访问权限。

log_type

要在 log_result 输出参数中返回的 Lambda 日志类型。 值区分大小写。可能的值包括:

  • Tail – 返回的 log_result 输出参数将包含执行日志的最后 4 kB。

  • None – 未返回 Lambda 日志信息。

context

JSON 或 JSONB 格式的客户端上下文。要使用的字段包括 customenv

限定符

标识要调用的 Lambda 函数版本的限定符。如果此值与 function_name ARN 中提供的值冲突,则会引发错误。

输出参数
status_code

HTTP 状态响应代码。有关更多信息,请参阅 Amazon Lambda 开发人员指南中的 Lambda 调用响应元素

payload

从运行的 Lambda 函数返回的信息。格式为 JSON 或 JSONB。

executed_version

运行的 Lambda 函数的版本。

log_result

如果 log_type 值在调用 Lambda 函数时为 Tail,则会返回执行日志信息。结果包含以 Base64 编码的执行日志的最后 4 kB。

aws_commons.create_lambda_function_arn

创建一个 aws_commons._lambda_function_arn_1 结构来保存 Lambda 函数名称信息。您可以在 aws_lambda.invoke aws_commons.create_lambda_function_arn 函数的 function_name 参数中使用 aws_lambda.invoke 函数的结果。

语法

aws_commons.create_lambda_function_arn( function_name TEXT, region TEXT DEFAULT NULL ) RETURNS aws_commons._lambda_function_arn_1
输入参数
function_name

包含 Lambda 函数名称的必需文本字符串。该值可以是函数名称、部分 ARN 或完整 ARN。

区域

一个包含 Lambda 函数所在的Amazon区域的可选文本字符串。有关 区域名称和关联值的列表,请参阅区域、可用区和 Local Zones

aws_lambda 参数

在该表中,您可以找到与 aws_lambda 函数关联的参数。

参数 描述

aws_lambda.connect_timeout_ms

这是一个动态参数,用于设置连接到 Amazon Lambda 时的最大等待时间。默认值为 1000。此参数允许的值为 1 - 900000。

aws_lambda.request_timeout_ms

这是一个动态参数,它设置了等待来自 Amazon Lambda 的响应时的最大等待时间。默认值为 3000。此参数允许的值为 1 - 900000。

aws_lambda.endpoint_override

指定可用于连接到 Amazon Lambda 的端点。空字符串会选择该区域的默认 Amazon Lambda 端点。必须重启数据库,此静态参数更改才能生效。