搭配Localstack使用Serverless Framework部署失败,在哪里查看错误输出?
解决方案
- 开启Serverless部署调试日志
部署时添加verbose/debug参数输出全量日志,直接在终端查看完整错误信息:
你收到的AWS控制台链接是Serverless默认生成的真实AWS环境地址,对接Localstack时可以直接忽略该链接。sls deploy --verbose # 如需更细粒度的调试日志可使用 sls deploy --debug - 查看Localstack运行日志
如果你是用Docker启动Localstack,直接查看容器日志即可获取服务端处理请求的错误详情,启动Localstack时如果开启了DEBUG=1环境变量,日志会包含更完整的请求参数和错误堆栈:docker logs <你的Localstack容器名称/ID> - 用AWS CLI对接Localstack查询CloudFormation栈事件
把AWS CLI的请求地址指向Localstack默认端口,即可查询到和AWS控制台展示内容完全一致的栈部署事件,资源创建失败的具体原因会在ResourceStatusReason字段展示:aws cloudformation describe-stack-events --stack-name pond5-api-local --endpoint-url=http://localhost:4566 - 校验Localstack对接配置
先确认你已经安装了serverless-localstack插件,且配置了正确的对接参数,避免请求误发到真实AWS环境:
部署时需要指定对应stage触发Localstack对接逻辑:plugins: - serverless-localstack custom: localstack: stages: - local # 仅在local stage对接Localstack host: http://localhost edgePort: 4566sls deploy --stage local
内容的提问来源于stack exchange,提问作者AnonymousAlias
相关产品推荐
相关产品推荐

