From 86317bad616577cfd0c951b75f44b3ac54866ce6 Mon Sep 17 00:00:00 2001 From: Mark Maas Date: Fri, 9 Apr 2021 13:27:43 +0200 Subject: [PATCH] Initial Commit of already exiting monitors --- OOM_error-variables.tf | 52 ++++++++++++++++++++++++ OOM_error.tf | 39 ++++++++++++++++++ README.md | 18 ++++++++- blocked_clients-variables.tf | 47 ++++++++++++++++++++++ blocked_clients.tf | 34 ++++++++++++++++ connected_client.tf | 34 ++++++++++++++++ connected_clients-variables.tf | 47 ++++++++++++++++++++++ evicted_keys-variables.tf | 47 ++++++++++++++++++++++ evicted_keys.tf | 34 ++++++++++++++++ hitratio-variables.tf | 47 ++++++++++++++++++++++ hitratio.tf | 35 +++++++++++++++++ latency-variables.tf | 47 ++++++++++++++++++++++ latency.tf | 34 ++++++++++++++++ main.tf | 0 maxmem-variables.tf | 47 ++++++++++++++++++++++ maxmem.tf | 35 +++++++++++++++++ memfrag-variables.tf | 47 ++++++++++++++++++++++ memfrag.tf | 36 +++++++++++++++++ memory-free-bytes-variables.tf | 47 ++++++++++++++++++++++ memory-free-bytes.tf | 34 ++++++++++++++++ ops-per-sec-variables copy.tf | 47 ++++++++++++++++++++++ ops-per-sec.tf | 72 ++++++++++++++++++++++++++++++++++ variables.tf | 30 ++++++++++++++ 23 files changed, 909 insertions(+), 1 deletion(-) create mode 100644 OOM_error-variables.tf create mode 100644 OOM_error.tf create mode 100644 blocked_clients-variables.tf create mode 100644 blocked_clients.tf create mode 100644 connected_client.tf create mode 100644 connected_clients-variables.tf create mode 100644 evicted_keys-variables.tf create mode 100644 evicted_keys.tf create mode 100644 hitratio-variables.tf create mode 100644 hitratio.tf create mode 100644 latency-variables.tf create mode 100644 latency.tf create mode 100644 main.tf create mode 100644 maxmem-variables.tf create mode 100644 maxmem.tf create mode 100644 memfrag-variables.tf create mode 100644 memfrag.tf create mode 100644 memory-free-bytes-variables.tf create mode 100644 memory-free-bytes.tf create mode 100644 ops-per-sec-variables copy.tf create mode 100644 ops-per-sec.tf create mode 100644 variables.tf diff --git a/OOM_error-variables.tf b/OOM_error-variables.tf new file mode 100644 index 0000000..9eff96a --- /dev/null +++ b/OOM_error-variables.tf @@ -0,0 +1,52 @@ +variable "oom_error_enabled" { + type = bool + default = true + description = "oom_error in redis" +} + +variable "oom_error_warning" { + type = number + default = 1 + # 1 oom_errors +} + +variable "oom_error_critical" { + type = number + default = 5 + # 5 oom_errors +} + +variable "oom_error_evaluation_period" { + type = string + default = "last_5m" +} + +variable "oom_error_severity" { + type = string + default = "critical" +} + +variable "oom_error_note" { + type = string + default = "" +} + +variable "oom_error_docs" { + type = string + default = "" +} + +variable "oom_error_filter_override" { + type = string + default = "" +} + +variable "oom_error_alerting_enabled" { + type = bool + default = true +} + +variable "type" { + type = string + default = "log alert" +} \ No newline at end of file diff --git a/OOM_error.tf b/OOM_error.tf new file mode 100644 index 0000000..d5d712a --- /dev/null +++ b/OOM_error.tf @@ -0,0 +1,39 @@ +locals { + oom_error_filter = coalesce( + var.oom_error_filter_override, + var.filter_str + ) +} + +module "redis_oom_error" { + source = "git@github.com:kabisa/terraform-datadog-generic-monitor.git?ref=0.5" + + name = "Out Of Memory errors in the logs" + query = "logs(\"OOM command not allowed when used memory \\> 'maxmemory'.\").index(\"*\").rollup(\"count\").last(\"15m\") > ${var.oom_error_critical}" + + enabled = var.oom_error_enabled + alerting_enabled = var.oom_error_alerting_enabled + + alert_message = <= 1", +# "message": "{{#is_alert}}\nOperations per second on Redis has an anomaly {{value}}\n{{/is_alert}}\n{{#is_recovery}}\nOperations per second on Redis has recovered {{value}}\n{{/is_recovery}}\n@pagerduty-VacanSoleil", +# "tags": [ +# "env:prd", +# "service:Redis", +# "severity:critical" +# ], +# "options": { +# "notify_audit": false, +# "locked": true, +# "timeout_h": 0, +# "silenced": {}, +# "include_tags": true, +# "no_data_timeframe": null, +# "require_full_window": true, +# "new_host_delay": 300, +# "notify_no_data": false, +# "renotify_interval": 0, +# "escalation_message": "", +# "threshold_windows": { +# "recovery_window": "last_5m", +# "trigger_window": "last_14d" +# }, +# "thresholds": { +# "critical": 1, +# "critical_recovery": 0 +# } +# }, +# "priority": null +# } \ No newline at end of file diff --git a/variables.tf b/variables.tf new file mode 100644 index 0000000..3ade737 --- /dev/null +++ b/variables.tf @@ -0,0 +1,30 @@ +variable "env" { + type = string +} + +variable "alert_env" { + type = string +} + +variable "service" { + type = string + default = "Redis" +} + +variable "notification_channel" { + type = string +} + +variable "additional_tags" { + type = list(string) + default = [] +} + +variable "filter_str" { + type = string +} + +variable "locked" { + type = bool + default = true +}