diff --git a/database/redis/README.md b/database/redis/README.md index 1de21cf..1cad5cc 100644 --- a/database/redis/README.md +++ b/database/redis/README.md @@ -1,10 +1,10 @@ -# DATABASES REDIS DataDog monitors +# DATABASE REDIS DataDog monitors ## How to use this module ``` -module "datadog-monitors-databases-redis" { - source = "git::ssh://git@bitbucket.org/morea/terraform.feature.datadog.git//databases/redis?ref={revision}" +module "datadog-monitors-database-redis" { + source = "git::ssh://git@bitbucket.org/morea/terraform.feature.datadog.git//database/redis?ref={revision}" environment = "${var.environment}" message = "${module.datadog-message-alerting.alerting-message}" @@ -16,15 +16,15 @@ module "datadog-monitors-databases-redis" { Creates DataDog monitors with the following checks: -- Redis too many evicted keys -- Redis too many expired keys -- Redis too many blocked clients +- Redis evicted keys +- Redis expired keys +- Redis blocked clients - Redis keyspace seems full (no changes since ${var.keyspace_timeframe}) -- Redis too many ram memory used -- Redis memory ram fragmented -- Redis too many rejected connections -- Redis latency is too high -- Redis hitrate is too low +- Redis memory used +- Redis memory fragmented +- Redis rejected connections +- Redis latency +- Redis hitrate - Redis does not respond ## Inputs diff --git a/database/redis/modules.tf b/database/redis/modules.tf new file mode 100644 index 0000000..48011c6 --- /dev/null +++ b/database/redis/modules.tf @@ -0,0 +1,8 @@ +module "filter-tags" { + source = "../../common/filter-tags" + + environment = "${var.environment}" + resource = "redis" + filter_tags_use_defaults = "${var.filter_tags_use_defaults}" + filter_tags_custom = "${var.filter_tags_custom}" +} diff --git a/database/redis/monitors-redis.tf b/database/redis/monitors-redis.tf index d0c8cac..7fd438c 100644 --- a/database/redis/monitors-redis.tf +++ b/database/redis/monitors-redis.tf @@ -1,18 +1,10 @@ -data "template_file" "filter" { - template = "$${filter}" - - vars { - filter = "${var.filter_tags_use_defaults == "true" ? format("dd_monitoring:enabled,dd_redis:enabled,env:%s", var.environment) : "${var.filter_tags_custom}"}" - } -} - resource "datadog_monitor" "evicted_keys" { name = "[${var.environment}] Redis evicted keys {{#is_alert}}{{{comparator}}} {{threshold}}% (+{{value}}%){{/is_alert}}{{#is_warning}}{{{comparator}}} {{warn_threshold}}% (+{{value}}%){{/is_warning}}" message = "${coalesce(var.evictedkeys_change_message, var.message)}" query = < ${var.evictedkeys_change_threshold_critical} EOL @@ -52,7 +44,7 @@ resource "datadog_monitor" "expirations" { query = < ${var.expirations_rate_threshold_critical} EOL @@ -92,8 +84,8 @@ resource "datadog_monitor" "blocked_clients" { query = < ${var.blocked_clients_threshold_critical} EOL @@ -133,7 +125,7 @@ resource "datadog_monitor" "keyspace_full" { query = < ${var.mem_used_threshold_critical} EOL @@ -214,7 +206,7 @@ resource "datadog_monitor" "memory_frag" { query = < ${var.mem_frag_threshold_critical} EOL @@ -254,7 +246,7 @@ resource "datadog_monitor" "rejected_connections" { query = < ${var.rejected_con_threshold_critical} EOL @@ -294,7 +286,7 @@ resource "datadog_monitor" "latency" { query = < ${var.latency_threshold_critical} EOL @@ -334,9 +326,9 @@ resource "datadog_monitor" "hitrate" { query = <