Serverless plugin to generate AWS CloudWatch dashboard for deployed lambdas
Requirements:
- Serverless v1.12.x or higher
- AWS provider
Install via npm in the root of your Serverless service:
npm install serverless-plugin-cloudwatch-dashboardAdd the plugin to the plugins array of your Serverless service in serverless.yml:
plugins:
- serverless-plugin-cloudwatch-dashboardThe plugin can be configured by adding a property called dashboard to the custom properties of the Serverless
service. Following dashboards are currently supported:
The configuration can specify the lambda metrics together with the stats of the metrics to
be added. The plugin will then generate one dashboard for each metric, with each dashboard containing the
specified statistics for each lambda function.
Lambda dashboards can be globally activated/deactivated for all functions by adding an enabled flag to the configuration.
This is the minimum required configuration:
dashboard:
lambda:
enabled: trueThe default configuration looks like this:
dashboard:
lambda:
metrics: [ Duration, Errors, Invocations, Throttles ]
stats: [p99, p95, p90, p50]
enabled: trueTo gain maximum control over which functions to be included, you can disable lambda dashboards globally,
dashboard:
lambda:
enabled: falseand enable it only for specific functions, by setting the dashboard flag for those functions to true:
functions:
myFunction:
handler: some_handler
dashboard: trueThe configuration can specify the metrics for DynamoDB Tables and GlobalSecondaryIndexes to be added. The plugin will
then generate a new dashboard containing one widget for each metric.
DynamoDB dashboards can be globally activated/deactivated for all tables by adding an enabled flag to the
configuration.
This is the minimum required configuration:
dashboard:
dynamoDB:
enabled: trueThe default configuration looks like this:
dashboard:
dynamoDB:
enabled: true
metrics:
- ProvisionedReadCapacityUnits
- ConsumedReadCapacityUnits
- ProvisionedWriteCapacityUnits
- ConsumedWriteCapacityUnitsAny contribution is more than welcome.
- Clone the code
- Install the dependencies with
npm install - Create a feature branch
git checkout -b new_feature - Lint with standard
npm run lint - Create a pull request
This software is released under the MIT license. See the license file for more details.
