Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

serverless-cloudwatch-dashboard-plugin

Package Overview
Dependencies
Maintainers
1
Versions
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

serverless-cloudwatch-dashboard-plugin

A serverless plugin for generating a cloudwatch dashboard with widgets for the resources defined in the serverless.yml file.

  • 1.0.0
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
1
Maintainers
1
Weekly downloads
 
Created
Source

serverless-cloudwatch-dashboard

A serverless plugin for generating a cloudwatch dashboard with widgets for the resources defined in the serverless.yml file.

Install

Npm package coming soon.

Usage

serverless.yml

In the serverless.yml file the plugin needs to be added.

plugins:
  - serverless-cloudwatch-dashboard

This will add the plugin and dashboards will be created. If you want to configure the widgets that are created, you will in addition need to add a custom config. This must be done under the custom property.

custom:
  serverless-cloudwatch-dashboard:
    dynamodb:
      metrics:
        - ReturnedBytes

If you don't specify the metrics it will use default metrics for the resource. The defaults is listed below.

Supported resources

Lambda

The functions that are created by serverless is fully supported. The following metrics are supported:

  • Invocations
  • Errors
  • Dead Letter Errors
  • Duration
  • Throttles
  • IteratorAge
  • ConcurrentExceptions
  • UnreservedConcurrentExceptions

Defaults:

  • Invocations
  • Errors
  • Duration

To view documentation on the metrics, please see the official AWS documentation here:
https://docs.aws.amazon.com/lambda/latest/dg/monitoring-functions-metrics.html

DynamoDb

DynamoDb is fully supported. The following metrics are supported:

  • ConditionalCheckFailedRequests
  • ConsumedReadCapacityUnits
  • ConsumedWriteCapacityUnits
  • ReadThrottleEvents
  • ReturnedBytes
  • ReturnedItemCount
  • ReturnedRecordsCount
  • SuccessfulRequestLatency
  • SystemErrors
  • TimeToLiveDeletedItemCount
  • ThrottledRequests
  • UserErrors
  • WriteThrottleEvent

Defaults:

  • ConsumedReadCapacityUnits
  • ConsumedWriteCapacityUnits

To view documentation on the metrics, please see the official AWS documentation here: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/dynamo-metricscollected.html

EC2

EC2 is fully supported. Please note that not all metrics is available for all instances. Please consult official documentation on which metrics that are available for which instance. These metrics are supported:

  • CPUCreditUsage
  • CPUCreditBalance
  • CPUSurplusCreditBalance
  • CPUSurplusCreditsCharged
  • CPUUtilization
  • DiskReadOps
  • DiskWriteOps
  • DiskReadBytes
  • DiskWriteBytes
  • NetworkIn
  • NetworkOut
  • NetworkPacketsIn
  • NetworkPacketsOut
  • EBSReadOps
  • EBSWriteOps
  • EBSReadBytes
  • EBSWriteBytes
  • EBSIOBalance%
  • EBSByteBalance%

Defaults:

  • CPUUtilization

To view documentation on the metrics, please see the official AWS documentation here: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/ec2-metricscollected.html

S3

S3 is fully supported. The following metrics are supported:

  • BucketSizeBytes
  • NumberOfObjects
  • AllRequests
  • GetRequests
  • PutRequests
  • DeleteRequests
  • HeadRequests
  • PostRequests
  • SelectRequests
  • ListRequests
  • BytesDownloaded
  • BytesUploaded
  • 4xxErrors
  • 5xxErrors
  • FirstByteLatency
  • TotalRequestLatency

Defaults:

  • GetRequests
  • PutRequests

To view documentation on the metrics, please see the official AWS documentation here: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/s3-metricscollected.html

Example

Example yaml file.

service: test

frameworkVersion: ">=1.1.0"

custom:
  bucket: test 
  serverless-cloudwatch-dashboard:
    dynamodb:
      metrics:
        - ReturnedBytes
plugins:
  - serverless-cloudwatch-dashboard

provider:
  name: aws
  runtime: nodejs4.3
  stage: dev
  region: eu-west-1
  iamRoleStatements:
    - Effect: Allow
      Action:
        - s3:PutObject
      Resource: "arn:aws:s3:::${self:custom.bucket}/*"

functions:
  save:
    handler: handler.save
    environment:
      BUCKET: ${self:custom.bucket}
resources:
  Resources:
    ec2:
      Type: AWS::EC2::Instance
      Properties: 
        InstanceType: t2.micro
        ImageId: ami-7dbc4004
    testtable:
      Type: AWS::DynamoDB::Table
      Properties:
        AttributeDefinitions:
          - AttributeName: firstName
            AttributeType: S
        KeySchema:
          - AttributeName: firstName
            KeyType: HASH
        ProvisionedThroughput:
          ReadCapacityUnits: 1
          WriteCapacityUnits: 1
        TableName: test
    tests3:
      Type: AWS::S3::Bucket
      Properties: 
        BucketName: somebucket

Current limitations

  • You must specify table name or bucket name when defining s3/dynamodb resources.
  • It is not possible to have different metrics for different resources of the same type.
  • A lot of resources is not supported.
  • It's impossible to customize the layout of the dashboard. Some of these issues may be resolved in the future.

If you find a bug, please add it to the issues on github.

FAQs

Package last updated on 11 Jun 2018

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc