本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
调试无服务器应用程序的配置选项
打开 launch.json
文件编辑调试配置时,可以使用 VS Code IntelliSense
借助 IntelliSense,您可以直接或通过 AWS SAM 模板查找和定义用于调用 Lambda 函数的属性。您还可以定义属性 "lambda"
(函数运行方式)、"sam"
(AWS SAM CLI 构建应用程序的方式),以及 "aws"
(提供 AWS 连接信息的方式)。
属性 | 描述 |
---|---|
|
指定哪个扩展管理启动配置。始终设置为 |
|
指定一个易于阅读的名称,以显示在 Debug launch configuration(调试启动配置)列表中。 |
|
指定要由指定扩展程序执行的配置类型 ( |
|
指定资源调用的入口点。 为了直接调用 Lambda 函数,请为以下
为了使用 AWS SAM 模板调用 Lambda 资源,请为下面的
|
属性 | 描述 |
---|---|
|
将操作参数传递到您的 Lambda 函数。例如,您在写入 Amazon S3 存储桶时,不应对要写入的存储桶名称进行硬编码,而应将存储桶名称配置为环境变量。 注意为无服务器应用程序指定环境变量时,必须同时向 AWS SAM 模板( AWS SAM 模板中环境变量的格式化示例:
|
|
为作为输入提供给 Lambda 函数的事件负载提供两个选项。
|
|
指定为运行一个已调用 Lambda 函数所提供的内存 [以兆字节(MB)为单位]。 |
|
指定 Lambda 函数使用的运行时系统。有关更多信息,请参阅 AWS Lambda 运行时。 |
|
设置调试会话超时之前的允许时间(以秒为单位)。 |
|
指定本地代码在容器中的运行位置。 默认情况下,Toolkit for VS Code 将
注意事项:
|
Toolkit for VS Code 扩展使用 AWS SAM CLI 在本地构建和调试无服务器应用程序。您可以使用 launch.json
文件中的 "sam"
配置属性来配置 AWS SAM CLI 命令的行为。
属性 | 描述 | 默认值 |
---|---|---|
|
配置 |
空字符串 |
|
指示是否在类似于 Lambda 的 Docker 容器内构建函数。 |
|
|
Lambda Docker 容器应连接到的现有 Docker 网络的名称或 ID,以及默认桥接网络。如果未指定此项,Lambda 容器将仅连接到默认的桥接 Docker 网络。 |
空字符串 |
|
指定其他本地调用参数。 |
空字符串 |
|
指定命令是否应跳过下拉最新 Docker 镜像获取 Lambda 运行时的操作。 |
|
|
通过使用参数输入客户值来对您的 AWS SAM 模板进行自定义。有关更多信息,请参阅《AWS CloudFormation 用户指南》中的参数。 |
|
属性 | 描述 | 默认值 |
---|---|---|
|
从凭证文件中选择一个特定的配置文件(如 |
现有的 共享 AWS 配置文件或共享 AWS 凭证文件 向 Toolkit for VS Code 提供的 AWS 凭证。 |
|
设置服务的 AWS 区域(如 us-east-1)。 |
与活动凭证配置文件关联的默认 AWS 区域。 |
示例:模板启动配置
以下是 AWS SAM 模板目标的启动配置文件示例:
{ "configurations": [ { "type": "aws-sam", "request": "direct-invoke", "name": "my-example:HelloWorldFunction", "invokeTarget": { "target": "template", "templatePath": "template.yaml", "logicalId": "HelloWorldFunction" }, "lambda": { "payload": {}, "environmentVariables": {} } } ] }
示例:代码启动配置
以下是 Lambda 函数目标的启动配置文件示例:
{ "configurations": [ { "type": "aws-sam", "request": "direct-invoke", "name": "my-example:app.lambda_handler (python3.7)", "invokeTarget": { "target": "code", "projectRoot": "hello_world", "lambdaHandler": "app.lambda_handler" }, "lambda": { "runtime": "python3.7", "payload": {}, "environmentVariables": {} } } ] }