AWS SAM CLI 备忘单!

安装 AWS SAM CLI

ax 复制代码
brew tap aws/tap 
brew 安装 aws-sam-cli

验证安装

ax 复制代码
$ sam --version

升级 SAM

ax 复制代码
$ brew upgrade aws-sam-cli

您需要 AWS 凭证才能在 AWS 上工作。

构建并部署简单应用程序

$ sam init→ 下载示例应用程序

$ sam build→ 构建您的应用程序

$ sam deploy --guided → 部署您的应用程序

$ sam local start-api → 在本地托管您的 API

$ sam local invoke "HelloWorldFunction" -e events/event.json→ 直接调用您的 Lambda 函数。

$ sam package→ 打包 SAM 应用程序。

$ sam publish→ 将 AWS SAM 应用程序发布到 AWS 无服务器应用程序存储库。

$ sam validate→ 验证 AWS SAM 模板文件是否有效。

$ sam local invoke --env-vars env.json "HelloWorldFunction"→ 为 lambda 函数提供环境变量

日志记录

$ sam logs -n HelloWorldFunction --stack-name mystack→ 通过 AWS CloudFormation 堆栈获取日志

$ sam logs -n HelloWorldFunction→ 使用函数名称获取日志。

$ sam logs -n HelloWorldFunction ---- stack-name mystack ---- filter "error" → 过滤日志

生成示例事件

$ sam local generate-event s3 delete→ 为 s3 put 操作生成示例事件

示例事件如下所示:

ax 复制代码
{
  "Records": [
    {
      "eventVersion": "2.0",
      "eventSource": "aws:s3",
      "awsRegion": "us-east-1",
      "eventTime": "1970-01-01T00:00:00.000Z",
      "eventName": "ObjectCreated:Put",
      "userIdentity": {
        "principalId": "EXAMPLE"
      },
      "requestParameters": {
        "sourceIPAddress": "127.0.0.1"
      },
      "responseElements": {
        "x-amz-request-id": "EXAMPLE123456789",
        "x-amz-id-2": "EXAMPLE123/5678abcdefghijklambdaisawesome/mnopqrstuvwxyzABCDEFGH"
      },
      "s3": {
        "s3SchemaVersion": "1.0",
        "configurationId": "testConfigRule",
        "bucket": {
          "name": "example-bucket",
          "ownerIdentity": {
            "principalId": "EXAMPLE"
          },
          "arn": "arn:aws:s3:::example-bucket"
        },
        "object": {
          "key": "test/key",
          "size": 1024,
          "eTag": "0123456789abcdef0123456789abcdef",
          "sequencer": "0A1B2C3D4E5F678901"
        }
      }
    }
  ]
}

AWS SAM CLI 配置文件

默认文件名为samconfig.toml

下面是一个示例配置文件,其中包含default环境和deploy命令的七个参数:

Clean Up清理

复制代码
$ aws cloudformation delete-stack --stack-name sam-app --region region
相关推荐
知已难寻5 小时前
03 · OpenStack的计算管理 Nova
运维·服务器·开发语言·云原生·云计算·openstack·开源软件
会议咨询15 小时前
2027年云计算、机电一体化与电子通信国际会议(CMEC 2027)
云计算·机电一体化·电子通信
云老大-阿里云国际站代理商16 小时前
阿里云国际站服务代理商:CDN出现404,ECS源站正常怎么排查?
阿里云·云计算
tg_xianheyun17 小时前
腾讯云国际账号注册代充值服务商怎么选?重点核对哪些信息
云计算·腾讯云
rich_Chan.1 天前
【2026 实操】bl video edit 教程:已拍素材改风格换颜色全流程,含输出规格、角标自查
人工智能·ai·云计算·aigc
loulanyue_2 天前
从沙箱隔离到统一运营:腾讯云Agent工程全景解密AgentHosting、AgentCFS与TeamAI开源——读2026全球数字生态大会实录
开源·云计算·腾讯云
主机哥哥2 天前
2026年阿里云双十一大促活动详细解读
阿里云·云计算
杰克说2 天前
人工智能前沿部署工程师(FDE),第五章·管理端·企业后台与WMA配置实战
人工智能·云计算·腾讯云·fde
运维行者_3 天前
供应链安全成最大风险源,企业如何构建可控的运维体系?
运维·开发语言·网络·数据库·安全·云计算·流量监控
静以修身zzz3 天前
计算云服务
运维·网络·云计算