GithubHelp home page GithubHelp logo

skyscrapers / terraform-cloudwatch Goto Github PK

View Code? Open in Web Editor NEW
1.0 4.0 2.0 24 KB

Terraform module that configures pre-defined cloudwatch alerts for the provided resources and pushes them to SNS

License: Apache License 2.0

HCL 100.00%
terraform terraform-module terraform-modules aws-cloudwatch aws-dynamodb aws-kinesis aws-apigateway aws-lambda

terraform-cloudwatch's Introduction

terraform-cloudwatch

N.B. Releases >= 2.0.0 been upgraded to use Terraform 0.12.n.

Terraform module to setup cloudwatch alerts and push them to SNS. This repository contains the following modules:

  • api-gateway: Creates general alerts for the api-gateway.
  • dynamodb: Creates the alerts needed for a dynamodb table.
  • kinesis: Creates alerts for a kinesis stream. This is used in the skyscrapers/terraform-kinesis module.
  • lambda_function: Creates the alerts for lambda functions.

API-Gateway

Creates general alerts for the API-Gateway.

N.B. Releases >= 2.0.0 the 5XXError... variables are now fiveXXError... as variables cannot start with a number.

The following resources are created:

  • Cloudwatch alerts for the API-Gateway that was passed as variable

Available variables

Name Description Type Default Required
fiveXXError_error_period The period in seconds over which the specified stat is applied. string "60" no
fiveXXError_evaluation_periods The number of periods over which data is compared to the specified threshold. string "1" no
fiveXXError_threshold The value against which the specified statistic is compared. string "5" no
api_gateway Name of the API Gateway to monitor string n/a yes
integrationlatency_error_period The period in seconds over which the specified stat is applied. string "60" no
integrationlatency_evaluation_periods The number of periods over which data is compared to the specified threshold. string "2" no
integrationlatency_threshold The value against which the specified statistic is compared. string "5000" no
latency_error_period The period in seconds over which the specified stat is applied. string "60" no
latency_evaluation_periods The number of periods over which data is compared to the specified threshold. string "2" no
latency_threshold The value against which the specified statistic is compared. string "5000" no
sns_topic_arn ARN of the SNS topic you want the alerts to be sent to string n/a yes

DynamoDB

Creates the alerts needed for a DynamoDB table.

Available variables

Name Description Type Default Required
dynamodb_table_name Name of the dynamodb table to monitor string n/a yes
dynamodb_throttle_evaluation_periods The period in seconds over which the specified stat is applied. string "1" no
dynamodb_throttle_period The number of periods over which data is compared to the specified threshold. string "60" no
dynamodb_throttle_threshold The value against which the specified statistic is compared. string "0" no
sns_topic_arn ARN of the SNS topic you want the alerts to be sent to string n/a yes

ElasticSearch

Creates the alerts needed for a ElasticSearch domain.

Available variables

Name Description Type Default Required
cpu_utilization_threshold The maximum percentage of CPU utilization string "95" no
elasticsearch_cluster_name Name of the ElasticSearch cluster to monitor string n/a yes
free_storage_space_threshold The minimum amount of available storage space in MegaByte. string "512" no
jvm_memory_pressure_threshold The maximum percentage of the Java heap used for all data nodes in the cluster string "95" no
sns_topic_arn ARN of the SNS topic you want the alerts to be sent to string n/a yes

Kinesis

Creates alerts for a Kinesis stream. This is used in the skyscrapers/terraform-kinesis module.

The following resources are created:

  • Cloudwatch alerts for the kinesis stream that was passed as variable

Available variables

Name Description Type Default Required
kinesis_iterator_age_error_evaluation_periods The number of periods over which data is compared to the specified threshold. string "1" no
kinesis_iterator_age_error_period The period in seconds over which the specified stat is applied. string "300" no
kinesis_iterator_age_error_threshold The value against which the specified statistic is compared. string "1000000" no
kinesis_stream_name Name of the kinesis stream to monitor string n/a yes
kinesis_write_throughput_exceeded_evaluation_periods The number of periods over which data is compared to the specified threshold. string "6" no
kinesis_write_throughput_exceeded_period The period in seconds over which the specified stat is applied. string "300" no
kinesis_write_throughput_exceeded_threshold The value against which the specified statistic is compared. string "10" no
sns_topic_arn ARN of the SNS topic you want the alerts to be sent to string n/a yes

lambda_function

Creates the alerts for Lambda functions.

Available variables

Name Description Type Default Required
lambda_function Name of the lambda function to monitor string n/a yes
lambda_invocation_error_evaluation_periods The number of periods over which data is compared to the specified threshold. string "1" no
lambda_invocation_error_period The period in seconds over which the specified stat is applied. string "60" no
lambda_invocation_error_threshold The value against which the specified statistic is compared. string "5" no
lambda_invocation_error_treat_missing_data Sets how this alarm is to handle missing data points. string "missing" no
lambda_iterator_age_error_evaluation_periods The number of periods over which data is compared to the specified threshold. string "1" no
lambda_iterator_age_error_period The period in seconds over which the specified stat is applied. string "60" no
lambda_iterator_age_error_threshold The value against which the specified statistic is compared. string "1000000" no
lambda_throttle_error_evaluation_periods The number of periods over which data is compared to the specified threshold. string "1" no
lambda_throttle_error_period The period in seconds over which the specified stat is applied. string "60" no
lambda_throttle_error_threshold The value against which the specified statistic is compared. string "0" no
sns_topic_arn ARN of the SNS topic you want the alerts to be sent to string n/a yes

terraform-cloudwatch's People

Contributors

duboisph avatar iuriaranda avatar komorebi-e avatar simonrondelez avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.