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 theskyscrapers/terraform-kinesis
module.lambda_function
: Creates the alerts for lambda functions.
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
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 |
Creates the alerts needed for a DynamoDB table.
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 |
Creates the alerts needed for a ElasticSearch domain.
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 |
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
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 |
Creates the alerts for Lambda functions.
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 |