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
相关推荐
九河云3 小时前
如何选择适合的加密方法来保护云计算中的数据
网络·科技·物联网·金融·云计算
博睿谷IT99_6 小时前
Linux 云计算核心技术:原理、组件与 K8s 实战部署
linux·kubernetes·云计算
qq_3391911410 小时前
aws docker安装,ec2安装docker-compose
docker·云计算·aws
电话交换机IPPBX-3CX10 小时前
电话交换机IPPBX的数据存储在AWS亚马逊云
aws·ip pbx·电话交换机
qq_3391911414 小时前
aws ec服务器统一为国内时间。ec 设置上海
服务器·云计算·aws
AKAMAI1 天前
云成本困境:开支激增正阻碍欧洲AI创新
人工智能·云原生·云计算
@HNUSTer1 天前
基于 GEE 的 Sentinel-2 光谱、指数、纹理特征提取与 Sentinel-1 SAR 数据处理
云计算·sentinel·数据集·遥感大数据·gee·云平台·sar
字节跳动视频云技术团队1 天前
多媒体实验室画质理解大模型Q-Insight入选NeurIPS 2025 Spotlight
云计算·视频编码
坐吃山猪1 天前
阿里云智能集团首席技术官云栖大会要点总结
阿里云·云计算
容器魔方1 天前
Volcano v1.13 重磅发布!大模型训练与推理等调度能力全面增强
云原生·容器·云计算