diff --git a/cloud/azure/iothubs/README.md b/cloud/azure/iothubs/README.md index 3d6bb91..a0e4be5 100644 --- a/cloud/azure/iothubs/README.md +++ b/cloud/azure/iothubs/README.md @@ -9,10 +9,7 @@ module "iothubs" { source = "git::ssh://git@bitbucket.org/morea/terraform.feature.datadog.git//cloud/azure/iothubs?ref=MON-80-azure-hub-iot-monitors" message = "${module.datadog-message-alerting.alerting-message}" - environment = "${var.environment}" - stack = "${var.stack}" - client_name = "${var.client_name}" subscription_id = "${var.subscription_id}" } ``` @@ -48,7 +45,6 @@ Inputs | c2d_twin_read_failed_threshold_warning | C2D Twin Read Failed rate limit (warning threshold) | string | `0` | no | | c2d_twin_update_failed_threshold_critical | C2D Twin Update Failed rate limit (critical threshold) | string | `10` | no | | c2d_twin_update_failed_threshold_warning | C2D Twin Update Failed rate limit (warning threshold) | string | `0` | no | -| client_name | Client Name | string | - | yes | | d2c_telemetry_egress_dropped_threshold_critical | D2C Telemetry Dropped Failed limit (critical threshold) | string | `1000` | no | | d2c_telemetry_egress_dropped_threshold_warning | D2C Telemetry Dropped Failed limit (warning threshold) | string | `500` | no | | d2c_telemetry_egress_fallback_threshold_critical | D2C Telemetry Fallback Failed limit (critical threshold) | string | `1000` | no | @@ -77,4 +73,4 @@ Related documentation DataDog documentation: [https://docs.datadoghq.com/integrations/azure_iot_hub](https://docs.datadoghq.com/integrations/azure_iot_hub) -Azure IOT Hubs metrics documentation: [https://docs.microsoft.com/en-us/azure/iot-hub/iot-hub-monitor-resource-health](https://docs.microsoft.com/en-us/azure/iot-hub/iot-hub-monitor-resource-health) \ No newline at end of file +Azure IOT Hubs metrics documentation: [https://docs.microsoft.com/en-us/azure/iot-hub/iot-hub-monitor-resource-health](https://docs.microsoft.com/en-us/azure/iot-hub/iot-hub-monitor-resource-health) diff --git a/cloud/azure/iothubs/inputs.tf b/cloud/azure/iothubs/inputs.tf index d04d03b..1efabc3 100644 --- a/cloud/azure/iothubs/inputs.tf +++ b/cloud/azure/iothubs/inputs.tf @@ -1,23 +1,26 @@ +# Global Terraform variable "environment" { description = "Architecture Environment" type = "string" } -variable "client_name" { - description = "Client Name" - type = "string" -} - -variable "use_filter_tags" { - description = "Filter the data with service tags if true" - default = "true" -} - variable "subscription_id" { - description = "Subscription ID used to tag monitors" - type = "string" + description = "Azure account id used as filter for monitors" + type = "string" } +variable "provider" { + description = "Cloud provider which the monitor and its based metric depend on" + type = "string" + default = "azure" +} + +variable "service" { + description = "Service monitored by this set of monitors" + type = "string" + default = "storage" + +# Global DataDog variable "delay" { description = "Delay in seconds for the metric evaluation" default = 600 @@ -27,7 +30,12 @@ variable "message" { description = "Message sent when an alert is triggered" } -## IOT hubs +variable "use_filter_tags" { + description = "Filter the data with service tags if true" + default = "true" +} + +# Azure IOT hubs specific variable "jobs_failed_threshold_warning" { description = "Jobs Failed rate limit (warning threshold)" default = 0 diff --git a/cloud/azure/iothubs/monitors-iothubs.tf b/cloud/azure/iothubs/monitors-iothubs.tf index 1ee29a3..4398f5f 100644 --- a/cloud/azure/iothubs/monitors-iothubs.tf +++ b/cloud/azure/iothubs/monitors-iothubs.tf @@ -2,7 +2,7 @@ data "template_file" "filter" { template = "$${filter}" vars { - filter = "${var.use_filter_tags == "true" ? format("dd_monitoring:enabled,dd_azure_appservices:enabled,subscription_id:%s,env:%s", var.subscription_id,var.environment) : var.subscription_id}" + filter = "${var.use_filter_tags == "true" ? format("dd_monitoring:enabled,dd_azure_storage:enabled,env:%s", var.environment) : "${data.template_file.filter.rendered}"}" } } @@ -12,9 +12,9 @@ resource "datadog_monitor" "too_many_jobs_failed" { query = < ${var.jobs_failed_threshold_critical} EOF type = "query alert" @@ -34,6 +34,8 @@ resource "datadog_monitor" "too_many_jobs_failed" { require_full_window = true new_host_delay = "${var.delay}" no_data_timeframe = 20 + + tags = ["env:${var.environment}","resource:${var.service}","team:${var.provider}"] } resource "datadog_monitor" "too_many_list_jobs_failed" { @@ -42,9 +44,9 @@ resource "datadog_monitor" "too_many_list_jobs_failed" { query = < ${var.listjobs_failed_threshold_critical} EOF type = "query alert" @@ -64,6 +66,8 @@ resource "datadog_monitor" "too_many_list_jobs_failed" { require_full_window = true new_host_delay = "${var.delay}" no_data_timeframe = 20 + + tags = ["env:${var.environment}","resource:${var.service}","team:${var.provider}"] } resource "datadog_monitor" "too_many_query_jobs_failed" { @@ -72,9 +76,9 @@ resource "datadog_monitor" "too_many_query_jobs_failed" { query = < ${var.queryjobs_failed_threshold_critical} EOF type = "query alert" @@ -94,6 +98,8 @@ resource "datadog_monitor" "too_many_query_jobs_failed" { require_full_window = true new_host_delay = "${var.delay}" no_data_timeframe = 20 + + tags = ["env:${var.environment}","resource:${var.service}","team:${var.provider}"] } resource "datadog_monitor" "status" { @@ -101,7 +107,7 @@ resource "datadog_monitor" "status" { message = "${var.message}" query = < ${var.c2d_methods_failed_threshold_critical} EOF type = "query alert" @@ -166,6 +176,8 @@ resource "datadog_monitor" "too_many_c2d_methods_failed" { require_full_window = true new_host_delay = "${var.delay}" no_data_timeframe = 20 + + tags = ["env:${var.environment}","resource:${var.service}","team:${var.provider}"] } resource "datadog_monitor" "too_many_c2d_twin_read_failed" { @@ -174,9 +186,9 @@ resource "datadog_monitor" "too_many_c2d_twin_read_failed" { query = < ${var.c2d_twin_read_failed_threshold_critical} EOF type = "query alert" @@ -196,6 +208,8 @@ resource "datadog_monitor" "too_many_c2d_twin_read_failed" { require_full_window = true new_host_delay = "${var.delay}" no_data_timeframe = 20 + + tags = ["env:${var.environment}","resource:${var.service}","team:${var.provider}"] } resource "datadog_monitor" "too_many_c2d_twin_update_failed" { @@ -204,9 +218,9 @@ resource "datadog_monitor" "too_many_c2d_twin_update_failed" { query = < ${var.c2d_twin_update_failed_threshold_critical} EOF type = "query alert" @@ -226,6 +240,8 @@ resource "datadog_monitor" "too_many_c2d_twin_update_failed" { require_full_window = true new_host_delay = "${var.delay}" no_data_timeframe = 20 + + tags = ["env:${var.environment}","resource:${var.service}","team:${var.provider}"] } resource "datadog_monitor" "too_many_d2c_twin_read_failed" { @@ -234,9 +250,9 @@ resource "datadog_monitor" "too_many_d2c_twin_read_failed" { query = < ${var.d2c_twin_read_failed_threshold_critical} EOF type = "query alert" @@ -256,6 +272,8 @@ resource "datadog_monitor" "too_many_d2c_twin_read_failed" { require_full_window = true new_host_delay = "${var.delay}" no_data_timeframe = 20 + + tags = ["env:${var.environment}","resource:${var.service}","team:${var.provider}"] } resource "datadog_monitor" "too_many_d2c_twin_update_failed" { @@ -264,9 +282,9 @@ resource "datadog_monitor" "too_many_d2c_twin_update_failed" { query = < ${var.d2c_twin_update_failed_threshold_critical} EOF type = "query alert" @@ -286,6 +304,8 @@ resource "datadog_monitor" "too_many_d2c_twin_update_failed" { require_full_window = true new_host_delay = "${var.delay}" no_data_timeframe = 20 + + tags = ["env:${var.environment}","resource:${var.service}","team:${var.provider}"] } resource "datadog_monitor" "too_many_d2c_telemetry_egress_dropped" { @@ -294,7 +314,7 @@ resource "datadog_monitor" "too_many_d2c_telemetry_egress_dropped" { query = < ${var.d2c_telemetry_egress_dropped_threshold_critical} EOF type = "query alert" @@ -314,6 +334,8 @@ resource "datadog_monitor" "too_many_d2c_telemetry_egress_dropped" { require_full_window = true new_host_delay = "${var.delay}" no_data_timeframe = 20 + + tags = ["env:${var.environment}","resource:${var.service}","team:${var.provider}"] } resource "datadog_monitor" "too_many_d2c_telemetry_egress_orphaned" { @@ -322,7 +344,7 @@ resource "datadog_monitor" "too_many_d2c_telemetry_egress_orphaned" { query = < ${var.d2c_telemetry_egress_orphaned_threshold_critical} EOF type = "query alert" @@ -342,6 +364,8 @@ resource "datadog_monitor" "too_many_d2c_telemetry_egress_orphaned" { require_full_window = true new_host_delay = "${var.delay}" no_data_timeframe = 20 + + tags = ["env:${var.environment}","resource:${var.service}","team:${var.provider}"] } resource "datadog_monitor" "too_many_d2c_telemetry_egress_invalid" { @@ -350,7 +374,7 @@ resource "datadog_monitor" "too_many_d2c_telemetry_egress_invalid" { query = < ${var.d2c_telemetry_egress_invalid_threshold_critical} EOF type = "query alert" @@ -370,6 +394,8 @@ resource "datadog_monitor" "too_many_d2c_telemetry_egress_invalid" { require_full_window = true new_host_delay = "${var.delay}" no_data_timeframe = 20 + + tags = ["env:${var.environment}","resource:${var.service}","team:${var.provider}"] } resource "datadog_monitor" "too_many_d2c_telemetry_egress_fallback" { @@ -378,7 +404,7 @@ resource "datadog_monitor" "too_many_d2c_telemetry_egress_fallback" { query = < ${var.d2c_telemetry_egress_fallback_threshold_critical} EOF type = "query alert" @@ -398,6 +424,8 @@ resource "datadog_monitor" "too_many_d2c_telemetry_egress_fallback" { require_full_window = true new_host_delay = "${var.delay}" no_data_timeframe = 20 + + tags = ["env:${var.environment}","resource:${var.service}","team:${var.provider}"] } resource "datadog_monitor" "too_many_d2c_telemetry_ingress_nosent" { @@ -406,8 +434,8 @@ resource "datadog_monitor" "too_many_d2c_telemetry_ingress_nosent" { query = < 0 EOF type = "query alert" @@ -422,4 +450,6 @@ resource "datadog_monitor" "too_many_d2c_telemetry_ingress_nosent" { require_full_window = true new_host_delay = "${var.delay}" no_data_timeframe = 20 + + tags = ["env:${var.environment}","resource:${var.service}","team:${var.provider}"] }