aws:invokeLambdaFunction – AWS Lambda 関数を呼び出す - AWS Systems Manager

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

aws:invokeLambdaFunction – AWS Lambda 関数を呼び出す

指定した AWS Lambda 関数を呼び出します。

注記

aws:invokeLambdaFunction アクションは、最大 300 秒 (5 分) 実行できます。timeoutSeconds ステップで aws:invokeLambdaFunction パラメータを指定して、タイムアウトを制限または延長することができます。

入力

このアクションでは、Lambda サービスのほとんどの呼び出しパラメータがサポートされています。詳細については、「起動」を参照してください。

YAML
name: invokeMyLambdaFunction action: aws:invokeLambdaFunction maxAttempts: 3 timeoutSeconds: 120 onFailure: Abort inputs: FunctionName: MyLambdaFunction
JSON
{ "name": "invokeMyLambdaFunction", "action": "aws:invokeLambdaFunction", "maxAttempts": 3, "timeoutSeconds": 120, "onFailure": "Abort", "inputs": { "FunctionName": "MyLambdaFunction" } }
FunctionName

Lambda 関数の名前。必須の関数です。

型: 文字列

必須: はい

Qualifier

関数のバージョンまたはエイリアス名。

型: 文字列

必須: いいえ

InvocationType

呼び出しタイプ。デフォルト値は RequestResponse です。

型: 文字列

有効な値: Event | RequestResponse | DryRun

必須: いいえ

LogType

デフォルト値が Tail の場合、呼び出しタイプは RequestResponse である必要があります。Lambda は、Lambda 関数で生成されたログデータの最後の 4 KB を base64 でエンコードして返します。

型: 文字列

有効な値: None | Tail

必須: いいえ

ClientContext

クライアント固有の情報。

必須: いいえ

InputPayload

ハンドラの最初のパラメータに渡される JSON または YAML オブジェクト。この入力を使用して、関数にデータを渡すことができます。この入力は、従来の Payload 入力よりもより高い柔軟性とサポート性を提供します。アクションで InputPayloadPayload の両方を定義する場合、InputPayload が優先され、Payload 値は使用されません。

型: StringMap

必須: いいえ

Payload

ハンドラの最初のパラメータに渡される JSON 文字列。これを使用して、関数に入力データを渡すことができます。追加機能では InputPayload 入力を使用することをお勧めします。

タイプ: 文字列

必須: いいえ

出力
StatusCode

HTTP ステータスコード

FunctionError

エラーが存在する場合、関数の実行中にエラーが発生したことを示します。エラーの詳細は、レスポンスペイロードに含まれています。

LogResult

Lambda 関数の呼び出しに対して base64 でエンコードされたログ。ログが存在するのは、呼び出しタイプが RequestResponse で、ログがリクエストされた場合のみです。

Payload

Lambda 関数によって返されるオブジェクトの JSON 形式。ペイロードは、呼び出しタイプが RequestResponse の場合にのみ存在します。最大 200KB が返されます

以下は、aws:invokeLambdaFunction アクションから出力を参照する方法を示した AWS-PatchInstanceWithRollback ランブックの一部です。

YAML
- name: IdentifyRootVolume action: aws:invokeLambdaFunction inputs: FunctionName: "IdentifyRootVolumeLambda-{{automation:EXECUTION_ID}}" Payload: '{"InstanceId": "{{InstanceId}}"}' - name: PrePatchSnapshot action: aws:executeAutomation inputs: DocumentName: "AWS-CreateSnapshot" RuntimeParameters: VolumeId: "{{IdentifyRootVolume.Payload}}" Description: "ApplyPatchBaseline restoration case contingency"
JSON
{ "name": "IdentifyRootVolume", "action": "aws:invokeLambdaFunction", "inputs": { "FunctionName": "IdentifyRootVolumeLambda-{{automation:EXECUTION_ID}}", "Payload": "{\"InstanceId\": \"{{InstanceId}}\"}" } }, { "name": "PrePatchSnapshot", "action": "aws:executeAutomation", "inputs": { "DocumentName": "AWS-CreateSnapshot", "RuntimeParameters": { "VolumeId": "{{IdentifyRootVolume.Payload}}", "Description": "ApplyPatchBaseline restoration case contingency" } } }