serverless / serverless/serverless
Deploy of new service with tracing.apiGateway enabled fails
Open
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 46.9k
- Forks
- 5.7k
- Avg merge
- 10h 7m
- Merged PRs (30d)
- 57
Description
This is a Bug Report
Description
Trying to deploy a new service with tracing.apiGateway enabled fails:
An error occurred: ApiGatewayUsagePlan - API Stage not found: ...:dev (Service: AmazonApiGateway; Status Code: 404; Error Code: NotFoundException; Request ID: ...).
serverless.yaml:
service: some-service
provider:
name: aws
tracing:
lambda: true
apiGateway: true
layers:
- some-layer
runtime: nodejs8.10
logRetentionInDays: 30
apiKeys:
- ${self:service}-${self:provider.stage}
plugins:
- serverless-prune-plugin
- serverless-offline
- serverless-log-forwarding
functions:
...
stacktrace:
ServerlessError: An error occurred: ApiGatewayUsagePlan - API Stage not found: ...:dev (Service: AmazonApiGateway; Status Code: 404; Error Code: NotFoundException; Request ID: ...).
at provider.request.then (/usr/lib/node_modules/serverless/lib/plugins/aws/lib/monitorStack.js:118:33)
From previous event:
at AwsDeploy.monitorStack (/usr/lib/node_modules/serverless/lib/plugins/aws/lib/monitorStack.js:31:12)
at provider.request.then (/usr/lib/node_modules/serverless/lib/plugins/aws/lib/updateStack.js:105:30)
From previous event:
at AwsDeploy.update (/usr/lib/node_modules/serverless/lib/plugins/aws/lib/updateStack.js:105:8)
From previous event:
at AwsDeploy.BbPromise.bind.then (/usr/lib/node_modules/serverless/lib/plugins/aws/lib/updateStack.js:122:12)
From previous event:
at AwsDeploy.updateStack (/usr/lib/node_modules/serverless/lib/plugins/aws/lib/updateStack.js:116:8)
From previous event:
at AwsDeploy.BbPromise.bind.then (/usr/lib/node_modules/serverless/lib/plugins/aws/deploy/index.js:127:39)
From previous event:
at Object.aws:deploy:deploy:updateStack [as hook] (/usr/lib/node_modules/serverless/lib/plugins/aws/deploy/index.js:123:10)
at BbPromise.reduce (/usr/lib/node_modules/serverless/lib/classes/PluginManager.js:408:55)
From previous event:
at PluginManager.invoke (/usr/lib/node_modules/serverless/lib/classes/PluginManager.js:408:22)
at PluginManager.spawn (/usr/lib/node_modules/serverless/lib/classes/PluginManager.js:426:17)
at AwsDeploy.BbPromise.bind.then (/usr/lib/node_modules/serverless/lib/plugins/aws/deploy/index.js:93:48)
From previous event:
at Object.deploy:deploy [as hook] (/usr/lib/node_modules/serverless/lib/plugins/aws/deploy/index.js:89:10)
at BbPromise.reduce (/usr/lib/node_modules/serverless/lib/classes/PluginManager.js:408:55)
From previous event:
at PluginManager.invoke (/usr/lib/node_modules/serverless/lib/classes/PluginManager.js:408:22)
at PluginManager.run (/usr/lib/node_modules/serverless/lib/classes/PluginManager.js:439:17)
at variables.populateService.then (/usr/lib/node_modules/serverless/lib/Serverless.js:109:33)
at runCallback (timers.js:763:18)
at tryOnImmediate (timers.js:734:5)
at processImmediate (timers.js:716:5)
at process.topLevelDomainCallback (domain.js:102:23)
From previous event:
at Serverless.run (/usr/lib/node_modules/serverless/lib/Serverless.js:96:6)
at serverless.init.then (/usr/lib/node_modules/serverless/bin/serverless:43:28)
at /usr/lib/node_modules/serverless/node_modules/graceful-fs/graceful-fs.js:111:16
at /usr/lib/node_modules/serverless/node_modules/graceful-fs/graceful-fs.js:45:10
at FSReqWrap.oncomplete (fs.js:153:20)
From previous event:
at initializeErrorReporter.then (/usr/lib/node_modules/serverless/bin/serverless:43:6)
at runCallback (timers.js:763:18)
at tryOnImmediate (timers.js:734:5)
at processImmediate (timers.js:716:5)
at process.topLevelDomainCallback (domain.js:102:23)
From previous event:
at /usr/lib/node_modules/serverless/bin/serverless:28:46
at Object.<anonymous> (/usr/lib/node_modules/serverless/bin/serverless:65:4)
at Module._compile (internal/modules/cjs/loader.js:654:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:665:10)
at Module.load (internal/modules/cjs/loader.js:566:32)
at tryModuleLoad (internal/modules/cjs/loader.js:506:12)
at Function.Module._load (internal/modules/cjs/loader.js:498:3)
at Function.Module.runMain (internal/modules/cjs/loader.js:695:10)
at startup (internal/bootstrap/node.js:201:19)
at bootstrapNodeJSCore (internal/bootstrap/node.js:516:3)
without apiGateway: true it works.
Additional Data
- Serverless Framework Version you're using: 1.41.1
- Operating System: Fedora 29
- Stack Trace:
- Provider Error messages:
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the deployment from the shown serverless.yaml with tracing.apiGateway enabled, then read lib/plugins/aws/lib/monitorStack.js and updateStack.js, the entry points in the stack trace. Trace how the API Gateway stage and usage plan are handled during deployment. Done means a new service deploys successfully with apiGateway tracing enabled.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- aws, javascript, node.js
- Domain
- api, cloud
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100