MON-66 resolving conflicts

This commit is contained in:
Quentin Manfroi 2017-11-06 10:38:32 +01:00
commit 7f9e91428b
8 changed files with 129 additions and 61 deletions

View File

@ -16,6 +16,8 @@ resource "datadog_monitor" "ELB_no_healthy_instances" {
require_full_window = true require_full_window = true
new_host_delay = "${var.elb_config["delay"]}" new_host_delay = "${var.elb_config["delay"]}"
no_data_timeframe = 20 no_data_timeframe = 20
tags = ["*"]
} }
resource "datadog_monitor" "ELB_unhealthy_instances" { resource "datadog_monitor" "ELB_unhealthy_instances" {
@ -36,6 +38,8 @@ resource "datadog_monitor" "ELB_unhealthy_instances" {
require_full_window = true require_full_window = true
new_host_delay = "${var.elb_config["delay"]}" new_host_delay = "${var.elb_config["delay"]}"
no_data_timeframe = 20 no_data_timeframe = 20
tags = ["*"]
} }
resource "datadog_monitor" "ELB_too_much_5xx_backend" { resource "datadog_monitor" "ELB_too_much_5xx_backend" {
@ -61,6 +65,8 @@ resource "datadog_monitor" "ELB_too_much_5xx_backend" {
require_full_window = true require_full_window = true
new_host_delay = "${var.elb_config["delay"]}" new_host_delay = "${var.elb_config["delay"]}"
no_data_timeframe = 20 no_data_timeframe = 20
tags = ["*"]
} }
resource "datadog_monitor" "ELB_too_much_4xx_backend" { resource "datadog_monitor" "ELB_too_much_4xx_backend" {
@ -86,6 +92,8 @@ resource "datadog_monitor" "ELB_too_much_4xx_backend" {
require_full_window = true require_full_window = true
new_host_delay = "${var.elb_config["delay"]}" new_host_delay = "${var.elb_config["delay"]}"
no_data_timeframe = 20 no_data_timeframe = 20
tags = ["*"]
} }
resource "datadog_monitor" "ELB_backend_latency" { resource "datadog_monitor" "ELB_backend_latency" {
@ -111,4 +119,6 @@ resource "datadog_monitor" "ELB_backend_latency" {
require_full_window = true require_full_window = true
new_host_delay = "${var.elb_config["delay"]}" new_host_delay = "${var.elb_config["delay"]}"
no_data_timeframe = 20 no_data_timeframe = 20
tags = ["*"]
} }

View File

@ -4,7 +4,7 @@ resource "datadog_monitor" "rds-mysql_cpu_80_15min" {
count = "${var.dd_aws_rds == "enabled" ? 1 : 0 }" count = "${var.dd_aws_rds == "enabled" ? 1 : 0 }"
query = "avg(last_15m):avg:aws.rds.cpuutilization{dd_monitoring:enabled,dd_aws_rds:enabled,env:${var.env}} by {name,region} > 90" query = "avg(last_15m):avg:aws.rds.cpuutilization{dd_monitoring:enabled,dd_aws_rds:enabled,env:${var.env}} by {region,name} > 90"
type = "query alert" type = "query alert"
thresholds { thresholds {
@ -12,6 +12,8 @@ resource "datadog_monitor" "rds-mysql_cpu_80_15min" {
critical = "${var.rds_cpu_threshold["critical"]}" critical = "${var.rds_cpu_threshold["critical"]}"
} }
tags = ["*"]
notify_no_data = "${var.rds_config["notify_no_data"]}" notify_no_data = "${var.rds_config["notify_no_data"]}"
evaluation_delay = "${var.rds_config["delay"]}" evaluation_delay = "${var.rds_config["delay"]}"
renotify_interval = 60 renotify_interval = 60
@ -29,7 +31,7 @@ resource "datadog_monitor" "mysql_rds_free_space_low" {
message = "{{#is_alert}}\n${var.hno_escalation_group} \n{{/is_alert}} \n{{#is_recovery}}\n${var.hno_escalation_group}\n{{/is_recovery}}\n{{#is_warning}}\n${var.ho_escalation_group} \n{{/is_warning}} \n{{#is_warning_recovery}}\n${var.ho_escalation_group}\n{{/is_warning_recovery}}" message = "{{#is_alert}}\n${var.hno_escalation_group} \n{{/is_alert}} \n{{#is_recovery}}\n${var.hno_escalation_group}\n{{/is_recovery}}\n{{#is_warning}}\n${var.ho_escalation_group} \n{{/is_warning}} \n{{#is_warning_recovery}}\n${var.ho_escalation_group}\n{{/is_warning_recovery}}"
type = "query alert" type = "query alert"
query = "avg(last_15m): avg:aws.rds.free_storage_space{dd_monitoring:enabled,dd_aws_rds:enabled,env:${var.env}} by {name,region} / avg:aws.rds.total_storage_space{dd_monitoring:enabled,dd_rds-mysql_basics:enabled,env:${var.env},!dd_custom_rds-mysql:enabled} by {identifier,region} * 100 < 10" query = "avg(last_15m):avg:aws.rds.free_storage_space{dd_monitoring:enabled,dd_aws_rds:enabled,env:${var.env}} by {region,name} / avg:aws.rds.total_storage_space{dd_monitoring:enabled,dd_aws_rds:enabled,env:${var.env}} by {region,name} * 100 < 10"
count = "${var.dd_aws_rds == "enabled" ? 1 : 0 }" count = "${var.dd_aws_rds == "enabled" ? 1 : 0 }"
thresholds { thresholds {
@ -37,6 +39,8 @@ resource "datadog_monitor" "mysql_rds_free_space_low" {
critical = "${var.rds_mem_threshold["critical"]}" critical = "${var.rds_mem_threshold["critical"]}"
} }
tags = ["*"]
notify_no_data = "${var.rds_config["notify_no_data"]}" notify_no_data = "${var.rds_config["notify_no_data"]}"
evaluation_delay = "${var.rds_config["delay"]}" evaluation_delay = "${var.rds_config["delay"]}"
renotify_interval = 60 renotify_interval = 60

View File

@ -42,10 +42,10 @@ resource "datadog_monitor" "cloud_sql_disk_space" {
} }
resource "datadog_monitor" "cloud_sql_connection_80" { resource "datadog_monitor" "cloud_sql_connection_80" {
name = "Cloud SQL MySQL connection > 80% of max connections" name = "Cloud SQL MySQL connection > 80% of max connections"
message = "{{#is_alert}}\n${var.alert_HNO} \n{{/is_alert}} \n{{#is_recovery}}\n${var.alert_HNO}\n{{/is_recovery}}" message = "{{#is_alert}}\n${var.alert_HNO} \n{{/is_alert}} \n{{#is_recovery}}\n${var.alert_HNO}\n{{/is_recovery}}"
query = "avg(last_5m):avg:gcp.cloudsql.database.network.connections{*} > 3500" query = "avg(last_5m):avg:gcp.cloudsql.database.network.connections{*} > 3500"
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
renotify_interval = 60 renotify_interval = 60
@ -61,10 +61,10 @@ resource "datadog_monitor" "cloud_sql_connection_80" {
} }
resource "datadog_monitor" "cloud_sql_lag" { resource "datadog_monitor" "cloud_sql_lag" {
name = "Cloud SQL MySQL lag > 45min" name = "Cloud SQL MySQL lag > 45min"
message = "{{#is_alert}}\n${var.alert_HNO} \n{{/is_alert}} \n{{#is_recovery}}\n${var.alert_HNO}\n{{/is_recovery}}" message = "{{#is_alert}}\n${var.alert_HNO} \n{{/is_alert}} \n{{#is_recovery}}\n${var.alert_HNO}\n{{/is_recovery}}"
query = "min(last_10m):avg:gcp.cloudsql.database.mysql.replication.seconds_behind_master{*} by {database_id} > 2700" query = "min(last_10m):avg:gcp.cloudsql.database.mysql.replication.seconds_behind_master{*} by {database_id} > 2700"
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
renotify_interval = 60 renotify_interval = 60
@ -77,13 +77,14 @@ resource "datadog_monitor" "cloud_sql_lag" {
notify_no_data = false notify_no_data = false
renotify_interval = 0 renotify_interval = 0
no_data_timeframe = 20 no_data_timeframe = 20
} }
resource "datadog_monitor" "cloud_sql_replication" { resource "datadog_monitor" "cloud_sql_replication" {
name = "Cloud SQL Failover not ready to replication" name = "Cloud SQL Failover not ready to replication"
message = "{{#is_alert}}\n${var.alert_HNO} \n{{/is_alert}} \n{{#is_recovery}}\n${var.alert_HNO}\n{{/is_recovery}}" message = "{{#is_alert}}\n${var.alert_HNO} \n{{/is_alert}} \n{{#is_recovery}}\n${var.alert_HNO}\n{{/is_recovery}}"
query = "max(last_5m):avg:gcp.cloudsql.database.mysql.replication.available_for_failover{*} <= 0" query = "max(last_5m):avg:gcp.cloudsql.database.mysql.replication.available_for_failover{*} <= 0"
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
renotify_interval = 60 renotify_interval = 60
@ -96,4 +97,5 @@ resource "datadog_monitor" "cloud_sql_replication" {
notify_no_data = false notify_no_data = false
renotify_interval = 0 renotify_interval = 0
no_data_timeframe = 20 no_data_timeframe = 20
} }

View File

@ -26,6 +26,16 @@ variable "dd_custom_cpu" {
} }
} }
#cpu threshold
variable "cpu_5_critical" {
default = 95
}
variable "cpu_15_critical" {
default = 80
}
## RDS ## RDS
variable "dd_aws_rds" { variable "dd_aws_rds" {
default = "disabled" default = "disabled"

View File

@ -22,4 +22,6 @@ resource "datadog_monitor" "Apache_process" {
locked = false locked = false
require_full_window = true require_full_window = true
no_data_timeframe = 20 no_data_timeframe = 20
tags = ["*"]
} }

View File

@ -22,4 +22,6 @@ resource "datadog_monitor" "Nginx_process" {
locked = false locked = false
require_full_window = true require_full_window = true
no_data_timeframe = 20 no_data_timeframe = 20
tags = ["*"]
} }

View File

@ -3,7 +3,7 @@ resource "datadog_monitor" "php-fpm_process_idle" {
message = "{{#is_alert}}\n${var.hno_escalation_group} \n{{/is_alert}} \n{{#is_recovery}}\n${var.hno_escalation_group}\n{{/is_recovery}}\n{{#is_warning}}\n${var.ho_escalation_group} \n{{/is_warning}} \n{{#is_warning_recovery}}\n${var.ho_escalation_group}\n{{/is_warning_recovery}}" message = "{{#is_alert}}\n${var.hno_escalation_group} \n{{/is_alert}} \n{{#is_recovery}}\n${var.hno_escalation_group}\n{{/is_recovery}}\n{{#is_warning}}\n${var.ho_escalation_group} \n{{/is_warning}} \n{{#is_warning_recovery}}\n${var.ho_escalation_group}\n{{/is_warning_recovery}}"
type = "query alert" type = "query alert"
query = "avg(last_10m):avg:php_fpm.processes.active{dd_monitoring:enabled,dd_php_fpm:enabled,env:${var.env}} by {host,region,app} / ( avg:php_fpm.processes.idle{dd_monitoring:enabled,dd_php_fpm:enabled,env:${var.env}} by {host,region,app} + avg:php_fpm.processes.active{dd_monitoring:enabled,dd_php_fpm:enabled,env:${var.env}} by {host,region,stack} ) > 0.90" query = "avg(last_10m):avg:php_fpm.processes.active{dd_monitoring:enabled,dd_php_fpm:enabled,env:${var.env}} by {host,region} / ( avg:php_fpm.processes.idle{dd_monitoring:enabled,dd_php_fpm:enabled,env:${var.env}} by {host,region} + avg:php_fpm.processes.active{dd_monitoring:enabled,dd_php_fpm:enabled,env:${var.env}} by {host,region} ) > 0.9"
count = "${var.dd_php_fpm == "enabled" ? 1 : 0 }" count = "${var.dd_php_fpm == "enabled" ? 1 : 0 }"
thresholds { thresholds {
@ -22,6 +22,8 @@ resource "datadog_monitor" "php-fpm_process_idle" {
require_full_window = true require_full_window = true
renotify_interval = 0 renotify_interval = 0
no_data_timeframe = 20 no_data_timeframe = 20
tags = ["*"]
} }
resource "datadog_monitor" "FPM_process" { resource "datadog_monitor" "FPM_process" {
@ -48,4 +50,6 @@ resource "datadog_monitor" "FPM_process" {
locked = false locked = false
require_full_window = true require_full_window = true
no_data_timeframe = 20 no_data_timeframe = 20
tags = ["*"]
} }

View File

@ -1,11 +1,17 @@
resource "datadog_monitor" "cpu_80_15min" { resource "datadog_monitor" "cpu_80_15min" {
name = "[${var.env}] CPU High > 80% for 15 min on {{host.name}}" name = "[${var.env}] CPU High > ${var.cpu_15_critical} for 15 min on {{host.name}}"
message = "{{#is_alert}}\n${var.hno_escalation_group}\n{{/is_alert}}\n{{#is_recovery}}\n${var.hno_escalation_group}\n{{/is_recovery}}" message = "{{#is_alert}}\n${var.hno_escalation_group}\n{{/is_alert}}\n{{#is_recovery}}\n${var.hno_escalation_group}\n{{/is_recovery}}"
count = "${var.dd_linux_basics == "enabled" ? 1 : 0}" count = "${var.dd_linux_basics == "enabled" ? 1 : 0}"
query = "min(last_15m):avg:system.cpu.system{dd_monitoring:enabled,dd_linux_basics:enabled,env:${var.env},!dd_custom_cpu:enabled} by {host,region,stack} + avg:system.cpu.user{dd_monitoring:enabled,dd_linux_basics:enabled,env:${var.env},!dd_custom_cpu:enabled} by {host,region,stack} > 80" query = "min(last_15m):avg:system.cpu.system{dd_monitoring:enabled,dd_linux_basics:enabled,env:${var.env},!dd_custom_cpu:enabled} by {host,region} + avg:system.cpu.user{dd_monitoring:enabled,dd_linux_basics:enabled,env:${var.env},!dd_custom_cpu:enabled} by {host,region} > ${var.cpu_15_critical}"
type = "query alert" type = "query alert"
thresholds {
critical = "${var.cpu_15_critical}"
}
tags = ["*"]
notify_no_data = "${var.linux_basics_config["notify_no_data"]}" notify_no_data = "${var.linux_basics_config["notify_no_data"]}"
evaluation_delay = "${var.linux_basics_config["delay"]}" evaluation_delay = "${var.linux_basics_config["delay"]}"
new_host_delay = "${var.linux_basics_config["delay"]}" new_host_delay = "${var.linux_basics_config["delay"]}"
@ -19,13 +25,19 @@ resource "datadog_monitor" "cpu_80_15min" {
} }
resource "datadog_monitor" "cpu_95_5min" { resource "datadog_monitor" "cpu_95_5min" {
name = "[${var.env}] CPU High > 95% for 5 min on {{host.name}}" name = "[${var.env}] CPU High > ${var.cpu_5_critical} for 5 min on {{host.name}}"
message = "{{#is_alert}}\n${var.hno_escalation_group}\n{{/is_alert}}\n{{#is_recovery}}\n${var.hno_escalation_group}\n{{/is_recovery}}" message = "{{#is_alert}}\n${var.hno_escalation_group}\n{{/is_alert}}\n{{#is_recovery}}\n${var.hno_escalation_group}\n{{/is_recovery}}"
query = "min(last_5m):avg:system.cpu.system{dd_monitoring:enabled,dd_linux_basics:enabled,env:${var.env},!dd_custom_cpu:enabled} by {host,region,stack} + avg:system.cpu.user{dd_monitoring:enabled,dd_linux_basics:enabled,!dd_custom_cpu:enabled} by {host,region,stack} > 95" query = "min(last_5m):avg:system.cpu.system{dd_monitoring:enabled,dd_linux_basics:enabled,env:${var.env},!dd_custom_cpu:enabled} by {host,region} + avg:system.cpu.user{dd_monitoring:enabled,dd_linux_basics:enabled,env:${var.env},!dd_custom_cpu:enabled} by {host,region} > ${var.cpu_5_critical}"
type = "query alert" type = "query alert"
count = "${var.dd_linux_basics == "enabled" ? 1 : 0}" count = "${var.dd_linux_basics == "enabled" ? 1 : 0}"
thresholds {
critical = "${var.cpu_5_critical}"
}
tags = ["*"]
notify_no_data = "${var.linux_basics_config["notify_no_data"]}" notify_no_data = "${var.linux_basics_config["notify_no_data"]}"
evaluation_delay = "${var.linux_basics_config["delay"]}" evaluation_delay = "${var.linux_basics_config["delay"]}"
new_host_delay = "${var.linux_basics_config["delay"]}" new_host_delay = "${var.linux_basics_config["delay"]}"
@ -42,10 +54,16 @@ resource "datadog_monitor" "datadog_free_disk_space_5" {
name = "[${var.env}] Free disk space < 5% on {{host.name}}" name = "[${var.env}] Free disk space < 5% on {{host.name}}"
message = "{{#is_alert}}\n${var.hno_escalation_group}\n{{/is_alert}}\n{{#is_recovery}}\n${var.hno_escalation_group}\n{{/is_recovery}}" message = "{{#is_alert}}\n${var.hno_escalation_group}\n{{/is_alert}}\n{{#is_recovery}}\n${var.hno_escalation_group}\n{{/is_recovery}}"
query = "sum(last_5m):avg:system.disk.free{dd_monitoring:enabled,dd_linux_basics:enabled,env:${var.env},!dd_custom_cpu:enabled} by {host,device,region,stack} / avg:system.disk.total{dd_monitoring:enabled,dd_linux_basics:enabled,!dd_custom_cpu:enabled} by {host,device,region,stack} * 100 < 5" query = "sum(last_5m):avg:system.disk.free{dd_monitoring:enabled,dd_linux_basics:enabled,env:${var.env},!dd_custom_cpu:enabled} by {host,region,device} / avg:system.disk.total{dd_monitoring:enabled,dd_linux_basics:enabled,env:${var.env},!dd_custom_cpu:enabled} by {host,region,device} * 100 < 5"
type = "query alert" type = "query alert"
count = "${var.dd_linux_basics == "enabled" ? 1 : 0}" count = "${var.dd_linux_basics == "enabled" ? 1 : 0}"
thresholds {
critical = 5
}
tags = ["*"]
notify_no_data = "${var.linux_basics_config["notify_no_data"]}" notify_no_data = "${var.linux_basics_config["notify_no_data"]}"
evaluation_delay = "${var.linux_basics_config["delay"]}" evaluation_delay = "${var.linux_basics_config["delay"]}"
new_host_delay = "${var.linux_basics_config["delay"]}" new_host_delay = "${var.linux_basics_config["delay"]}"
@ -62,7 +80,7 @@ resource "datadog_monitor" "datadog_free_disk_space_10" {
name = "[${var.env}] Free disk space < 10% on {{host.name}}" name = "[${var.env}] Free disk space < 10% on {{host.name}}"
message = "{{#is_alert}}\n${var.hno_escalation_group}\n{{/is_alert}}\n{{#is_recovery}}\n${var.hno_escalation_group}\n{{/is_recovery}}\n{{#is_warning}}\n${var.ho_escalation_group}\n{{/is_warning}}\n{{#is_warning_recovery}}\n${var.ho_escalation_group}\n{{/is_warning_recovery}}" message = "{{#is_alert}}\n${var.hno_escalation_group}\n{{/is_alert}}\n{{#is_recovery}}\n${var.hno_escalation_group}\n{{/is_recovery}}\n{{#is_warning}}\n${var.ho_escalation_group}\n{{/is_warning}}\n{{#is_warning_recovery}}\n${var.ho_escalation_group}\n{{/is_warning_recovery}}"
query = "sum(last_5m):avg:system.disk.free{dd_monitoring:enabled,dd_linux_basics:enabled,env:${var.env},!dd_custom_cpu:enabled} by {host,device,region,stack} / avg:system.disk.total{dd_monitoring:enabled,dd_linux_basics:enabled,env:${var.env},!dd_custom_cpu:enabled} by {host,device,region,stack} * 100 < 10" query = "sum(last_5m):avg:system.disk.free{dd_monitoring:enabled,dd_linux_basics:enabled,env:${var.env},!dd_custom_cpu:enabled} by {host,region,device} / avg:system.disk.total{dd_monitoring:enabled,dd_linux_basics:enabled,env:${var.env},!dd_custom_cpu:enabled} by {host,region,device} * 100 < 10"
type = "query alert" type = "query alert"
count = "${var.dd_linux_basics == "enabled" ? 1 : 0}" count = "${var.dd_linux_basics == "enabled" ? 1 : 0}"
@ -71,6 +89,8 @@ resource "datadog_monitor" "datadog_free_disk_space_10" {
critical = 10 critical = 10
} }
tags = ["*"]
notify_no_data = "${var.linux_basics_config["notify_no_data"]}" notify_no_data = "${var.linux_basics_config["notify_no_data"]}"
evaluation_delay = "${var.linux_basics_config["delay"]}" evaluation_delay = "${var.linux_basics_config["delay"]}"
new_host_delay = "${var.linux_basics_config["delay"]}" new_host_delay = "${var.linux_basics_config["delay"]}"
@ -87,10 +107,16 @@ resource "datadog_monitor" "datadog_free_disk_space_inodes_5" {
name = "[${var.env}] Free disk inodes < 5% on {{host.name}}" name = "[${var.env}] Free disk inodes < 5% on {{host.name}}"
message = "{{#is_alert}}\n${var.hno_escalation_group} \n{{/is_alert}} \n{{#is_recovery}}\n${var.hno_escalation_group} \n{{/is_recovery}}" message = "{{#is_alert}}\n${var.hno_escalation_group} \n{{/is_alert}} \n{{#is_recovery}}\n${var.hno_escalation_group} \n{{/is_recovery}}"
query = "sum(last_5m):avg:system.fs.inodes.free{dd_monitoring:enabled,dd_linux_basics:enabled,env:${var.env},!dd_custom_cpu:enabled} by {host,device,region,stack} / avg:system.fs.inodes.total{dd_monitoring:enabled,dd_linux_basics:enabled,env:${var.env},!dd_custom_cpu:enabled} by {host,device,region,stack} * 100 < 5" query = "sum(last_5m):avg:system.fs.inodes.free{dd_monitoring:enabled,dd_linux_basics:enabled,env:${var.env},!dd_custom_cpu:enabled} by {host,region,device} / avg:system.fs.inodes.total{dd_monitoring:enabled,dd_linux_basics:enabled,env:${var.env},!dd_custom_cpu:enabled} by {host,region,device} * 100 < 5"
type = "query alert" type = "query alert"
count = "${var.dd_linux_basics == "enabled" ? 1 : 0}" count = "${var.dd_linux_basics == "enabled" ? 1 : 0}"
thresholds {
critical = 5
}
tags = ["*"]
notify_no_data = "${var.linux_basics_config["notify_no_data"]}" notify_no_data = "${var.linux_basics_config["notify_no_data"]}"
evaluation_delay = "${var.linux_basics_config["delay"]}" evaluation_delay = "${var.linux_basics_config["delay"]}"
new_host_delay = "${var.linux_basics_config["delay"]}" new_host_delay = "${var.linux_basics_config["delay"]}"
@ -107,7 +133,7 @@ resource "datadog_monitor" "datadog_free_disk_space_inodes_10" {
name = "[${var.env}] Free disk inodes < 10% on {{host.name}}" name = "[${var.env}] Free disk inodes < 10% on {{host.name}}"
message = "{{#is_alert}}\n${var.hno_escalation_group}\n{{/is_alert}}\n{{#is_recovery}}\n${var.hno_escalation_group}\n{{/is_recovery}}\n{{#is_warning}}\n${var.ho_escalation_group}\n{{/is_warning}}\n{{#is_warning_recovery}}\n${var.ho_escalation_group}\n{{/is_warning_recovery}}" message = "{{#is_alert}}\n${var.hno_escalation_group}\n{{/is_alert}}\n{{#is_recovery}}\n${var.hno_escalation_group}\n{{/is_recovery}}\n{{#is_warning}}\n${var.ho_escalation_group}\n{{/is_warning}}\n{{#is_warning_recovery}}\n${var.ho_escalation_group}\n{{/is_warning_recovery}}"
query = "max(last_5m):avg:system.fs.inodes.free{dd_monitoring:enabled,dd_linux_basics:enabled,env:${var.env},!dd_custom_cpu:enabled} by {host,device,region} / avg:system.fs.inodes.total{dd_monitoring:enabled,dd_linux_basics:enabled,env:${var.env},!dd_custom_cpu:enabled} by {host,device,region,stack} * 100 < 10" query = "max(last_5m):avg:system.fs.inodes.free{dd_monitoring:enabled,dd_linux_basics:enabled,env:${var.env},!dd_custom_cpu:enabled} by {host,device,region} / avg:system.fs.inodes.total{dd_monitoring:enabled,dd_linux_basics:enabled,env:${var.env},!dd_custom_cpu:enabled} by {host,device,region} * 100 < 10"
type = "query alert" type = "query alert"
count = "${var.dd_linux_basics == "enabled" ? 1 : 0}" count = "${var.dd_linux_basics == "enabled" ? 1 : 0}"
@ -116,6 +142,8 @@ resource "datadog_monitor" "datadog_free_disk_space_inodes_10" {
critical = 10 critical = 10
} }
tags = ["*"]
notify_no_data = "${var.linux_basics_config["notify_no_data"]}" notify_no_data = "${var.linux_basics_config["notify_no_data"]}"
evaluation_delay = "${var.linux_basics_config["delay"]}" evaluation_delay = "${var.linux_basics_config["delay"]}"
new_host_delay = "${var.linux_basics_config["delay"]}" new_host_delay = "${var.linux_basics_config["delay"]}"
@ -152,10 +180,16 @@ resource "datadog_monitor" "datadog_free_memory" {
name = "[${var.env}] Free memory < 5% on {{host.name}}" name = "[${var.env}] Free memory < 5% on {{host.name}}"
message = "Debugging alert - no escalation" message = "Debugging alert - no escalation"
query = "sum(last_1m):avg:system.mem.free{dd_monitoring:enabled,dd_linux_basics:enabled,env:${var.env},!dd_custom_memory:enabled} by {host,region,stack} / avg:system.mem.total{dd_monitoring:enabled,dd_linux_basics:enabled,env:${var.env},!dd_custom_memory:enabled} by {host,region,stack} * 100 < 5" query = "sum(last_1m):avg:system.mem.free{dd_monitoring:enabled,dd_linux_basics:enabled,env:${var.env},!dd_custom_memory:enabled} by {host,region} / avg:system.mem.total{dd_monitoring:enabled,dd_linux_basics:enabled,env:${var.env},!dd_custom_memory:enabled} by {host,region} * 100 < 5"
type = "query alert" type = "query alert"
count = "${var.dd_linux_basics == "enabled" ? 1 : 0}" count = "${var.dd_linux_basics == "enabled" ? 1 : 0}"
thresholds {
critical = 5
}
tags = ["*"]
notify_no_data = "${var.linux_basics_config["notify_no_data"]}" notify_no_data = "${var.linux_basics_config["notify_no_data"]}"
evaluation_delay = "${var.linux_basics_config["delay"]}" evaluation_delay = "${var.linux_basics_config["delay"]}"
new_host_delay = "${var.linux_basics_config["delay"]}" new_host_delay = "${var.linux_basics_config["delay"]}"