本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 Lambda 示例 Amazon CLI
以下代码示例向您展示了如何使用 with Lambda 来执行操作和实现常见场景。 Amazon Command Line Interface
操作是大型程序的代码摘录,必须在上下文中运行。您可以通过操作了解如何调用单个服务函数,还可以通过函数相关场景和跨服务示例的上下文查看操作。
场景是展示如何通过在同一服务中调用多个函数来完成特定任务任务的代码示例。
每个示例都包含一个指向的链接 GitHub,您可以在其中找到有关如何在上下文中设置和运行代码的说明。
主题
操作
以下代码示例演示如何使用 add-layer-version-permission
。
- Amazon CLI
-
向图层版本添加权限
以下
add-layer-version-permission
示例向指定账户授予使用图层版本 1 的权限my-layer
。aws lambda add-layer-version-permission \ --layer-name my-layer \ --statement-id xaccount \ --action lambda:GetLayerVersion \ --principal 123456789012 \ --version-number 1
输出:
{ "RevisionId": "35d87451-f796-4a3f-a618-95a3671b0a0c", "Statement": { "Sid":"xaccount", "Effect":"Allow", "Principal":{ "AWS":"arn:aws:iam::210987654321:root" }, "Action":"lambda:GetLayerVersion", "Resource":"arn:aws:lambda:us-east-2:123456789012:layer:my-layer:1" } }
有关更多信息,请参阅 Amazon Lambda 开发人员指南中的 Lambda Amazon 层。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考AddLayerVersionPermission
中的。
-
以下代码示例演示如何使用 add-permission
。
- Amazon CLI
-
向现有 Lambda 函数添加权限
以下
add-permission
示例授予 Amazon SNS 服务调用名为的函数的权限。my-function
aws lambda add-permission \ --function-name my-function \ --action lambda:InvokeFunction \ --statement-id sns \ --principal sns.amazonaws.com
输出:
{ "Statement": { "Sid":"sns", "Effect":"Allow", "Principal":{ "Service":"sns.amazonaws.com" }, "Action":"lambda:InvokeFunction", "Resource":"arn:aws:lambda:us-east-2:123456789012:function:my-function" } }
有关更多信息,请参阅 Lambda 开发人员指南中的Amazon 对 Lamb Amazon da 使用基于资源的策略。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考AddPermission
中的。
-
以下代码示例演示如何使用 create-alias
。
- Amazon CLI
-
为 Lambda 函数创建别名
以下
create-alias
示例会创建名为LIVE
的别名,该别名指向my-function
Lambda 函数的版本 1。aws lambda create-alias \ --function-name my-function \ --description "alias for live version of function" \ --function-version 1 \ --name LIVE
输出:
{ "FunctionVersion": "1", "Name": "LIVE", "AliasArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function:LIVE", "RevisionId": "873282ed-4cd3-4dc8-a069-d0c647e470c6", "Description": "alias for live version of function" }
有关更多信息,请参阅 Amazon Lambda 开发人员指南中的配置 Lambda Amazon 函数别名。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考CreateAlias
中的。
-
以下代码示例演示如何使用 create-event-source-mapping
。
- Amazon CLI
-
在事件源和 Amazon Lambda 函数之间创建映射
以下
create-event-source-mapping
示例在 SQS 队列和 Lambdmy-function
a 函数之间创建了映射。aws lambda create-event-source-mapping \ --function-name my-function \ --batch-size 5 \ --event-source-arn arn:aws:sqs:us-west-2:123456789012:mySQSqueue
输出:
{ "UUID": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "StateTransitionReason": "USER_INITIATED", "LastModified": 1569284520.333, "BatchSize": 5, "State": "Creating", "FunctionArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function", "EventSourceArn": "arn:aws:sqs:us-west-2:123456789012:mySQSqueue" }
有关更多信息,请参阅 Amazon Lambda 开发人员指南中的 L Amazon am bda 事件源映射。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考CreateEventSourceMapping
中的。
-
以下代码示例演示如何使用 create-function
。
- Amazon CLI
-
创建 Lambda 函数
以下
create-function
示例创建一个名为my-function
的 Lambda 函数。aws lambda create-function \ --function-name my-function \ --runtime nodejs18.x \ --zip-file fileb://my-function.zip \ --handler my-function.handler \ --role arn:aws:iam::123456789012:role/service-role/MyTestFunction-role-tges6bf4
my-function.zip
的内容:This file is a deployment package that contains your function code and any dependencies.
输出:
{ "TracingConfig": { "Mode": "PassThrough" }, "CodeSha256": "PFn4S+er27qk+UuZSTKEQfNKG/XNn7QJs90mJgq6oH8=", "FunctionName": "my-function", "CodeSize": 308, "RevisionId": "873282ed-4cd3-4dc8-a069-d0c647e470c6", "MemorySize": 128, "FunctionArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function", "Version": "$LATEST", "Role": "arn:aws:iam::123456789012:role/service-role/MyTestFunction-role-zgur6bf4", "Timeout": 3, "LastModified": "2023-10-14T22:26:11.234+0000", "Handler": "my-function.handler", "Runtime": "nodejs18.x", "Description": "" }
有关更多信息,请参阅《Amazon Lambda 开发人员指南》中的配置Amazon Lambda 函数选项。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考CreateFunction
中的。
-
以下代码示例演示如何使用 delete-alias
。
- Amazon CLI
-
删除 Lambda 函数别名
以下
delete-alias
示例从my-function
Lambda 函数中删除了名为LIVE
的别名。aws lambda delete-alias \ --function-name my-function \ --name LIVE
此命令不生成任何输出。
有关更多信息,请参阅 Amazon Lambda 开发人员指南中的配置 Lambda Amazon 函数别名。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考DeleteAlias
中的。
-
以下代码示例演示如何使用 delete-event-source-mapping
。
- Amazon CLI
-
删除事件源和 Amazon Lambda 函数之间的映射
以下
delete-event-source-mapping
示例删除了 SQS 队列和 Lambdmy-function
a 函数之间的映射。aws lambda delete-event-source-mapping \ --uuid a1b2c3d4-5678-90ab-cdef-11111EXAMPLE
输出:
{ "UUID": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "StateTransitionReason": "USER_INITIATED", "LastModified": 1569285870.271, "BatchSize": 5, "State": "Deleting", "FunctionArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function", "EventSourceArn": "arn:aws:sqs:us-west-2:123456789012:mySQSqueue" }
有关更多信息,请参阅 Amazon Lambda 开发人员指南中的 L Amazon am bda 事件源映射。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考DeleteEventSourceMapping
中的。
-
以下代码示例演示如何使用 delete-function-concurrency
。
- Amazon CLI
-
从函数中删除预留的并发执行限制
以下
delete-function-concurrency
示例从my-function
函数中删除了预留的并发执行限制。aws lambda delete-function-concurrency \ --function-name my-function
此命令不生成任何输出。
有关更多信息,请参阅《Amazon Lambda 开发人员指南》中的为 Lambda 函数预留并发。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考DeleteFunctionConcurrency
中的。
-
以下代码示例演示如何使用 delete-function-event-invoke-config
。
- Amazon CLI
-
删除异步调用配置
以下
delete-function-event-invoke-config
示例删除指定函数GREEN
别名的异步调用配置。aws lambda delete-function-event-invoke-config --function-name my-function:GREEN
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考DeleteFunctionEventInvokeConfig
中的。
-
以下代码示例演示如何使用 delete-function
。
- Amazon CLI
-
示例 1:按函数名称删除 Lambda 函数
以下
delete-function
示例删除通过指定函数名称命名为my-function
的 Lambda 函数。aws lambda delete-function \ --function-name my-function
此命令不生成任何输出。
示例 2:按函数 ARN 删除 Lambda 函数
以下
delete-function
示例删除通过指定函数 ARN 命名为my-function
的 Lambda 函数。aws lambda delete-function \ --function-name arn:aws:lambda:us-west-2:123456789012:function:my-function
此命令不生成任何输出。
示例 3:按部分函数 ARN 删除 Lambda 函数
以下
delete-function
示例删除通过指定函数的部分 ARN 命名为my-function
的 Lambda 函数。aws lambda delete-function \ --function-name 123456789012:function:my-function
此命令不生成任何输出。
有关更多信息,请参阅《Amazon Lambda 开发人员指南》中的配置Amazon Lambda 函数选项。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考DeleteFunction
中的。
-
以下代码示例演示如何使用 delete-layer-version
。
- Amazon CLI
-
删除 Lambda 层的某个版本
以下
delete-layer-version
示例删除名为的图层的版本 2my-layer
。aws lambda delete-layer-version \ --layer-name my-layer \ --version-number 2
此命令不生成任何输出。
有关更多信息,请参阅 Amazon Lambda 开发人员指南中的 Lambda Amazon 层。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考DeleteLayerVersion
中的。
-
以下代码示例演示如何使用 delete-provisioned-concurrency-config
。
- Amazon CLI
-
删除预置并发配置
以下
delete-provisioned-concurrency-config
示例删除了指定函数GREEN
别名的预置并发配置。aws lambda delete-provisioned-concurrency-config \ --function-name my-function \ --qualifier GREEN
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考DeleteProvisionedConcurrencyConfig
中的。
-
以下代码示例演示如何使用 get-account-settings
。
- Amazon CLI
-
在某个地区检索有关您的账户的 Amazon 详细信息
以下
get-account-settings
示例展示了账户的 Lambda 限制和使用信息。aws lambda get-account-settings
输出:
{ "AccountLimit": { "CodeSizeUnzipped": 262144000, "UnreservedConcurrentExecutions": 1000, "ConcurrentExecutions": 1000, "CodeSizeZipped": 52428800, "TotalCodeSize": 80530636800 }, "AccountUsage": { "FunctionCount": 4, "TotalCodeSize": 9426 } }
有关更多信息,请参阅《Amazon Lambda 开发人员指南》中的 Amazon Lambda 限制。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考GetAccountSettings
中的。
-
以下代码示例演示如何使用 get-alias
。
- Amazon CLI
-
检索关于函数别名的详细信息
以下
get-alias
示例展示了my-function
Lambda 函数中名为LIVE
的别名的详细信息。aws lambda get-alias \ --function-name my-function \ --name LIVE
输出:
{ "FunctionVersion": "3", "Name": "LIVE", "AliasArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function:LIVE", "RevisionId": "594f41fb-b85f-4c20-95c7-6ca5f2a92c93", "Description": "alias for live version of function" }
有关更多信息,请参阅 Amazon Lambda 开发人员指南中的配置 Lambda Amazon 函数别名。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考GetAlias
中的。
-
以下代码示例演示如何使用 get-event-source-mapping
。
- Amazon CLI
-
检索有关事件源映射的详细信息
以下
get-event-source-mapping
示例显示了 SQS 队列和 Lambdmy-function
a 函数之间映射的详细信息。aws lambda get-event-source-mapping \ --uuid "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE"
输出:
{ "UUID": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "StateTransitionReason": "USER_INITIATED", "LastModified": 1569284520.333, "BatchSize": 5, "State": "Enabled", "FunctionArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function", "EventSourceArn": "arn:aws:sqs:us-west-2:123456789012:mySQSqueue" }
有关更多信息,请参阅 Amazon Lambda 开发人员指南中的 L Amazon am bda 事件源映射。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考GetEventSourceMapping
中的。
-
以下代码示例演示如何使用 get-function-concurrency
。
- Amazon CLI
-
查看函数的预留并发设置
以下
get-function-concurrency
示例检索了指定函数的预留并发设置。aws lambda get-function-concurrency \ --function-name my-function
输出:
{ "ReservedConcurrentExecutions": 250 }
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考GetFunctionConcurrency
中的。
-
以下代码示例演示如何使用 get-function-configuration
。
- Amazon CLI
-
检索 Lambda 函数的版本特定设置
以下
get-function-configuration
示例展示了my-function
函数版本 2 的设置。aws lambda get-function-configuration \ --function-name my-function:2
输出:
{ "FunctionName": "my-function", "LastModified": "2019-09-26T20:28:40.438+0000", "RevisionId": "e52502d4-9320-4688-9cd6-152a6ab7490d", "MemorySize": 256, "Version": "2", "Role": "arn:aws:iam::123456789012:role/service-role/my-function-role-uy3l9qyq", "Timeout": 3, "Runtime": "nodejs10.x", "TracingConfig": { "Mode": "PassThrough" }, "CodeSha256": "5tT2qgzYUHaqwR716pZ2dpkn/0J1FrzJmlKidWoaCgk=", "Description": "", "VpcConfig": { "SubnetIds": [], "VpcId": "", "SecurityGroupIds": [] }, "CodeSize": 304, "FunctionArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function:2", "Handler": "index.handler" }
有关更多信息,请参阅《Amazon Lambda 开发人员指南》中的配置Amazon Lambda 函数选项。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考GetFunctionConfiguration
中的。
-
以下代码示例演示如何使用 get-function-event-invoke-config
。
- Amazon CLI
-
查看异步调用配置
以下
get-function-event-invoke-config
示例检索指定函数BLUE
别名的异步调用配置。aws lambda get-function-event-invoke-config \ --function-name my-function:BLUE
输出:
{ "LastModified": 1577824396.653, "FunctionArn": "arn:aws:lambda:us-east-2:123456789012:function:my-function:BLUE", "MaximumRetryAttempts": 0, "MaximumEventAgeInSeconds": 3600, "DestinationConfig": { "OnSuccess": {}, "OnFailure": { "Destination": "arn:aws:sqs:us-east-2:123456789012:failed-invocations" } } }
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考GetFunctionEventInvokeConfig
中的。
-
以下代码示例演示如何使用 get-function
。
- Amazon CLI
-
检索有关函数的信息
以下
get-function
示例显示有关my-function
函数的信息:aws lambda get-function \ --function-name my-function
输出:
{ "Concurrency": { "ReservedConcurrentExecutions": 100 }, "Code": { "RepositoryType": "S3", "Location": "https://awslambda-us-west-2-tasks.s3.us-west-2.amazonaws.com/snapshots/123456789012/my-function..." }, "Configuration": { "TracingConfig": { "Mode": "PassThrough" }, "Version": "$LATEST", "CodeSha256": "5tT2qgzYUHoqwR616pZ2dpkn/0J1FrzJmlKidWaaCgk=", "FunctionName": "my-function", "VpcConfig": { "SubnetIds": [], "VpcId": "", "SecurityGroupIds": [] }, "MemorySize": 128, "RevisionId": "28f0fb31-5c5c-43d3-8955-03e76c5c1075", "CodeSize": 304, "FunctionArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function", "Handler": "index.handler", "Role": "arn:aws:iam::123456789012:role/service-role/helloWorldPython-role-uy3l9qyq", "Timeout": 3, "LastModified": "2019-09-24T18:20:35.054+0000", "Runtime": "nodejs10.x", "Description": "" } }
有关更多信息,请参阅《Amazon Lambda 开发人员指南》中的配置Amazon Lambda 函数选项。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考GetFunction
中的。
-
以下代码示例演示如何使用 get-layer-version-by-arn
。
- Amazon CLI
-
检索有关 Lambda 层版本的信息
以下
get-layer-version-by-arn
示例显示有关具有指定 Amazon 资源名称 (ARN) 的层版本的信息。aws lambda get-layer-version-by-arn \ --arn "arn:aws:lambda:us-west-2:123456789012:layer:AWSLambda-Python311-SciPy1x:2"
输出:
{ "LayerVersionArn": "arn:aws:lambda:us-west-2:123456789012:layer:AWSLambda-Python311-SciPy1x:2", "Description": "AWS Lambda SciPy layer for Python 3.11 (scipy-1.1.0, numpy-1.15.4) https://github.com/scipy/scipy/releases/tag/v1.1.0 https://github.com/numpy/numpy/releases/tag/v1.15.4", "CreatedDate": "2023-10-12T10:09:38.398+0000", "LayerArn": "arn:aws:lambda:us-west-2:123456789012:layer:AWSLambda-Python311-SciPy1x", "Content": { "CodeSize": 41784542, "CodeSha256": "GGmv8ocUw4cly0T8HL0Vx/f5V4RmSCGNjDIslY4VskM=", "Location": "https://awslambda-us-west-2-layers.s3.us-west-2.amazonaws.com/snapshots/123456789012/..." }, "Version": 2, "CompatibleRuntimes": [ "python3.11" ], "LicenseInfo": "SciPy: https://github.com/scipy/scipy/blob/main/LICENSE.txt, NumPy: https://github.com/numpy/numpy/blob/main/LICENSE.txt" }
有关更多信息,请参阅 Amazon Lambda 开发人员指南中的 Lambda Amazon 层。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考GetLayerVersionByArn
中的。
-
以下代码示例演示如何使用 get-layer-version-policy
。
- Amazon CLI
-
检索 Lambda 层版本的权限策略
以下
get-layer-version-policy
示例显示名为的图层的版本 1 的策略信息my-layer
。aws lambda get-layer-version-policy \ --layer-name my-layer \ --version-number 1
输出:
{ "Policy": { "Version":"2012-10-17", "Id":"default", "Statement": [ { "Sid":"xaccount", "Effect":"Allow", "Principal": {"AWS":"arn:aws:iam::123456789012:root"}, "Action":"lambda:GetLayerVersion", "Resource":"arn:aws:lambda:us-west-2:123456789012:layer:my-layer:1" } ] }, "RevisionId": "c68f21d2-cbf0-4026-90f6-1375ee465cd0" }
有关更多信息,请参阅 Amazon Lambda 开发人员指南中的 Lambda Amazon 层。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考GetLayerVersionPolicy
中的。
-
以下代码示例演示如何使用 get-layer-version
。
- Amazon CLI
-
检索有关 Lambda 层版本的信息
以下
get-layer-version
示例显示名为的图层的版本 1 的信息my-layer
。aws lambda get-layer-version \ --layer-name my-layer \ --version-number 1
输出:
{ "Content": { "Location": "https://awslambda-us-east-2-layers.s3.us-east-2.amazonaws.com/snapshots/123456789012/my-layer-4aaa2fbb-ff77-4b0a-ad92-5b78a716a96a?versionId=27iWyA73cCAYqyH...", "CodeSha256": "tv9jJO+rPbXUUXuRKi7CwHzKtLDkDRJLB3cC3Z/ouXo=", "CodeSize": 169 }, "LayerArn": "arn:aws:lambda:us-east-2:123456789012:layer:my-layer", "LayerVersionArn": "arn:aws:lambda:us-east-2:123456789012:layer:my-layer:1", "Description": "My Python layer", "CreatedDate": "2018-11-14T23:03:52.894+0000", "Version": 1, "LicenseInfo": "MIT", "CompatibleRuntimes": [ "python3.10", "python3.11" ] }
有关更多信息,请参阅 Amazon Lambda 开发人员指南中的 Lambda Amazon 层。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考GetLayerVersion
中的。
-
以下代码示例演示如何使用 get-policy
。
- Amazon CLI
-
检索函数、版本或别名的基于资源的 IAM 策略
以下
get-policy
示例展示了有关my-function
Lambda 函数的策略信息。aws lambda get-policy \ --function-name my-function
输出:
{ "Policy": { "Version":"2012-10-17", "Id":"default", "Statement": [ { "Sid":"iot-events", "Effect":"Allow", "Principal": {"Service":"iotevents.amazonaws.com"}, "Action":"lambda:InvokeFunction", "Resource":"arn:aws:lambda:us-west-2:123456789012:function:my-function" } ] }, "RevisionId": "93017fc9-59cb-41dc-901b-4845ce4bf668" }
有关更多信息,请参阅 Lambda 开发人员指南中的Amazon 对 Lamb Amazon da 使用基于资源的策略。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考GetPolicy
中的。
-
以下代码示例演示如何使用 get-provisioned-concurrency-config
。
- Amazon CLI
-
查看预置并发配置
以下
get-provisioned-concurrency-config
示例展示了指定函数BLUE
别名的预置并发配置的详细信息。aws lambda get-provisioned-concurrency-config \ --function-name my-function \ --qualifier BLUE
输出:
{ "RequestedProvisionedConcurrentExecutions": 100, "AvailableProvisionedConcurrentExecutions": 100, "AllocatedProvisionedConcurrentExecutions": 100, "Status": "READY", "LastModified": "2019-12-31T20:28:49+0000" }
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考GetProvisionedConcurrencyConfig
中的。
-
以下代码示例演示如何使用 invoke
。
- Amazon CLI
-
示例 1:同步调用 Lambda 函数
以下
invoke
示例同步调用该my-function
函数。如果您使用的是 Amazon CLI 版本 2,则该cli-binary-format
选项为必填项。有关更多信息,请参阅《Amazon 命令行界面版本 2 的用户指南》中 Amazon CLI 支持的全局命令行选项。aws lambda invoke \ --function-name my-function \ --cli-binary-format raw-in-base64-out \ --payload '{ "name": "Bob" }' \ response.json
输出:
{ "ExecutedVersion": "$LATEST", "StatusCode": 200 }
有关更多信息,请参阅《Amazon Lambda 开发人员指南》中的同步调用。
示例 2:异步调用 Lambda 函数
以下
invoke
示例异步调用该my-function
函数。如果您使用的是 Amazon CLI 版本 2,则该cli-binary-format
选项为必填项。有关更多信息,请参阅《Amazon 命令行界面版本 2 的用户指南》中 Amazon CLI 支持的全局命令行选项。aws lambda invoke \ --function-name my-function \ --invocation-type Event \ --cli-binary-format raw-in-base64-out \ --payload '{ "name": "Bob" }' \ response.json
输出:
{ "StatusCode": 202 }
有关更多信息,请参阅《Amazon Lambda 开发人员指南》中的异步调用。
-
有关 API 详细信息,请参阅《Amazon CLI Command Reference》中的 Invoke
。
-
以下代码示例演示如何使用 list-aliases
。
- Amazon CLI
-
检索 Lambda 函数的别名列表
以下
list-aliases
示例显示了 Lambdmy-function
a 函数的别名列表。aws lambda list-aliases \ --function-name my-function
输出:
{ "Aliases": [ { "AliasArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function:BETA", "RevisionId": "a410117f-ab16-494e-8035-7e204bb7933b", "FunctionVersion": "2", "Name": "BETA", "Description": "alias for beta version of function" }, { "AliasArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function:LIVE", "RevisionId": "21d40116-f8b1-40ba-9360-3ea284da1bb5", "FunctionVersion": "1", "Name": "LIVE", "Description": "alias for live version of function" } ] }
有关更多信息,请参阅 Amazon Lambda 开发人员指南中的配置 Lambda Amazon 函数别名。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考ListAliases
中的。
-
以下代码示例演示如何使用 list-event-source-mappings
。
- Amazon CLI
-
列出函数的事件源映射
以下
list-event-source-mappings
示例显示了 Lambdmy-function
a 函数的事件源映射列表。aws lambda list-event-source-mappings \ --function-name my-function
输出:
{ "EventSourceMappings": [ { "UUID": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "StateTransitionReason": "USER_INITIATED", "LastModified": 1569284520.333, "BatchSize": 5, "State": "Enabled", "FunctionArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function", "EventSourceArn": "arn:aws:sqs:us-west-2:123456789012:mySQSqueue" } ] }
有关更多信息,请参阅 Amazon Lambda 开发人员指南中的 L Amazon am bda 事件源映射。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考ListEventSourceMappings
中的。
-
以下代码示例演示如何使用 list-function-event-invoke-configs
。
- Amazon CLI
-
查看异步调用配置列表
以下
list-function-event-invoke-configs
示例列出了指定函数的异步调用配置。aws lambda list-function-event-invoke-configs \ --function-name my-function
输出:
{ "FunctionEventInvokeConfigs": [ { "LastModified": 1577824406.719, "FunctionArn": "arn:aws:lambda:us-east-2:123456789012:function:my-function:GREEN", "MaximumRetryAttempts": 2, "MaximumEventAgeInSeconds": 1800 }, { "LastModified": 1577824396.653, "FunctionArn": "arn:aws:lambda:us-east-2:123456789012:function:my-function:BLUE", "MaximumRetryAttempts": 0, "MaximumEventAgeInSeconds": 3600 } ] }
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考ListFunctionEventInvokeConfigs
中的。
-
以下代码示例演示如何使用 list-functions
。
- Amazon CLI
-
检索 Lambda 函数列表
以下
list-functions
示例显示当前用户所有函数的列表。aws lambda list-functions
输出:
{ "Functions": [ { "TracingConfig": { "Mode": "PassThrough" }, "Version": "$LATEST", "CodeSha256": "dBG9m8SGdmlEjw/JYXlhhvCrAv5TxvXsbL/RMr0fT/I=", "FunctionName": "helloworld", "MemorySize": 128, "RevisionId": "1718e831-badf-4253-9518-d0644210af7b", "CodeSize": 294, "FunctionArn": "arn:aws:lambda:us-west-2:123456789012:function:helloworld", "Handler": "helloworld.handler", "Role": "arn:aws:iam::123456789012:role/service-role/MyTestFunction-role-zgur6bf4", "Timeout": 3, "LastModified": "2023-09-23T18:32:33.857+0000", "Runtime": "nodejs18.x", "Description": "" }, { "TracingConfig": { "Mode": "PassThrough" }, "Version": "$LATEST", "CodeSha256": "sU0cJ2/hOZevwV/lTxCuQqK3gDZP3i8gUoqUUVRmY6E=", "FunctionName": "my-function", "VpcConfig": { "SubnetIds": [], "VpcId": "", "SecurityGroupIds": [] }, "MemorySize": 256, "RevisionId": "93017fc9-59cb-41dc-901b-4845ce4bf668", "CodeSize": 266, "FunctionArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function", "Handler": "index.handler", "Role": "arn:aws:iam::123456789012:role/service-role/helloWorldPython-role-uy3l9qyq", "Timeout": 3, "LastModified": "2023-10-01T16:47:28.490+0000", "Runtime": "nodejs18.x", "Description": "" }, { "Layers": [ { "CodeSize": 41784542, "Arn": "arn:aws:lambda:us-west-2:420165488524:layer:AWSLambda-Python37-SciPy1x:2" }, { "CodeSize": 4121, "Arn": "arn:aws:lambda:us-west-2:123456789012:layer:pythonLayer:1" } ], "TracingConfig": { "Mode": "PassThrough" }, "Version": "$LATEST", "CodeSha256": "ZQukCqxtkqFgyF2cU41Avj99TKQ/hNihPtDtRcc08mI=", "FunctionName": "my-python-function", "VpcConfig": { "SubnetIds": [], "VpcId": "", "SecurityGroupIds": [] }, "MemorySize": 128, "RevisionId": "80b4eabc-acf7-4ea8-919a-e874c213707d", "CodeSize": 299, "FunctionArn": "arn:aws:lambda:us-west-2:123456789012:function:my-python-function", "Handler": "lambda_function.lambda_handler", "Role": "arn:aws:iam::123456789012:role/service-role/my-python-function-role-z5g7dr6n", "Timeout": 3, "LastModified": "2023-10-01T19:40:41.643+0000", "Runtime": "python3.11", "Description": "" } ] }
有关更多信息,请参阅《Amazon Lambda 开发人员指南》中的配置Amazon Lambda 函数选项。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考ListFunctions
中的。
-
以下代码示例演示如何使用 list-layer-versions
。
- Amazon CLI
-
列出 Amazon Lambda 层的版本
以下
list-layers-versions
示例显示名为的层的版本的相关信息my-layer
。aws lambda list-layer-versions \ --layer-name my-layer
输出:
{ "Layers": [ { "LayerVersionArn": "arn:aws:lambda:us-east-2:123456789012:layer:my-layer:2", "Version": 2, "Description": "My layer", "CreatedDate": "2023-11-15T00:37:46.592+0000", "CompatibleRuntimes": [ "python3.10", "python3.11" ] } ] }
有关更多信息,请参阅 Amazon Lambda 开发人员指南中的 Lambda Amazon 层。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考ListLayerVersions
中的。
-
以下代码示例演示如何使用 list-layers
。
- Amazon CLI
-
列出与函数运行时兼容的图层
以下
list-layers
示例显示了与 Python 3.11 运行时兼容的图层的相关信息。aws lambda list-layers \ --compatible-runtime python3.11
输出:
{ "Layers": [ { "LayerName": "my-layer", "LayerArn": "arn:aws:lambda:us-east-2:123456789012:layer:my-layer", "LatestMatchingVersion": { "LayerVersionArn": "arn:aws:lambda:us-east-2:123456789012:layer:my-layer:2", "Version": 2, "Description": "My layer", "CreatedDate": "2023-11-15T00:37:46.592+0000", "CompatibleRuntimes": [ "python3.10", "python3.11" ] } } ] }
有关更多信息,请参阅 Amazon Lambda 开发人员指南中的 Lambda Amazon 层。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考ListLayers
中的。
-
以下代码示例演示如何使用 list-provisioned-concurrency-configs
。
- Amazon CLI
-
获取预置并发配置列表
以下
list-provisioned-concurrency-configs
示例列出了指定函数的预置并发配置。aws lambda list-provisioned-concurrency-configs \ --function-name my-function
输出:
{ "ProvisionedConcurrencyConfigs": [ { "FunctionArn": "arn:aws:lambda:us-east-2:123456789012:function:my-function:GREEN", "RequestedProvisionedConcurrentExecutions": 100, "AvailableProvisionedConcurrentExecutions": 100, "AllocatedProvisionedConcurrentExecutions": 100, "Status": "READY", "LastModified": "2019-12-31T20:29:00+0000" }, { "FunctionArn": "arn:aws:lambda:us-east-2:123456789012:function:my-function:BLUE", "RequestedProvisionedConcurrentExecutions": 100, "AvailableProvisionedConcurrentExecutions": 100, "AllocatedProvisionedConcurrentExecutions": 100, "Status": "READY", "LastModified": "2019-12-31T20:28:49+0000" } ] }
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考ListProvisionedConcurrencyConfigs
中的。
-
以下代码示例演示如何使用 list-tags
。
- Amazon CLI
-
检索 Lambda 函数的标签列表
以下
list-tags
示例展示了附加到my-function
Lambda 函数的标签。aws lambda list-tags \ --resource arn:aws:lambda:us-west-2:123456789012:function:my-function
输出:
{ "Tags": { "Category": "Web Tools", "Department": "Sales" } }
有关更多信息,请参阅《Amazon Lambda 开发人员指南》中的标记 Lambda 函数。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考ListTags
中的。
-
以下代码示例演示如何使用 list-versions-by-function
。
- Amazon CLI
-
检索函数的版本列表
以下
list-versions-by-function
示例展示了my-function
Lambda 函数的版本列表。aws lambda list-versions-by-function \ --function-name my-function
输出:
{ "Versions": [ { "TracingConfig": { "Mode": "PassThrough" }, "Version": "$LATEST", "CodeSha256": "sU0cJ2/hOZevwV/lTxCuQqK3gDZP3i8gUoqUUVRmY6E=", "FunctionName": "my-function", "VpcConfig": { "SubnetIds": [], "VpcId": "", "SecurityGroupIds": [] }, "MemorySize": 256, "RevisionId": "93017fc9-59cb-41dc-901b-4845ce4bf668", "CodeSize": 266, "FunctionArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function:$LATEST", "Handler": "index.handler", "Role": "arn:aws:iam::123456789012:role/service-role/helloWorldPython-role-uy3l9qyq", "Timeout": 3, "LastModified": "2019-10-01T16:47:28.490+0000", "Runtime": "nodejs10.x", "Description": "" }, { "TracingConfig": { "Mode": "PassThrough" }, "Version": "1", "CodeSha256": "5tT2qgzYUHoqwR616pZ2dpkn/0J1FrzJmlKidWaaCgk=", "FunctionName": "my-function", "VpcConfig": { "SubnetIds": [], "VpcId": "", "SecurityGroupIds": [] }, "MemorySize": 256, "RevisionId": "949c8914-012e-4795-998c-e467121951b1", "CodeSize": 304, "FunctionArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function:1", "Handler": "index.handler", "Role": "arn:aws:iam::123456789012:role/service-role/helloWorldPython-role-uy3l9qyq", "Timeout": 3, "LastModified": "2019-09-26T20:28:40.438+0000", "Runtime": "nodejs10.x", "Description": "new version" }, { "TracingConfig": { "Mode": "PassThrough" }, "Version": "2", "CodeSha256": "sU0cJ2/hOZevwV/lTxCuQqK3gDZP3i8gUoqUUVRmY6E=", "FunctionName": "my-function", "VpcConfig": { "SubnetIds": [], "VpcId": "", "SecurityGroupIds": [] }, "MemorySize": 256, "RevisionId": "cd669f21-0f3d-4e1c-9566-948837f2e2ea", "CodeSize": 266, "FunctionArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function:2", "Handler": "index.handler", "Role": "arn:aws:iam::123456789012:role/service-role/helloWorldPython-role-uy3l9qyq", "Timeout": 3, "LastModified": "2019-10-01T16:47:28.490+0000", "Runtime": "nodejs10.x", "Description": "newer version" } ] }
有关更多信息,请参阅 Amazon Lambda 开发人员指南中的配置 Lambda Amazon 函数别名。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考ListVersionsByFunction
中的。
-
以下代码示例演示如何使用 publish-layer-version
。
- Amazon CLI
-
创建 Lambda 层版本
以下
publish-layer-version
示例创建了一个新的 Python 库层版本。该命令检索在指定 S3 存储桶layer.zip
中命名的文件的图层内容。aws lambda publish-layer-version \ --layer-name my-layer \ --description "My Python layer" \ --license-info "MIT" \ --content S3Bucket=lambda-layers-us-west-2-123456789012,S3Key=layer.zip \ --compatible-runtimes python3.10 python3.11
输出:
{ "Content": { "Location": "https://awslambda-us-west-2-layers.s3.us-west-2.amazonaws.com/snapshots/123456789012/my-layer-4aaa2fbb-ff77-4b0a-ad92-5b78a716a96a?versionId=27iWyA73cCAYqyH...", "CodeSha256": "tv9jJO+rPbXUUXuRKi7CwHzKtLDkDRJLB3cC3Z/ouXo=", "CodeSize": 169 }, "LayerArn": "arn:aws:lambda:us-west-2:123456789012:layer:my-layer", "LayerVersionArn": "arn:aws:lambda:us-west-2:123456789012:layer:my-layer:1", "Description": "My Python layer", "CreatedDate": "2023-11-14T23:03:52.894+0000", "Version": 1, "LicenseInfo": "MIT", "CompatibleRuntimes": [ "python3.10", "python3.11" ] }
有关更多信息,请参阅 Amazon Lambda 开发人员指南中的 Lambda Amazon 层。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考PublishLayerVersion
中的。
-
以下代码示例演示如何使用 publish-version
。
- Amazon CLI
-
发布函数的新版本
以下
publish-version
示例发布了my-function
Lambda 函数的新版本。aws lambda publish-version \ --function-name my-function
输出:
{ "TracingConfig": { "Mode": "PassThrough" }, "CodeSha256": "dBG9m8SGdmlEjw/JYXlhhvCrAv5TxvXsbL/RMr0fT/I=", "FunctionName": "my-function", "CodeSize": 294, "RevisionId": "f31d3d39-cc63-4520-97d4-43cd44c94c20", "MemorySize": 128, "FunctionArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function:3", "Version": "2", "Role": "arn:aws:iam::123456789012:role/service-role/MyTestFunction-role-zgur6bf4", "Timeout": 3, "LastModified": "2019-09-23T18:32:33.857+0000", "Handler": "my-function.handler", "Runtime": "nodejs10.x", "Description": "" }
有关更多信息,请参阅 Amazon Lambda 开发人员指南中的配置 Lambda Amazon 函数别名。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考PublishVersion
中的。
-
以下代码示例演示如何使用 put-function-concurrency
。
- Amazon CLI
-
配置函数的预留并发限制
以下
put-function-concurrency
示例为my-function
函数配置了 100 个预留并发执行。aws lambda put-function-concurrency \ --function-name my-function \ --reserved-concurrent-executions 100
输出:
{ "ReservedConcurrentExecutions": 100 }
有关更多信息,请参阅《Amazon Lambda 开发人员指南》中的为 Lambda 函数预留并发。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考PutFunctionConcurrency
中的。
-
以下代码示例演示如何使用 put-function-event-invoke-config
。
- Amazon CLI
-
为异步调用配置错误处理
以下
put-function-event-invoke-config
示例将最长事件持续时间设置为一小时,并禁止对指定函数进行重试。aws lambda put-function-event-invoke-config \ --function-name my-function \ --maximum-event-age-in-seconds 3600 \ --maximum-retry-attempts 0
输出:
{ "LastModified": 1573686021.479, "FunctionArn": "arn:aws:lambda:us-east-2:123456789012:function:my-function:$LATEST", "MaximumRetryAttempts": 0, "MaximumEventAgeInSeconds": 3600, "DestinationConfig": { "OnSuccess": {}, "OnFailure": {} } }
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考PutFunctionEventInvokeConfig
中的。
-
以下代码示例演示如何使用 put-provisioned-concurrency-config
。
- Amazon CLI
-
分配预置并发
以下
put-provisioned-concurrency-config
示例为指定函数的BLUE
别名分配了 100 个预置并发。aws lambda put-provisioned-concurrency-config \ --function-name my-function \ --qualifier BLUE \ --provisioned-concurrent-executions 100
输出:
{ "Requested ProvisionedConcurrentExecutions": 100, "Allocated ProvisionedConcurrentExecutions": 0, "Status": "IN_PROGRESS", "LastModified": "2019-11-21T19:32:12+0000" }
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考PutProvisionedConcurrencyConfig
中的。
-
以下代码示例演示如何使用 remove-layer-version-permission
。
- Amazon CLI
-
删除图层版本权限
以下
remove-layer-version-permission
示例删除了账户配置图层版本的权限。aws lambda remove-layer-version-permission \ --layer-name my-layer \ --statement-id xaccount \ --version-number 1
此命令不生成任何输出。
有关更多信息,请参阅 Amazon Lambda 开发人员指南中的 Lambda Amazon 层。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考RemoveLayerVersionPermission
中的。
-
以下代码示例演示如何使用 remove-permission
。
- Amazon CLI
-
从现有 Lambda 函数中删除权限
以下
remove-permission
示例删除了调用名为my-function
的函数的权限。aws lambda remove-permission \ --function-name my-function \ --statement-id sns
此命令不生成任何输出。
有关更多信息,请参阅 Lambda 开发人员指南中的Amazon 对 Lamb Amazon da 使用基于资源的策略。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考RemovePermission
中的。
-
以下代码示例演示如何使用 tag-resource
。
- Amazon CLI
-
将标签添加到现有 Lambda 函数
以下
tag-resource
示例向指定的 Lambda 函数添加了键名称为DEPARTMENT
和值为Department A
的标签。aws lambda tag-resource \ --resource arn:aws:lambda:us-west-2:123456789012:function:my-function \ --tags "DEPARTMENT=Department A"
此命令不生成任何输出。
有关更多信息,请参阅《Amazon Lambda 开发人员指南》中的标记 Lambda 函数。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考TagResource
中的。
-
以下代码示例演示如何使用 untag-resource
。
- Amazon CLI
-
从现有 Lambda 函数中删除标签
以下
untag-resource
示例从my-function
Lambda 函数中删除了键名称为DEPARTMENT
的标签。aws lambda untag-resource \ --resource arn:aws:lambda:us-west-2:123456789012:function:my-function \ --tag-keys DEPARTMENT
此命令不生成任何输出。
有关更多信息,请参阅《Amazon Lambda 开发人员指南》中的标记 Lambda 函数。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考UntagResource
中的。
-
以下代码示例演示如何使用 update-alias
。
- Amazon CLI
-
更新函数别名
以下
update-alias
示例会更新名为LIVE
的别名,该别名指向my-function
Lambda 函数的版本 3。aws lambda update-alias \ --function-name my-function \ --function-version 3 \ --name LIVE
输出:
{ "FunctionVersion": "3", "Name": "LIVE", "AliasArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function:LIVE", "RevisionId": "594f41fb-b85f-4c20-95c7-6ca5f2a92c93", "Description": "alias for live version of function" }
有关更多信息,请参阅 Amazon Lambda 开发人员指南中的配置 Lambda Amazon 函数别名。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考UpdateAlias
中的。
-
以下代码示例演示如何使用 update-event-source-mapping
。
- Amazon CLI
-
更新事件源和 Amazon Lambda 函数之间的映射
以下
update-event-source-mapping
示例将指定映射中的批量大小更新为 8。aws lambda update-event-source-mapping \ --uuid "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE" \ --batch-size 8
输出:
{ "UUID": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "StateTransitionReason": "USER_INITIATED", "LastModified": 1569284520.333, "BatchSize": 8, "State": "Updating", "FunctionArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function", "EventSourceArn": "arn:aws:sqs:us-west-2:123456789012:mySQSqueue" }
有关更多信息,请参阅 Amazon Lambda 开发人员指南中的 L Amazon am bda 事件源映射。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考UpdateEventSourceMapping
中的。
-
以下代码示例演示如何使用 update-function-code
。
- Amazon CLI
-
更新 Lambda 函数代码
以下
update-function-code
示例将my-function
函数的未发布($LATEST)版本的代码替换为指定 zip 文件的内容。aws lambda update-function-code \ --function-name my-function \ --zip-file fileb://my-function.zip
输出:
{ "FunctionName": "my-function", "LastModified": "2019-09-26T20:28:40.438+0000", "RevisionId": "e52502d4-9320-4688-9cd6-152a6ab7490d", "MemorySize": 256, "Version": "$LATEST", "Role": "arn:aws:iam::123456789012:role/service-role/my-function-role-uy3l9qyq", "Timeout": 3, "Runtime": "nodejs10.x", "TracingConfig": { "Mode": "PassThrough" }, "CodeSha256": "5tT2qgzYUHaqwR716pZ2dpkn/0J1FrzJmlKidWoaCgk=", "Description": "", "VpcConfig": { "SubnetIds": [], "VpcId": "", "SecurityGroupIds": [] }, "CodeSize": 304, "FunctionArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function", "Handler": "index.handler" }
有关更多信息,请参阅《Amazon Lambda 开发人员指南》中的配置Amazon Lambda 函数选项。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考UpdateFunctionCode
中的。
-
以下代码示例演示如何使用 update-function-configuration
。
- Amazon CLI
-
修改函数的配置
以下
update-function-configuration
示例将my-function
函数的未发布($LATEST)版本的内存大小修改为 256 MB。aws lambda update-function-configuration \ --function-name my-function \ --memory-size 256
输出:
{ "FunctionName": "my-function", "LastModified": "2019-09-26T20:28:40.438+0000", "RevisionId": "e52502d4-9320-4688-9cd6-152a6ab7490d", "MemorySize": 256, "Version": "$LATEST", "Role": "arn:aws:iam::123456789012:role/service-role/my-function-role-uy3l9qyq", "Timeout": 3, "Runtime": "nodejs10.x", "TracingConfig": { "Mode": "PassThrough" }, "CodeSha256": "5tT2qgzYUHaqwR716pZ2dpkn/0J1FrzJmlKidWoaCgk=", "Description": "", "VpcConfig": { "SubnetIds": [], "VpcId": "", "SecurityGroupIds": [] }, "CodeSize": 304, "FunctionArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function", "Handler": "index.handler" }
有关更多信息,请参阅《Amazon Lambda 开发人员指南》中的配置Amazon Lambda 函数选项。
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考UpdateFunctionConfiguration
中的。
-
以下代码示例演示如何使用 update-function-event-invoke-config
。
- Amazon CLI
-
更新异步调用配置
以下
update-function-event-invoke-config
示例将失败时目标添加到指定函数的现有异步调用配置中。aws lambda update-function-event-invoke-config \ --function-name my-function \ --destination-config '{"OnFailure":{"Destination": "arn:aws:sqs:us-east-2:123456789012:destination"}}'
输出:
{ "LastModified": 1573687896.493, "FunctionArn": "arn:aws:lambda:us-east-2:123456789012:function:my-function:$LATEST", "MaximumRetryAttempts": 0, "MaximumEventAgeInSeconds": 3600, "DestinationConfig": { "OnSuccess": {}, "OnFailure": { "Destination": "arn:aws:sqs:us-east-2:123456789012:destination" } } }
-
有关 API 的详细信息,请参阅Amazon CLI 命令参考UpdateFunctionEventInvokeConfig
中的。
-