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

statful-collector-aws

Package Overview
Dependencies
Maintainers
5
Versions
5
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

statful-collector-aws

AWS Cloudwatch collector for Statful

  • 1.2.0
  • Source
  • npm
  • Socket score

Version published
Maintainers
5
Created
Source

Statful Collector AWS

NPM version Build Status

Staful Collector AWS built in NodeJS. This is intended to collect metrics from AWS CloudWatch and send them to Statful.

Table of Contents

Supported NodeJS Versions

Statful Collector AWS VersionTested NodeJS versions
1.1.x4
1.2.x6.9.2, 10.9.0 and Stable

Installation

$ npm install -g statful-collector-aws

Quick start

After installing Statful Collector AWS you are ready to use it. The quickest way is to do the following:

$ statful-collector-aws generate-config /etc/statful-collector-aws/conf/

# Update some info in the statful-collector-aws-conf.json: accessKeyId, secretAccessKey and the statful api token

$ statful-collector-aws start /etc/statful-collector-aws/conf/statful-collector-aws-conf.json

Examples

You can find here some useful usage examples of the Statful Collector AWS. In the following examples are assumed you have already installed the collector globally and followed the Quick Start.

Collect a list of metrics

{
  "statfulCollectorAws": {
    ... ,
    "period": 60,
    "statistics": ["SampleCount", "Average", "Sum", "Minimum", "Maximum"],
    "metricsList": {
      "type": "white",
      "metricsPerRegion": {
        "us-west-2": [
          {
            "Namespace": "AWS/ELB"
          },
          {
            "Namespace": "AWS/AutoScaling",
            "MetricName": "GroupMinSize"
          },
          {
            "Namespace": "AWS/AutoScaling",
            "MetricName": "GroupMaxSize"
          },
          {
            "Namespace": "AWS/AutoScaling",
            "MetricName": "GroupStandbyInstances"
          }
        ]
      }
    },
    ...
  },
  ...
}

Collect a metric with different dimensions

{
  "statfulCollectorAws": {
    ... ,
    "period": 60,
    "statistics": ["SampleCount", "Average", "Sum", "Minimum", "Maximum"],
    "metricsList": {
      "type": "white",
      "metricsPerRegion": {
        "us-west-2": [
          {
            "Namespace": "AWS/ELB"
          },
          {
            "Namespace": "AWS/Billing",
            "MetricName": "EstimatedCharges",
            "Dimensions": [
            	{
            		"Name": "ServiceName",
            		"Value": "Service1"
            	},
            	{
            		"Name": "ServiceName",
            		"Value": "Service12"
            	},
            	{
            		"Name": "Currency",
            		"Value": "USD"
            	},
            	{
            		"Name": "Currency",
            		"Value": "EUR"
            	}
            ]
          }
        ]
      }
    },
    ...
  },
  ...
}

Collect metrics from more than one region

{
  "statfulCollectorAws": {
    ... ,
    "period": 300,
    "statistics": ["SampleCount", "Average", "Sum", "Minimum", "Maximum"],
    "metricsList": {
      "type": "white",
      "metricsPerRegion": {
      	"eu-central-1": [
          {
            "Namespace": "AWS/Billing"
          }
        ],
      	"us-west-1": [
          {
            "Namespace": "AWS/Billing"
          }
        ],
        "us-west-2": [
          {
            "Namespace": "AWS/Billing"
          }
        ]
      }
    },
    ...
  },
  ...
}

Reference

Detailed reference if you want to take full advantage from Statful Collector AWS.

CLI

$ statful-collector-aws generate-config <path>

Creates a default configuration at the given path. If the given path doesn't exists, it will be created.

$ statful-collector-aws start <path>

Starts the collector with the config on given path.

$ statful-collector-aws start-managed <path>

Starts the collector managed by pm2 with the config on given path.

$ statful-collector-aws stop-managed

Stops the collector managed by pm2.

$ statful-collector-aws restart-managed

Restarts the collector managed by pm2.

$ statful-collector-aws help

Shows a small help for the collector.

Configuration

In the configuration file you can find 3 main sections: statfulCollectorAws, bunyan, statfulClient.

StatfulCollectorAWS

OptionDescriptionTypeDefaultRequired
credentialsDefines the credentials to access AWS.objectnoneYES
periodDefines the global output level in seconds.

Valid Periods: 60, 120, 180, 300
number60YES
statisticsDefine the statistcs for which data should be collected.

Valid Statistics: SampleCount, Average, Sum, Minimum, Maximum
array["SampleCount", "Average", "Sum", "Minimum", "Maximum"]YES
metricsListDefines metrics to collect from AWS. Here you should only configure the metricsPerRegion which is an object organized by AWS region. Inside each region you should set a list of metrics object to collect. Each metric object supports a Namespace, MetricName and Dimensions.
Please check the AWS documentation (AWS Metric Reference and Amazon CloudWatch Namespaces, Dimensions, and Metrics Reference) and the Examples section to get more information about the metrics object.
objectnoneYES
signalsDefines the proccess signals for which collector should be stopped. Any valid NodeJS signal can be added.array["SIGTERM", "SIGINT", "SIGABRT", "SIGUSR2"]YES

Bunyan

OptionDescriptionTypeDefaultRequired
nameDefines the logger name.stringnoneYES
levelDefines the global output level.stringnoneNO
streamsDefine the logger streams. By default, when the value is an empty array, logger will output to proccess.stdout.array[]YES

NOTE: We had only documented some bunyan config fields here but you can set all the supported configs by Bunyan.

To get more information please read the Bunyan documentation.

StatfulClient

To get help and information about this specific client please read the Statful Client NodeJS documentation.

Authors

Mindera - Software Craft

License

Statful Collector AWS is available under the MIT license. See the LICENSE file for more information.

Keywords

FAQs

Package last updated on 08 Jan 2019

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