我有一个 AWS SAM 模板,并且我引用了一个 Swagger 文件作为 API 配置。我正在尝试为此 API 启用日志记录和跟踪。找不到具有此配置的资源。也不确定这些enabling logs and tracing
是模板还是 Swagger 文件中的内容。
有什么帮助吗?
我有一个 AWS SAM 模板,并且我引用了一个 Swagger 文件作为 API 配置。我正在尝试为此 API 启用日志记录和跟踪。找不到具有此配置的资源。也不确定这些enabling logs and tracing
是模板还是 Swagger 文件中的内容。
有什么帮助吗?
我相信 api gateway 下的MethodSettings属性可以帮助你
Type: AWS::Serverless::Api
Properties:
EndpointConfiguration: REGIONAL
MethodSettings:
- LoggingLevel: ERROR # ERROR/INFO level logging
ResourcePath: '/*' # allows for logging on any resource
HttpMethod: '*' # allows for logging on any method
DataTraceEnabled: true # enabling Log full requests/responses data in console
MetricsEnabled: true # Enable detailed metrics (error 404, latence, ...)
没错,没有通过 Swagger 启用日志的选项。Swagger 只允许您定义 REST API 的结构 - 资源、集成、映射等。此外,Swagger 可用于定义任何 REST API;不仅仅是亚马逊 API 网关。因此,您可以选择在特定于 API Gateway 的属性(即Stage )上启用日志。
如果您通过 CloudFormation 或其他自动化方式创建 API,则需要为您的 API 创建部署。将此部署关联到 API Gateway 阶段后,您可以配置登录设置。例如,对于 CloudFormation,您将使用AWS::ApiGateway::Deployment StageDescription
. 查看此链接了解详情。