无服务器API网关日志记录

问题描述

对于任何可以帮助的人,

我正在尝试使无服务器的aws API网关日志正常工作,但是没有乐趣,我有多个端点,当我部署代码时,在创建每个端点的cloudwatch中的日志组时会创建但查询时不会创建日志或日志流端点。下面的代码用于定义日志记录的一个端点。

我注意到在aws api网关中的阶段下->日志/跟踪没有单击启用的Cloudwatch日志。当我手动单击它时,日志记录将起作用,但会进入通用的cloudwatch日志组。

provider:
  name: aws
  runtime: nodejs12.x
  region: us-west-1
  apiGateway:
    restApiId:
      “Fn::ImportValue”: SharedGW-restApiId
    restApiRootResourceId:
      “Fn::ImportValue”: SharedGW-rootResourceId
  logs:
    restApi:
      accessLogging: true
      format: ‘requestId: $context.requestId’
      executionLogging: true
      role: arn:aws:iam::1234567890:role/Test-Logs-Gateway
      roleManagedExternally: true
      level: INFO
      fullExecutionData: true

解决方法

您似乎正在导入API网关,应该在创建api网关的位置添加该配置。