

# AWS Lambda 関数とパラメータのリファレンス
<a name="PostgreSQL-Lambda-functions"></a>

以下は、RDS for PostgreSQL で Lambda を呼び出すために使用する関数とパラメータのリファレンスです。

**Topics**
+ [aws\$1lambda.invoke](#aws_lambda.invoke)
+ [aws\$1commons.create\$1lambda\$1function\$1arn](#aws_commons.create_lambda_function_arn)
+ [aws\$1lambda パラメータ](#aws_lambda.parameters)

## aws\$1lambda.invoke
<a name="aws_lambda.invoke"></a>

の RDS for PostgreSQL DB インスタンスの Lambda 関数を実行します。

Lambda関数の呼び出しの詳細については、*AWS Lambda デベロッパーガイド*の「[呼び出し](https://docs.aws.amazon.com/lambda/latest/dg/API_Invoke.html)」も参照してください。

**[Syntax]** (構文)

------
#### [ 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\$1name**  
Lambda 関数の識別名。値には、関数名、ARN、または部分的な ARN を指定できます。可能な形式のリストについては、*AWS Lambda デベロッパーガイド*の「[Lambda関数名の形式](https://docs.aws.amazon.com/lambda/latest/dg/API_Invoke.html#API_Invoke_RequestParameters)」を参照してください。

*payload*  
Lambda 関数の入力。形式には、JSON または JSONB を使用できます。詳細については、PostgreSQL ドキュメントの「[JSON タイプ](https://www.postgresql.org/docs/current/datatype-json.html)」を参照してください。

*リージョン*  
(オプション) 関数の Lambda リージョン。デフォルトでは、RDS は AWS の完全な ARN から `function_name` リージョンを解決するか、 RDS for PostgreSQL DB インスタンスのリージョンを使用します。このリージョン値が `function_name` ARN で指定されたものと競合する場合、エラーが発生します。

*invocation\$1type*  
Lambda 関数の呼び出しタイプ。 値は大文字と小文字が区別されます。以下に示しているのは、可能な値です。  
+ `RequestResponse`-デフォルト。Lambda 関数の呼び出しタイプは同期で、結果にレスポンスペイロードを返します。ワークフローが Lambda 関数の結果をすぐに受け取ることに依存しているときは、`RequestResponse` 呼び出しのタイプを使用します。
+ `Event`- Lambda 関数の呼び出しタイプは非同期で、返されたペイロードなしにすぐに返されます。ワークフローを先に進める前に Lambda 関数の結果を知る必要がないときは、`Event` の呼び出しタイプを使用します。
+ `DryRun`- この呼び出しタイプは、Lambda 関数を実行せずに、アクセスをテストします。

*log\$1type*  
`log_result`出力パラメータで返される Lambda ログのタイプ。 値は大文字と小文字が区別されます。以下に示しているのは、可能な値です。  
+ Tail - 返された `log_result` 出力パラメータには、実行ログの最後の 4 KB が含まれます。
+ None - Lambda のないログ情報は返されません。

*context*  
JSON または JSONB形式のクライアントコンテキスト。使用されるフィールドには `custom` と `env` が含まれます 。

*修飾子*  
呼び出される Lambda 関数のバージョンを識別する修飾子。この値が `function_name` ARN で指定されたものと競合する場合、エラーが発生します。出力パラメータ

*status\$1code*  
HTTP ステータスレスポンスコード。詳細については、*AWS Lambda デベロッパーガイド*の「[Lambda 応答要素の呼び出し](https://docs.aws.amazon.com/lambda/latest/dg/API_Invoke.html#API_Invoke_ResponseElements)」を参照してください。

*payload*  
実行された Lambda 関数から返された情報。形式は JSON または JSONB です。

*executedversion*  
実行された Lambda 関数のバージョン。

*result*  
Lambda 関数が呼び出されたとき `log_type` 値が `Tail` である場合に返される実行ログ情報。結果には、Base64 でエンコードされた実行ログの最後の 4 KB が含まれます。

## aws\$1commons.create\$1lambda\$1function\$1arn
<a name="aws_commons.create_lambda_function_arn"></a>

Lambda 関数名情報を保持するように、`aws_commons._lambda_function_arn_1` 構造を作成します。`aws_commons.create_lambda_function_arn` 関数の結果は、aws\$1lambda.invoke `function_name` 関数の [aws\$1lambda.invoke](#aws_lambda.invoke) パラメータで使用します。

**[Syntax]** (構文)

```
aws_commons.create_lambda_function_arn(
    function_name TEXT,
    region TEXT DEFAULT NULL
    )
    RETURNS aws_commons._lambda_function_arn_1
```入力パラメータ

*function\$1name*  
Lambda 関数名を含む必須のテキスト文字列。値には、関数名、部分的な ARN、または完全な ARN を指定します。

*リージョン*  
Lambda 関数がある AWS リージョンを含む、オプションのテキスト文字列。 リージョン名と関連する値のリストについては、「」を参照してください。[リージョン、アベイラビリティーゾーン、および Local Zones](Concepts.RegionsAndAvailabilityZones.md)

## aws\$1lambda パラメータ
<a name="aws_lambda.parameters"></a>

この表には、`aws_lambda` 関数に関連するパラメータが記載されています。


| パラメータ  | 説明 | 
| --- | --- | 
| `aws_lambda.connect_timeout_ms` | これは動的パラメータであり、AWS Lambda への接続中の最大待機時間を設定します。デフォルト値は `1000` です。このパラメータに指定できる値は、1～900000 です。 | 
| `aws_lambda.request_timeout_ms` | これは動的パラメータであり、AWS Lambda からのレスポンスの最大待機時間を設定します。デフォルト値は `3000` です。このパラメータに指定できる値は、1～900000 です。 | 
| `aws_lambda.endpoint_override` | AWS Lambda への接続に使用できるエンドポイントを指定します。空の文字列は、リージョンのデフォルトの AWS Lambda エンドポイントを選択します。この静的パラメータの変更を有効にするには、データベースを再起動する必要があります。 | 