Merged in MON-124-add-message-input-per-monitor-azure (pull request #55)

MON-124 Azure monitors : Add message input per monitor

Approved-by: Laurent Piroelle <laurent.piroelle@fr.clara.net>
Approved-by: Quentin Manfroi <quentin.manfroi@yahoo.fr>
Approved-by: Alexandre Gaillet <alexandre.gaillet@fr.clara.net>
This commit is contained in:
Laurent Piroelle 2018-03-15 18:28:39 +00:00 committed by Quentin Manfroi
commit 7fd9b6d5c5
27 changed files with 848 additions and 96 deletions

View File

@ -31,143 +31,194 @@ Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|:----:|:-----:|:-----:| |------|-------------|:----:|:-----:|:-----:|
| apimanagement_failed_requests_message | Custom message for API Management failed requests monitor | string | `` | no |
| apimanagement_failed_requests_silenced | Groups to mute for API Management failed requests monitor | map | `<map>` | no | | apimanagement_failed_requests_silenced | Groups to mute for API Management failed requests monitor | map | `<map>` | no |
| apimanagement_failed_requests_threshold_critical | Maximum acceptable percent of failed requests | string | `90` | no | | apimanagement_failed_requests_threshold_critical | Maximum acceptable percent of failed requests | string | `90` | no |
| apimanagement_failed_requests_threshold_warning | Warning regarding acceptable percent of failed requests | string | `50` | no | | apimanagement_failed_requests_threshold_warning | Warning regarding acceptable percent of failed requests | string | `50` | no |
| apimanagement_other_requests_message | Custom message for API Management other requests monitor | string | `` | no |
| apimanagement_other_requests_silenced | Groups to mute for API Management other requests monitor | map | `<map>` | no | | apimanagement_other_requests_silenced | Groups to mute for API Management other requests monitor | map | `<map>` | no |
| apimanagement_other_requests_threshold_critical | Maximum acceptable percent of other requests | string | `90` | no | | apimanagement_other_requests_threshold_critical | Maximum acceptable percent of other requests | string | `90` | no |
| apimanagement_other_requests_threshold_warning | Warning regarding acceptable percent of other requests | string | `50` | no | | apimanagement_other_requests_threshold_warning | Warning regarding acceptable percent of other requests | string | `50` | no |
| apimanagement_status_message | Custom message for API Management status monitor | string | `` | no |
| apimanagement_status_silenced | Groups to mute for API Management status monitor | map | `<map>` | no | | apimanagement_status_silenced | Groups to mute for API Management status monitor | map | `<map>` | no |
| apimanagement_successful_requests_message | Custom message for API Management successful requests monitor | string | `` | no |
| apimanagement_successful_requests_silenced | Groups to mute for API Management successful requests monitor | map | `<map>` | no | | apimanagement_successful_requests_silenced | Groups to mute for API Management successful requests monitor | map | `<map>` | no |
| apimanagement_successful_requests_threshold_critical | Minimum acceptable percent of successful requests | string | `10` | no | | apimanagement_successful_requests_threshold_critical | Minimum acceptable percent of successful requests | string | `10` | no |
| apimanagement_successful_requests_threshold_warning | Warning regarding acceptable percent of successful requests | string | `30` | no | | apimanagement_successful_requests_threshold_warning | Warning regarding acceptable percent of successful requests | string | `30` | no |
| apimanagement_unauthorized_requests_message | Custom message for API Management unauthorized requests monitor | string | `` | no |
| apimanagement_unauthorized_requests_silenced | Groups to mute for API Management unauthorized requests monitor | map | `<map>` | no | | apimanagement_unauthorized_requests_silenced | Groups to mute for API Management unauthorized requests monitor | map | `<map>` | no |
| apimanagement_unauthorized_requests_threshold_critical | Maximum acceptable percent of unauthorized requests | string | `90` | no | | apimanagement_unauthorized_requests_threshold_critical | Maximum acceptable percent of unauthorized requests | string | `90` | no |
| apimanagement_unauthorized_requests_threshold_warning | Warning regarding acceptable percent of unauthorized requests | string | `50` | no | | apimanagement_unauthorized_requests_threshold_warning | Warning regarding acceptable percent of unauthorized requests | string | `50` | no |
| appservices_http_4xx_requests_message | Custom message for App Services 4xx requests monitor | string | `` | no |
| appservices_http_4xx_requests_silenced | Groups to mute for App Services 4xx requests monitor | map | `<map>` | no | | appservices_http_4xx_requests_silenced | Groups to mute for App Services 4xx requests monitor | map | `<map>` | no |
| appservices_http_4xx_requests_threshold_critical | Maximum critical acceptable percent of 4xx errors | string | `90` | no | | appservices_http_4xx_requests_threshold_critical | Maximum critical acceptable percent of 4xx errors | string | `90` | no |
| appservices_http_4xx_requests_threshold_warning | Warning regarding acceptable percent of 4xx errors | string | `50` | no | | appservices_http_4xx_requests_threshold_warning | Warning regarding acceptable percent of 4xx errors | string | `50` | no |
| appservices_http_5xx_requests_message | Custom message for App Services 5xx requests monitor | string | `` | no |
| appservices_http_5xx_requests_silenced | Groups to mute for App Services 5xx requests monitor | map | `<map>` | no | | appservices_http_5xx_requests_silenced | Groups to mute for App Services 5xx requests monitor | map | `<map>` | no |
| appservices_http_5xx_requests_threshold_critical | Maximum critical acceptable percent of 5xx errors | string | `90` | no | | appservices_http_5xx_requests_threshold_critical | Maximum critical acceptable percent of 5xx errors | string | `90` | no |
| appservices_http_5xx_requests_threshold_warning | Warning regarding acceptable percent of 5xx errors | string | `50` | no | | appservices_http_5xx_requests_threshold_warning | Warning regarding acceptable percent of 5xx errors | string | `50` | no |
| appservices_http_successful_requests_message | Custom message for App Services successful requests monitor | string | `` | no |
| appservices_http_successful_requests_silenced | Groups to mute for App Services successful requests monitor | map | `<map>` | no | | appservices_http_successful_requests_silenced | Groups to mute for App Services successful requests monitor | map | `<map>` | no |
| appservices_http_successful_requests_threshold_critical | Minimum critical acceptable percent of 2xx & 3xx requests | string | `10` | no | | appservices_http_successful_requests_threshold_critical | Minimum critical acceptable percent of 2xx & 3xx requests | string | `10` | no |
| appservices_http_successful_requests_threshold_warning | Warning regarding acceptable percent of 2xx & 3xx requests | string | `30` | no | | appservices_http_successful_requests_threshold_warning | Warning regarding acceptable percent of 2xx & 3xx requests | string | `30` | no |
| appservices_memory_usage_message | Custom message for App Services memory usage monitor | string | `` | no |
| appservices_memory_usage_silenced | Groups to mute for App Services memory usage monitor | map | `<map>` | no | | appservices_memory_usage_silenced | Groups to mute for App Services memory usage monitor | map | `<map>` | no |
| appservices_memory_usage_threshold_critical | Alerting threshold in Mib | string | `1073741824` | no | | appservices_memory_usage_threshold_critical | Alerting threshold in Mib | string | `1073741824` | no |
| appservices_memory_usage_threshold_warning | Warning threshold in MiB | string | `536870912` | no | | appservices_memory_usage_threshold_warning | Warning threshold in MiB | string | `536870912` | no |
| appservices_response_time_message | Custom message for App Services response time monitor | string | `` | no |
| appservices_response_time_silenced | Groups to mute for App Services response time monitor | map | `<map>` | no | | appservices_response_time_silenced | Groups to mute for App Services response time monitor | map | `<map>` | no |
| appservices_response_time_threshold_critical | Alerting threshold for response time in seconds | string | `10` | no | | appservices_response_time_threshold_critical | Alerting threshold for response time in seconds | string | `10` | no |
| appservices_response_time_threshold_warning | Warning threshold for response time in seconds | string | `5` | no | | appservices_response_time_threshold_warning | Warning threshold for response time in seconds | string | `5` | no |
| delay | Delay in seconds for the metric evaluation | string | `600` | no | | delay | Delay in seconds for the metric evaluation | string | `600` | no |
| environment | Architecture environment | string | - | yes | | environment | Architecture environment | string | - | yes |
| eventhub_errors_rate_message | Custom message for Event Hub errors monitor | string | `` | no |
| eventhub_errors_rate_silenced | Groups to mute for Event Hub errors monitor | map | `<map>` | no | | eventhub_errors_rate_silenced | Groups to mute for Event Hub errors monitor | map | `<map>` | no |
| eventhub_errors_rate_thresold_critical | Errors ratio (percentage) to trigger the critical alert | string | `90` | no | | eventhub_errors_rate_thresold_critical | Errors ratio (percentage) to trigger the critical alert | string | `90` | no |
| eventhub_errors_rate_thresold_warning | Errors ratio (percentage) to trigger a warning alert | string | `50` | no | | eventhub_errors_rate_thresold_warning | Errors ratio (percentage) to trigger a warning alert | string | `50` | no |
| eventhub_failed_requests_rate_message | Custom message for Event Hub failed requests monitor | string | `` | no |
| eventhub_failed_requests_rate_silenced | Groups to mute for Event Hub failed requests monitor | map | `<map>` | no | | eventhub_failed_requests_rate_silenced | Groups to mute for Event Hub failed requests monitor | map | `<map>` | no |
| eventhub_failed_requests_rate_thresold_critical | Failed requests ratio (percentage) to trigger the critical alert | string | `90` | no | | eventhub_failed_requests_rate_thresold_critical | Failed requests ratio (percentage) to trigger the critical alert | string | `90` | no |
| eventhub_failed_requests_rate_thresold_warning | Failed requests ratio (percentage) to trigger a warning alert | string | `50` | no | | eventhub_failed_requests_rate_thresold_warning | Failed requests ratio (percentage) to trigger a warning alert | string | `50` | no |
| eventhub_status_message | Custom message for Event Hub status monitor | string | `` | no |
| eventhub_status_silenced | Groups to mute for Event Hub status monitor | map | `<map>` | no | | eventhub_status_silenced | Groups to mute for Event Hub status monitor | map | `<map>` | no |
| filter_tags_custom | Tags used for custom filtering when filter_tags_use_defaults is false | string | `*` | no | | filter_tags_custom | Tags used for custom filtering when filter_tags_use_defaults is false | string | `*` | no |
| filter_tags_use_defaults | Use default filter tags convention | string | `true` | no | | filter_tags_use_defaults | Use default filter tags convention | string | `true` | no |
| iothub_dropped_d2c_telemetry_egress_message | Custom message for IoT Hub dropped d2c telemetry monitor | string | `` | no |
| iothub_dropped_d2c_telemetry_egress_silenced | Groups to mute for IoT Hub dropped d2c telemetry monitor | map | `<map>` | no | | iothub_dropped_d2c_telemetry_egress_silenced | Groups to mute for IoT Hub dropped d2c telemetry monitor | map | `<map>` | no |
| iothub_dropped_d2c_telemetry_egress_threshold_critical | D2C Telemetry Dropped limit (critical threshold) | string | `1000` | no | | iothub_dropped_d2c_telemetry_egress_threshold_critical | D2C Telemetry Dropped limit (critical threshold) | string | `1000` | no |
| iothub_dropped_d2c_telemetry_egress_threshold_warning | D2C Telemetry Dropped limit (warning threshold) | string | `500` | no | | iothub_dropped_d2c_telemetry_egress_threshold_warning | D2C Telemetry Dropped limit (warning threshold) | string | `500` | no |
| iothub_failed_c2d_methods_rate_message | Custom message for IoT Hub failed c2d method monitor | string | `` | no |
| iothub_failed_c2d_methods_rate_silenced | Groups to mute for IoT Hub failed c2d methods monitor | map | `<map>` | no | | iothub_failed_c2d_methods_rate_silenced | Groups to mute for IoT Hub failed c2d methods monitor | map | `<map>` | no |
| iothub_failed_c2d_methods_rate_threshold_critical | C2D Methods Failed rate limit (critical threshold) | string | `90` | no | | iothub_failed_c2d_methods_rate_threshold_critical | C2D Methods Failed rate limit (critical threshold) | string | `90` | no |
| iothub_failed_c2d_methods_rate_threshold_warning | C2D Methods Failed rate limit (warning threshold) | string | `50` | no | | iothub_failed_c2d_methods_rate_threshold_warning | C2D Methods Failed rate limit (warning threshold) | string | `50` | no |
| iothub_failed_c2d_twin_read_rate_message | Custom message for IoT Hub failed c2d twin read monitor | string | `` | no |
| iothub_failed_c2d_twin_read_rate_silenced | Groups to mute for IoT Hub failed c2d twin read monitor | map | `<map>` | no | | iothub_failed_c2d_twin_read_rate_silenced | Groups to mute for IoT Hub failed c2d twin read monitor | map | `<map>` | no |
| iothub_failed_c2d_twin_read_rate_threshold_critical | C2D Twin Read Failed rate limit (critical threshold) | string | `90` | no | | iothub_failed_c2d_twin_read_rate_threshold_critical | C2D Twin Read Failed rate limit (critical threshold) | string | `90` | no |
| iothub_failed_c2d_twin_read_rate_threshold_warning | C2D Twin Read Failed rate limit (warning threshold) | string | `50` | no | | iothub_failed_c2d_twin_read_rate_threshold_warning | C2D Twin Read Failed rate limit (warning threshold) | string | `50` | no |
| iothub_failed_c2d_twin_update_rate_message | Custom message for IoT Hub failed c2d twin update monitor | string | `` | no |
| iothub_failed_c2d_twin_update_rate_silenced | Groups to mute for IoT Hub failed c2d twin update monitor | map | `<map>` | no | | iothub_failed_c2d_twin_update_rate_silenced | Groups to mute for IoT Hub failed c2d twin update monitor | map | `<map>` | no |
| iothub_failed_c2d_twin_update_rate_threshold_critical | C2D Twin Update Failed rate limit (critical threshold) | string | `90` | no | | iothub_failed_c2d_twin_update_rate_threshold_critical | C2D Twin Update Failed rate limit (critical threshold) | string | `90` | no |
| iothub_failed_c2d_twin_update_rate_threshold_warning | C2D Twin Update Failed rate limit (warning threshold) | string | `50` | no | | iothub_failed_c2d_twin_update_rate_threshold_warning | C2D Twin Update Failed rate limit (warning threshold) | string | `50` | no |
| iothub_failed_d2c_twin_read_rate_message | Custom message for IoT Hub failed d2c twin read monitor | string | `` | no |
| iothub_failed_d2c_twin_read_rate_silenced | Groups to mute for IoT Hub failed d2c twin read monitor | map | `<map>` | no | | iothub_failed_d2c_twin_read_rate_silenced | Groups to mute for IoT Hub failed d2c twin read monitor | map | `<map>` | no |
| iothub_failed_d2c_twin_read_rate_threshold_critical | D2C Twin Read Failed rate limit (critical threshold) | string | `90` | no | | iothub_failed_d2c_twin_read_rate_threshold_critical | D2C Twin Read Failed rate limit (critical threshold) | string | `90` | no |
| iothub_failed_d2c_twin_read_rate_threshold_warning | D2C Twin Read Failed rate limit (warning threshold) | string | `50` | no | | iothub_failed_d2c_twin_read_rate_threshold_warning | D2C Twin Read Failed rate limit (warning threshold) | string | `50` | no |
| iothub_failed_d2c_twin_update_rate_message | Custom message for IoT Hub failed d2c twin update monitor | string | `` | no |
| iothub_failed_d2c_twin_update_rate_silenced | Groups to mute for IoT Hub failed d2c twin update monitor | map | `<map>` | no | | iothub_failed_d2c_twin_update_rate_silenced | Groups to mute for IoT Hub failed d2c twin update monitor | map | `<map>` | no |
| iothub_failed_d2c_twin_update_rate_threshold_critical | D2C Twin Update Failed rate limit (critical threshold) | string | `90` | no | | iothub_failed_d2c_twin_update_rate_threshold_critical | D2C Twin Update Failed rate limit (critical threshold) | string | `90` | no |
| iothub_failed_d2c_twin_update_rate_threshold_warning | D2C Twin Update Failed rate limit (warning threshold) | string | `50` | no | | iothub_failed_d2c_twin_update_rate_threshold_warning | D2C Twin Update Failed rate limit (warning threshold) | string | `50` | no |
| iothub_failed_jobs_rate_message | Custom message for IoT Hub failed jobs monitor | string | `` | no |
| iothub_failed_jobs_rate_silenced | Groups to mute for IoT Hub failed jobs monitor | map | `<map>` | no | | iothub_failed_jobs_rate_silenced | Groups to mute for IoT Hub failed jobs monitor | map | `<map>` | no |
| iothub_failed_jobs_rate_threshold_critical | Jobs Failed rate limit (critical threshold) | string | `90` | no | | iothub_failed_jobs_rate_threshold_critical | Jobs Failed rate limit (critical threshold) | string | `90` | no |
| iothub_failed_jobs_rate_threshold_warning | Jobs Failed rate limit (warning threshold) | string | `50` | no | | iothub_failed_jobs_rate_threshold_warning | Jobs Failed rate limit (warning threshold) | string | `50` | no |
| iothub_failed_listjobs_rate_message | Custom message for IoT Hub failed list jobs monitor | string | `` | no |
| iothub_failed_listjobs_rate_silenced | Groups to mute for IoT Hub failed list jobs monitor | map | `<map>` | no | | iothub_failed_listjobs_rate_silenced | Groups to mute for IoT Hub failed list jobs monitor | map | `<map>` | no |
| iothub_failed_listjobs_rate_threshold_critical | ListJobs Failed rate limit (critical threshold) | string | `90` | no | | iothub_failed_listjobs_rate_threshold_critical | ListJobs Failed rate limit (critical threshold) | string | `90` | no |
| iothub_failed_listjobs_rate_threshold_warning | ListJobs Failed rate limit (warning threshold) | string | `50` | no | | iothub_failed_listjobs_rate_threshold_warning | ListJobs Failed rate limit (warning threshold) | string | `50` | no |
| iothub_failed_queryjobs_rate_message | Custom message for IoT Hub failed query jobs monitor | string | `` | no |
| iothub_failed_queryjobs_rate_silenced | Groups to mute for IoT Hub failed query jobs monitor | map | `<map>` | no | | iothub_failed_queryjobs_rate_silenced | Groups to mute for IoT Hub failed query jobs monitor | map | `<map>` | no |
| iothub_failed_queryjobs_rate_threshold_critical | QueryJobs Failed rate limit (critical threshold) | string | `90` | no | | iothub_failed_queryjobs_rate_threshold_critical | QueryJobs Failed rate limit (critical threshold) | string | `90` | no |
| iothub_failed_queryjobs_rate_threshold_warning | QueryJobs Failed rate limit (warning threshold) | string | `50` | no | | iothub_failed_queryjobs_rate_threshold_warning | QueryJobs Failed rate limit (warning threshold) | string | `50` | no |
| iothub_fallback_d2c_telemetry_egress_message | Custom message for IoT Hub fallback d2c telemetry monitor | string | `` | no |
| iothub_fallback_d2c_telemetry_egress_silenced | Groups to mute for IoT Hub fallback d2c telemetry monitor | map | `<map>` | no | | iothub_fallback_d2c_telemetry_egress_silenced | Groups to mute for IoT Hub fallback d2c telemetry monitor | map | `<map>` | no |
| iothub_fallback_d2c_telemetry_egress_threshold_critical | D2C Telemetry Fallback limit (critical threshold) | string | `1000` | no | | iothub_fallback_d2c_telemetry_egress_threshold_critical | D2C Telemetry Fallback limit (critical threshold) | string | `1000` | no |
| iothub_fallback_d2c_telemetry_egress_threshold_warning | D2C Telemetry Fallback limit (warning threshold) | string | `500` | no | | iothub_fallback_d2c_telemetry_egress_threshold_warning | D2C Telemetry Fallback limit (warning threshold) | string | `500` | no |
| iothub_invalid_d2c_telemetry_egress_message | Custom message for IoT Hub invalid d2c telemetry monitor | string | `` | no |
| iothub_invalid_d2c_telemetry_egress_silenced | Groups to mute for IoT Hub invalid d2c telemetry monitor | map | `<map>` | no | | iothub_invalid_d2c_telemetry_egress_silenced | Groups to mute for IoT Hub invalid d2c telemetry monitor | map | `<map>` | no |
| iothub_invalid_d2c_telemetry_egress_threshold_critical | D2C Telemetry Invalid limit (critical threshold) | string | `1000` | no | | iothub_invalid_d2c_telemetry_egress_threshold_critical | D2C Telemetry Invalid limit (critical threshold) | string | `1000` | no |
| iothub_invalid_d2c_telemetry_egress_threshold_warning | D2C Telemetry Invalid limit (warning threshold) | string | `500` | no | | iothub_invalid_d2c_telemetry_egress_threshold_warning | D2C Telemetry Invalid limit (warning threshold) | string | `500` | no |
| iothub_orphaned_d2c_telemetry_egress_message | Custom message for IoT Hub orphaned d2c telemetry monitor | string | `` | no |
| iothub_orphaned_d2c_telemetry_egress_silenced | Groups to mute for IoT Hub orphaned d2c telemetry monitor | map | `<map>` | no | | iothub_orphaned_d2c_telemetry_egress_silenced | Groups to mute for IoT Hub orphaned d2c telemetry monitor | map | `<map>` | no |
| iothub_orphaned_d2c_telemetry_egress_threshold_critical | D2C Telemetry Orphaned limit (critical threshold) | string | `1000` | no | | iothub_orphaned_d2c_telemetry_egress_threshold_critical | D2C Telemetry Orphaned limit (critical threshold) | string | `1000` | no |
| iothub_orphaned_d2c_telemetry_egress_threshold_warning | D2C Telemetry Orphaned limit (warning threshold) | string | `500` | no | | iothub_orphaned_d2c_telemetry_egress_threshold_warning | D2C Telemetry Orphaned limit (warning threshold) | string | `500` | no |
| iothub_status_message | Custom message for IoT Hub status monitor | string | `` | no |
| iothub_status_silenced | Groups to mute for IoT Hub status monitor | map | `<map>` | no | | iothub_status_silenced | Groups to mute for IoT Hub status monitor | map | `<map>` | no |
| iothub_too_many_d2c_telemetry_ingress_nosent_message | Custom message for IoT Hub unsent d2c telemetry monitor | string | `` | no |
| iothub_too_many_d2c_telemetry_ingress_nosent_silenced | Groups to mute for IoT Hub unsent d2c telemetry monitor | map | `<map>` | no | | iothub_too_many_d2c_telemetry_ingress_nosent_silenced | Groups to mute for IoT Hub unsent d2c telemetry monitor | map | `<map>` | no |
| iothub_total_devices_silenced | Groups to mute for IoT Hub total device monitor | map | `<map>` | no | | iothub_total_devices_message | Custom message for IoT Hub total devices monitor | string | `` | no |
| iothub_total_devices_silenced | Groups to mute for IoT Hub total devices monitor | map | `<map>` | no |
| message | Message sent when a monitor is triggered | string | - | yes | | message | Message sent when a monitor is triggered | string | - | yes |
| non_taggable_filter_tags | Tags used for filtering for components without tag support | string | `*` | no | | non_taggable_filter_tags | Tags used for filtering for components without tag support | string | `*` | no |
| redis_evictedkeys_limit_message | Custom message for Redis evicted keys monitor | string | `` | no |
| redis_evictedkeys_limit_silenced | Groups to mute for Redis evicted keys monitor | map | `<map>` | no | | redis_evictedkeys_limit_silenced | Groups to mute for Redis evicted keys monitor | map | `<map>` | no |
| redis_evictedkeys_limit_threshold_critical | Evicted keys limit (critical threshold) | string | `100` | no | | redis_evictedkeys_limit_threshold_critical | Evicted keys limit (critical threshold) | string | `100` | no |
| redis_evictedkeys_limit_threshold_warning | Evicted keys limit (warning threshold) | string | `0` | no | | redis_evictedkeys_limit_threshold_warning | Evicted keys limit (warning threshold) | string | `0` | no |
| redis_percent_processor_time_message | Custom message for Redis processor monitor | string | `` | no |
| redis_percent_processor_time_silenced | Groups to mute for Redis processor monitor | map | `<map>` | no | | redis_percent_processor_time_silenced | Groups to mute for Redis processor monitor | map | `<map>` | no |
| redis_percent_processor_time_threshold_critical | Processor time percent (critical threshold) | string | `80` | no | | redis_percent_processor_time_threshold_critical | Processor time percent (critical threshold) | string | `80` | no |
| redis_percent_processor_time_threshold_warning | Processor time percent (warning threshold) | string | `60` | no | | redis_percent_processor_time_threshold_warning | Processor time percent (warning threshold) | string | `60` | no |
| redis_server_load_rate_message | Custom message for Redis server load monitor | string | `` | no |
| redis_server_load_rate_silenced | Groups to mute for Redis server load monitor | map | `<map>` | no | | redis_server_load_rate_silenced | Groups to mute for Redis server load monitor | map | `<map>` | no |
| redis_server_load_rate_threshold_critical | Server CPU load rate (critical threshold) | string | `90` | no | | redis_server_load_rate_threshold_critical | Server CPU load rate (critical threshold) | string | `90` | no |
| redis_server_load_rate_threshold_warning | Server CPU load rate (warning threshold) | string | `70` | no | | redis_server_load_rate_threshold_warning | Server CPU load rate (warning threshold) | string | `70` | no |
| redis_status_message | Custom message for Redis status monitor | string | `` | no |
| redis_status_silenced | Groups to mute for Redis status monitor | map | `<map>` | no |
| sqldatabase_cpu_message | Custom message for SQL CPU monitor | string | `` | no |
| sqldatabase_cpu_silenced | Groups to mute for SQL CPU monitor | map | `<map>` | no | | sqldatabase_cpu_silenced | Groups to mute for SQL CPU monitor | map | `<map>` | no |
| sqldatabase_cpu_threshold_critical | CPU usage in percent (critical threshold) | string | `90` | no | | sqldatabase_cpu_threshold_critical | CPU usage in percent (critical threshold) | string | `90` | no |
| sqldatabase_cpu_threshold_warning | CPU usage in percent (warning threshold) | string | `80` | no | | sqldatabase_cpu_threshold_warning | CPU usage in percent (warning threshold) | string | `80` | no |
| sqldatabase_deadlock_message | Custom message for SQL Deadlock monitor | string | `` | no |
| sqldatabase_deadlock_silenced | Groups to mute for SQL Deadlock monitor | map | `<map>` | no | | sqldatabase_deadlock_silenced | Groups to mute for SQL Deadlock monitor | map | `<map>` | no |
| sqldatabase_deadlock_threshold_critical | Amount of Deadlocks (critical threshold) | string | `1` | no | | sqldatabase_deadlock_threshold_critical | Amount of Deadlocks (critical threshold) | string | `1` | no |
| sqldatabase_diskspace_message | Custom message for SQL disk space monitor | string | `` | no |
| sqldatabase_diskspace_silenced | Groups to mute for SQL disk space monitor | map | `<map>` | no | | sqldatabase_diskspace_silenced | Groups to mute for SQL disk space monitor | map | `<map>` | no |
| sqldatabase_diskspace_threshold_critical | Disk space used in percent (critical threshold) | string | `90` | no | | sqldatabase_diskspace_threshold_critical | Disk space used in percent (critical threshold) | string | `90` | no |
| sqldatabase_diskspace_threshold_warning | Disk space used in percent (warning threshold) | string | `80` | no | | sqldatabase_diskspace_threshold_warning | Disk space used in percent (warning threshold) | string | `80` | no |
| sqldatabase_dtu_message | Custom message for SQL DTU monitor | string | `` | no |
| sqldatabase_dtu_silenced | Groups to mute for SQL DTU monitor | map | `<map>` | no | | sqldatabase_dtu_silenced | Groups to mute for SQL DTU monitor | map | `<map>` | no |
| sqldatabase_dtu_threshold_critical | Amount of DTU used (critical threshold) | string | `90` | no | | sqldatabase_dtu_threshold_critical | Amount of DTU used (critical threshold) | string | `90` | no |
| sqldatabase_dtu_threshold_warning | Amount of DTU used (warning threshold) | string | `85` | no | | sqldatabase_dtu_threshold_warning | Amount of DTU used (warning threshold) | string | `85` | no |
| storage_authorization_error_requests_message | Custom message for Storage authorization errors monitor | string | `` | no |
| storage_authorization_error_requests_silenced | Groups to mute for Storage authorization errors monitor | map | `<map>` | no | | storage_authorization_error_requests_silenced | Groups to mute for Storage authorization errors monitor | map | `<map>` | no |
| storage_authorization_error_requests_threshold_critical | Maximum acceptable percent of authorization error requests for a storage | string | `90` | no | | storage_authorization_error_requests_threshold_critical | Maximum acceptable percent of authorization error requests for a storage | string | `90` | no |
| storage_authorization_error_requests_threshold_warning | Warning regarding acceptable percent of authorization error requests for a storage | string | `50` | no | | storage_authorization_error_requests_threshold_warning | Warning regarding acceptable percent of authorization error requests for a storage | string | `50` | no |
| storage_availability_message | Custom message for Storage availability monitor | string | `` | no |
| storage_availability_silenced | Groups to mute for Storage availability monitor | map | `<map>` | no | | storage_availability_silenced | Groups to mute for Storage availability monitor | map | `<map>` | no |
| storage_availability_threshold_critical | Minimum acceptable percent of availability for a storage | string | `50` | no | | storage_availability_threshold_critical | Minimum acceptable percent of availability for a storage | string | `50` | no |
| storage_availability_threshold_warning | Warning regarding acceptable percent of availability for a storage | string | `90` | no | | storage_availability_threshold_warning | Warning regarding acceptable percent of availability for a storage | string | `90` | no |
| storage_client_other_error_requests_message | Custom message for Storage other errors monitor | string | `` | no |
| storage_client_other_error_requests_silenced | Groups to mute for Storage other errors monitor | map | `<map>` | no | | storage_client_other_error_requests_silenced | Groups to mute for Storage other errors monitor | map | `<map>` | no |
| storage_client_other_error_requests_threshold_critical | Maximum acceptable percent of client other error requests for a storage | string | `90` | no | | storage_client_other_error_requests_threshold_critical | Maximum acceptable percent of client other error requests for a storage | string | `90` | no |
| storage_client_other_error_requests_threshold_warning | Warning regarding acceptable percent of client other error requests for a storage | string | `50` | no | | storage_client_other_error_requests_threshold_warning | Warning regarding acceptable percent of client other error requests for a storage | string | `50` | no |
| storage_latency_message | Custom message for Storage latency monitor | string | `` | no |
| storage_latency_silenced | Groups to mute for Storage latency monitor | map | `<map>` | no | | storage_latency_silenced | Groups to mute for Storage latency monitor | map | `<map>` | no |
| storage_latency_threshold_critical | Maximum acceptable end to end latency (ms) for a storage | string | `2000` | no | | storage_latency_threshold_critical | Maximum acceptable end to end latency (ms) for a storage | string | `2000` | no |
| storage_latency_threshold_warning | Warning regarding acceptable end to end latency (ms) for a storage | string | `1000` | no | | storage_latency_threshold_warning | Warning regarding acceptable end to end latency (ms) for a storage | string | `1000` | no |
| storage_network_error_requests_message | Custom message for Storage network errors monitor | string | `` | no |
| storage_network_error_requests_silenced | Groups to mute for Storage network errors monitor | map | `<map>` | no | | storage_network_error_requests_silenced | Groups to mute for Storage network errors monitor | map | `<map>` | no |
| storage_network_error_requests_threshold_critical | Maximum acceptable percent of network error requests for a storage | string | `90` | no | | storage_network_error_requests_threshold_critical | Maximum acceptable percent of network error requests for a storage | string | `90` | no |
| storage_network_error_requests_threshold_warning | Warning regarding acceptable percent of network error requests for a storage | string | `50` | no | | storage_network_error_requests_threshold_warning | Warning regarding acceptable percent of network error requests for a storage | string | `50` | no |
| storage_server_other_error_requests_message | Custom message for Storage server other errors monitor | string | `` | no |
| storage_server_other_error_requests_silenced | Groups to mute for Storage server other errors monitor | map | `<map>` | no | | storage_server_other_error_requests_silenced | Groups to mute for Storage server other errors monitor | map | `<map>` | no |
| storage_server_other_error_requests_threshold_critical | Maximum acceptable percent of server other error requests for a storage | string | `90` | no | | storage_server_other_error_requests_threshold_critical | Maximum acceptable percent of server other error requests for a storage | string | `90` | no |
| storage_server_other_error_requests_threshold_warning | Warning regarding acceptable percent of server other error requests for a storage | string | `50` | no | | storage_server_other_error_requests_threshold_warning | Warning regarding acceptable percent of server other error requests for a storage | string | `50` | no |
| storage_successful_requests_message | Custom message for Storage sucessful requests monitor | string | `` | no |
| storage_successful_requests_silenced | Groups to mute for Storage sucessful requests monitor | map | `<map>` | no | | storage_successful_requests_silenced | Groups to mute for Storage sucessful requests monitor | map | `<map>` | no |
| storage_successful_requests_threshold_critical | Minimum acceptable percent of successful requests for a storage | string | `10` | no | | storage_successful_requests_threshold_critical | Minimum acceptable percent of successful requests for a storage | string | `10` | no |
| storage_successful_requests_threshold_warning | Warning regarding acceptable percent of successful requests for a storage | string | `30` | no | | storage_successful_requests_threshold_warning | Warning regarding acceptable percent of successful requests for a storage | string | `30` | no |
| storage_throttling_error_requests_message | Custom message for Storage throttling error monitor | string | `` | no |
| storage_throttling_error_requests_silenced | Groups to mute for Storage throttling error monitor | map | `<map>` | no | | storage_throttling_error_requests_silenced | Groups to mute for Storage throttling error monitor | map | `<map>` | no |
| storage_throttling_error_requests_threshold_critical | Maximum acceptable percent of throttling error requests for a storage | string | `90` | no | | storage_throttling_error_requests_threshold_critical | Maximum acceptable percent of throttling error requests for a storage | string | `90` | no |
| storage_throttling_error_requests_threshold_warning | Warning regarding acceptable percent of throttling error requests for a storage | string | `50` | no | | storage_throttling_error_requests_threshold_warning | Warning regarding acceptable percent of throttling error requests for a storage | string | `50` | no |
| storage_timeout_error_requests_message | Custom message for Storage timeout monitor | string | `` | no |
| storage_timeout_error_requests_silenced | Groups to mute for Storage timeout monitor | map | `<map>` | no | | storage_timeout_error_requests_silenced | Groups to mute for Storage timeout monitor | map | `<map>` | no |
| storage_timeout_error_requests_threshold_critical | Maximum acceptable percent of timeout error requests for a storage | string | `90` | no | | storage_timeout_error_requests_threshold_critical | Maximum acceptable percent of timeout error requests for a storage | string | `90` | no |
| storage_timeout_error_requests_threshold_warning | Warning regarding acceptable percent of timeout error requests for a storage | string | `50` | no | | storage_timeout_error_requests_threshold_warning | Warning regarding acceptable percent of timeout error requests for a storage | string | `50` | no |
| streamanalytics_conversion_errors_message | Custom message for Stream Analytics conversion errors monitor | string | `` | no |
| streamanalytics_conversion_errors_silenced | Groups to mute for Stream Analytics conversion errors monitor | map | `<map>` | no | | streamanalytics_conversion_errors_silenced | Groups to mute for Stream Analytics conversion errors monitor | map | `<map>` | no |
| streamanalytics_conversion_errors_threshold_critical | Conversion errors limit (critical threshold) | string | `10` | no | | streamanalytics_conversion_errors_threshold_critical | Conversion errors limit (critical threshold) | string | `10` | no |
| streamanalytics_conversion_errors_threshold_warning | Conversion errors limit (warning threshold) | string | `0` | no | | streamanalytics_conversion_errors_threshold_warning | Conversion errors limit (warning threshold) | string | `0` | no |
| streamanalytics_failed_function_requests_message | Custom message for Stream Analytics failed requests monitor | string | `` | no |
| streamanalytics_failed_function_requests_silenced | Groups to mute for Stream Analytics failed requests monitor | map | `<map>` | no | | streamanalytics_failed_function_requests_silenced | Groups to mute for Stream Analytics failed requests monitor | map | `<map>` | no |
| streamanalytics_failed_function_requests_threshold_critical | Failed Function Request rate limit (critical threshold) | string | `10` | no | | streamanalytics_failed_function_requests_threshold_critical | Failed Function Request rate limit (critical threshold) | string | `10` | no |
| streamanalytics_failed_function_requests_threshold_warning | Failed Function Request rate limit (warning threshold) | string | `0` | no | | streamanalytics_failed_function_requests_threshold_warning | Failed Function Request rate limit (warning threshold) | string | `0` | no |
| streamanalytics_runtime_errors_message | Custom message for Stream Analytics runtime errors monitor | string | `` | no |
| streamanalytics_runtime_errors_silenced | Groups to mute for Stream Analytics runtime errors monitor | map | `<map>` | no | | streamanalytics_runtime_errors_silenced | Groups to mute for Stream Analytics runtime errors monitor | map | `<map>` | no |
| streamanalytics_runtime_errors_threshold_critical | Runtime errors limit (critical threshold) | string | `10` | no | | streamanalytics_runtime_errors_threshold_critical | Runtime errors limit (critical threshold) | string | `10` | no |
| streamanalytics_runtime_errors_threshold_warning | Runtime errors limit (warning threshold) | string | `0` | no | | streamanalytics_runtime_errors_threshold_warning | Runtime errors limit (warning threshold) | string | `0` | no |
| streamanalytics_status_message | Custom message for Stream Analytics status monitor | string | `` | no |
| streamanalytics_status_silenced | Groups to mute for Stream Analytics status monitor | map | `<map>` | no | | streamanalytics_status_silenced | Groups to mute for Stream Analytics status monitor | map | `<map>` | no |
| streamanalytics_su_utilization_message | Custom message for Stream Analytics utilization monitor | string | `` | no |
| streamanalytics_su_utilization_silenced | Groups to mute for Stream Analytics utilization monitor | map | `<map>` | no | | streamanalytics_su_utilization_silenced | Groups to mute for Stream Analytics utilization monitor | map | `<map>` | no |
| streamanalytics_su_utilization_threshold_critical | Streaming Unit utilization rate limit (critical threshold) | string | `80` | no | | streamanalytics_su_utilization_threshold_critical | Streaming Unit utilization rate limit (critical threshold) | string | `80` | no |
| streamanalytics_su_utilization_threshold_warning | Streaming Unit utilization rate limit (warning threshold) | string | `60` | no | | streamanalytics_su_utilization_threshold_warning | Streaming Unit utilization rate limit (warning threshold) | string | `60` | no |

View File

@ -29,19 +29,24 @@ Inputs
|------|-------------|:----:|:-----:|:-----:| |------|-------------|:----:|:-----:|:-----:|
| delay | Delay in seconds for the metric evaluation | string | `600` | no | | delay | Delay in seconds for the metric evaluation | string | `600` | no |
| environment | Architecture environment | string | - | yes | | environment | Architecture environment | string | - | yes |
| failed_requests_message | Custom message for API Management failed requests monitor | string | `` | no |
| failed_requests_silenced | Groups to mute for API Management failed requests monitor | map | `<map>` | no | | failed_requests_silenced | Groups to mute for API Management failed requests monitor | map | `<map>` | no |
| failed_requests_threshold_critical | Maximum acceptable percent of failed requests | string | `90` | no | | failed_requests_threshold_critical | Maximum acceptable percent of failed requests | string | `90` | no |
| failed_requests_threshold_warning | Warning regarding acceptable percent of failed requests | string | `50` | no | | failed_requests_threshold_warning | Warning regarding acceptable percent of failed requests | string | `50` | no |
| filter_tags_custom | Tags used for custom filtering when filter_tags_use_defaults is false | string | `*` | no | | filter_tags_custom | Tags used for custom filtering when filter_tags_use_defaults is false | string | `*` | no |
| filter_tags_use_defaults | Use default filter tags convention | string | `true` | no | | filter_tags_use_defaults | Use default filter tags convention | string | `true` | no |
| message | Message sent when a Redis monitor is triggered | string | - | yes | | message | Message sent when a Redis monitor is triggered | string | - | yes |
| other_requests_message | Custom message for API Management other requests monitor | string | `` | no |
| other_requests_silenced | Groups to mute for API Management other requests monitor | map | `<map>` | no | | other_requests_silenced | Groups to mute for API Management other requests monitor | map | `<map>` | no |
| other_requests_threshold_critical | Maximum acceptable percent of other requests | string | `90` | no | | other_requests_threshold_critical | Maximum acceptable percent of other requests | string | `90` | no |
| other_requests_threshold_warning | Warning regarding acceptable percent of other requests | string | `50` | no | | other_requests_threshold_warning | Warning regarding acceptable percent of other requests | string | `50` | no |
| status_message | Custom message for API Management status monitor | string | `` | no |
| status_silenced | Groups to mute for API Management status monitor | map | `<map>` | no | | status_silenced | Groups to mute for API Management status monitor | map | `<map>` | no |
| successful_requests_message | Custom message for API Management successful requests monitor | string | `` | no |
| successful_requests_silenced | Groups to mute for API Management successful requests monitor | map | `<map>` | no | | successful_requests_silenced | Groups to mute for API Management successful requests monitor | map | `<map>` | no |
| successful_requests_threshold_critical | Minimum acceptable percent of successful requests | string | `10` | no | | successful_requests_threshold_critical | Minimum acceptable percent of successful requests | string | `10` | no |
| successful_requests_threshold_warning | Warning regarding acceptable percent of successful requests | string | `30` | no | | successful_requests_threshold_warning | Warning regarding acceptable percent of successful requests | string | `30` | no |
| unauthorized_requests_message | Custom message for API Management unauthorized requests monitor | string | `` | no |
| unauthorized_requests_silenced | Groups to mute for API Management unauthorized requests monitor | map | `<map>` | no | | unauthorized_requests_silenced | Groups to mute for API Management unauthorized requests monitor | map | `<map>` | no |
| unauthorized_requests_threshold_critical | Maximum acceptable percent of unauthorized requests | string | `90` | no | | unauthorized_requests_threshold_critical | Maximum acceptable percent of unauthorized requests | string | `90` | no |
| unauthorized_requests_threshold_warning | Warning regarding acceptable percent of unauthorized requests | string | `50` | no | | unauthorized_requests_threshold_warning | Warning regarding acceptable percent of unauthorized requests | string | `50` | no |

View File

@ -31,12 +31,24 @@ variable "status_silenced" {
default = {} default = {}
} }
variable "status_message" {
description = "Custom message for API Management status monitor"
type = "string"
default = ""
}
variable "failed_requests_silenced" { variable "failed_requests_silenced" {
description = "Groups to mute for API Management failed requests monitor" description = "Groups to mute for API Management failed requests monitor"
type = "map" type = "map"
default = {} default = {}
} }
variable "failed_requests_message" {
description = "Custom message for API Management failed requests monitor"
type = "string"
default = ""
}
variable "failed_requests_threshold_critical" { variable "failed_requests_threshold_critical" {
description = "Maximum acceptable percent of failed requests" description = "Maximum acceptable percent of failed requests"
default = 90 default = 90
@ -53,6 +65,12 @@ variable "other_requests_silenced" {
default = {} default = {}
} }
variable "other_requests_message" {
description = "Custom message for API Management other requests monitor"
type = "string"
default = ""
}
variable "other_requests_threshold_critical" { variable "other_requests_threshold_critical" {
description = "Maximum acceptable percent of other requests" description = "Maximum acceptable percent of other requests"
default = 90 default = 90
@ -69,6 +87,12 @@ variable "unauthorized_requests_silenced" {
default = {} default = {}
} }
variable "unauthorized_requests_message" {
description = "Custom message for API Management unauthorized requests monitor"
type = "string"
default = ""
}
variable "unauthorized_requests_threshold_critical" { variable "unauthorized_requests_threshold_critical" {
description = "Maximum acceptable percent of unauthorized requests" description = "Maximum acceptable percent of unauthorized requests"
default = 90 default = 90
@ -85,6 +109,12 @@ variable "successful_requests_silenced" {
default = {} default = {}
} }
variable "successful_requests_message" {
description = "Custom message for API Management successful requests monitor"
type = "string"
default = ""
}
variable "successful_requests_threshold_critical" { variable "successful_requests_threshold_critical" {
description = "Minimum acceptable percent of successful requests" description = "Minimum acceptable percent of successful requests"
default = 10 default = 10

View File

@ -10,7 +10,7 @@ data "template_file" "filter" {
resource "datadog_monitor" "apimgt_status" { resource "datadog_monitor" "apimgt_status" {
name = "[${var.environment}] API Management is down" name = "[${var.environment}] API Management is down"
message = "${var.message}" message = "${coalesce(var.status_message, var.message)}"
query = <<EOF query = <<EOF
avg(last_5m):avg:azure.apimanagement_service.status{${data.template_file.filter.rendered}} by {resource_group,region,name} < 1 avg(last_5m):avg:azure.apimanagement_service.status{${data.template_file.filter.rendered}} by {resource_group,region,name} < 1
@ -40,7 +40,7 @@ resource "datadog_monitor" "apimgt_status" {
resource "datadog_monitor" "apimgt_failed_requests" { resource "datadog_monitor" "apimgt_failed_requests" {
name = "[${var.environment}] API Management too many failed requests {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)" name = "[${var.environment}] API Management too many failed requests {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)"
message = "${var.message}" message = "${coalesce(var.failed_requests_message, var.message)}"
query = <<EOF query = <<EOF
sum(last_5m): ( sum(last_5m): (
@ -73,7 +73,7 @@ resource "datadog_monitor" "apimgt_failed_requests" {
resource "datadog_monitor" "apimgt_other_requests" { resource "datadog_monitor" "apimgt_other_requests" {
name = "[${var.environment}] API Management too many other requests {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)" name = "[${var.environment}] API Management too many other requests {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)"
message = "${var.message}" message = "${coalesce(var.other_requests_message, var.message)}"
query = <<EOF query = <<EOF
sum(last_5m): ( sum(last_5m): (
@ -106,7 +106,7 @@ resource "datadog_monitor" "apimgt_other_requests" {
resource "datadog_monitor" "apimgt_unauthorized_requests" { resource "datadog_monitor" "apimgt_unauthorized_requests" {
name = "[${var.environment}] API Management too many unauthorized requests {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)" name = "[${var.environment}] API Management too many unauthorized requests {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)"
message = "${var.message}" message = "${coalesce(var.unauthorized_requests_message, var.message)}"
query = <<EOF query = <<EOF
sum(last_5m): ( sum(last_5m): (
@ -139,7 +139,7 @@ resource "datadog_monitor" "apimgt_unauthorized_requests" {
resource "datadog_monitor" "apimgt_successful_requests" { resource "datadog_monitor" "apimgt_successful_requests" {
name = "[${var.environment}] API Management successful requests rate too low {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)" name = "[${var.environment}] API Management successful requests rate too low {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)"
message = "${var.message}" message = "${coalesce(var.successful_requests_message, var.message)}"
query = <<EOF query = <<EOF
sum(last_5m): ( sum(last_5m): (

View File

@ -32,19 +32,24 @@ Inputs
| environment | Architecture environment | string | - | yes | | environment | Architecture environment | string | - | yes |
| filter_tags_custom | Tags used for custom filtering when filter_tags_use_defaults is false | string | `*` | no | | filter_tags_custom | Tags used for custom filtering when filter_tags_use_defaults is false | string | `*` | no |
| filter_tags_use_defaults | Use default filter tags convention | string | `true` | no | | filter_tags_use_defaults | Use default filter tags convention | string | `true` | no |
| http_4xx_requests_message | Custom message for App Services 4xx requests monitor | string | `` | no |
| http_4xx_requests_silenced | Groups to mute for App Services 4xx requests monitor | map | `<map>` | no | | http_4xx_requests_silenced | Groups to mute for App Services 4xx requests monitor | map | `<map>` | no |
| http_4xx_requests_threshold_critical | Maximum critical acceptable percent of 4xx errors | string | `90` | no | | http_4xx_requests_threshold_critical | Maximum critical acceptable percent of 4xx errors | string | `90` | no |
| http_4xx_requests_threshold_warning | Warning regarding acceptable percent of 4xx errors | string | `50` | no | | http_4xx_requests_threshold_warning | Warning regarding acceptable percent of 4xx errors | string | `50` | no |
| http_5xx_requests_message | Custom message for App Services 5xx requests monitor | string | `` | no |
| http_5xx_requests_silenced | Groups to mute for App Services 5xx requests monitor | map | `<map>` | no | | http_5xx_requests_silenced | Groups to mute for App Services 5xx requests monitor | map | `<map>` | no |
| http_5xx_requests_threshold_critical | Maximum critical acceptable percent of 5xx errors | string | `90` | no | | http_5xx_requests_threshold_critical | Maximum critical acceptable percent of 5xx errors | string | `90` | no |
| http_5xx_requests_threshold_warning | Warning regarding acceptable percent of 5xx errors | string | `50` | no | | http_5xx_requests_threshold_warning | Warning regarding acceptable percent of 5xx errors | string | `50` | no |
| http_successful_requests_message | Custom message for App Services successful requests monitor | string | `` | no |
| http_successful_requests_silenced | Groups to mute for App Services successful requests monitor | map | `<map>` | no | | http_successful_requests_silenced | Groups to mute for App Services successful requests monitor | map | `<map>` | no |
| http_successful_requests_threshold_critical | Minimum critical acceptable percent of 2xx & 3xx requests | string | `10` | no | | http_successful_requests_threshold_critical | Minimum critical acceptable percent of 2xx & 3xx requests | string | `10` | no |
| http_successful_requests_threshold_warning | Warning regarding acceptable percent of 2xx & 3xx requests | string | `30` | no | | http_successful_requests_threshold_warning | Warning regarding acceptable percent of 2xx & 3xx requests | string | `30` | no |
| memory_usage_message | Custom message for App Services memory usage monitor | string | `` | no |
| memory_usage_silenced | Groups to mute for App Services memory usage monitor | map | `<map>` | no | | memory_usage_silenced | Groups to mute for App Services memory usage monitor | map | `<map>` | no |
| memory_usage_threshold_critical | Alerting threshold in Mib | string | `1073741824` | no | | memory_usage_threshold_critical | Alerting threshold in Mib | string | `1073741824` | no |
| memory_usage_threshold_warning | Warning threshold in MiB | string | `536870912` | no | | memory_usage_threshold_warning | Warning threshold in MiB | string | `536870912` | no |
| message | Message sent when a monitor is triggered | string | - | yes | | message | Message sent when a monitor is triggered | string | - | yes |
| response_time_message | Custom message for App Services response time monitor | string | `` | no |
| response_time_silenced | Groups to mute for App Services response time monitor | map | `<map>` | no | | response_time_silenced | Groups to mute for App Services response time monitor | map | `<map>` | no |
| response_time_threshold_critical | Alerting threshold for response time in seconds | string | `10` | no | | response_time_threshold_critical | Alerting threshold for response time in seconds | string | `10` | no |
| response_time_threshold_warning | Warning threshold for response time in seconds | string | `5` | no | | response_time_threshold_warning | Warning threshold for response time in seconds | string | `5` | no |

View File

@ -22,12 +22,19 @@ variable "delay" {
default = 600 default = 600
} }
# Azure App Services specific variables
variable "response_time_silenced" { variable "response_time_silenced" {
description = "Groups to mute for App Services response time monitor" description = "Groups to mute for App Services response time monitor"
type = "map" type = "map"
default = {} default = {}
} }
variable "response_time_message" {
description = "Custom message for App Services response time monitor"
type = "string"
default = ""
}
variable "response_time_threshold_critical" { variable "response_time_threshold_critical" {
default = 10 default = 10
description = "Alerting threshold for response time in seconds" description = "Alerting threshold for response time in seconds"
@ -44,6 +51,12 @@ variable "memory_usage_silenced" {
default = {} default = {}
} }
variable "memory_usage_message" {
description = "Custom message for App Services memory usage monitor"
type = "string"
default = ""
}
variable "memory_usage_threshold_critical" { variable "memory_usage_threshold_critical" {
default = 1073741824 # 1Gb default = 1073741824 # 1Gb
description = "Alerting threshold in Mib" description = "Alerting threshold in Mib"
@ -60,6 +73,12 @@ variable "http_4xx_requests_silenced" {
default = {} default = {}
} }
variable "http_4xx_requests_message" {
description = "Custom message for App Services 4xx requests monitor"
type = "string"
default = ""
}
variable "http_4xx_requests_threshold_critical" { variable "http_4xx_requests_threshold_critical" {
default = 90 default = 90
description = "Maximum critical acceptable percent of 4xx errors" description = "Maximum critical acceptable percent of 4xx errors"
@ -76,6 +95,12 @@ variable "http_5xx_requests_silenced" {
default = {} default = {}
} }
variable "http_5xx_requests_message" {
description = "Custom message for App Services 5xx requests monitor"
type = "string"
default = ""
}
variable "http_5xx_requests_threshold_critical" { variable "http_5xx_requests_threshold_critical" {
default = 90 default = 90
description = "Maximum critical acceptable percent of 5xx errors" description = "Maximum critical acceptable percent of 5xx errors"
@ -92,6 +117,12 @@ variable "http_successful_requests_silenced" {
default = {} default = {}
} }
variable "http_successful_requests_message" {
description = "Custom message for App Services successful requests monitor"
type = "string"
default = ""
}
variable "http_successful_requests_threshold_critical" { variable "http_successful_requests_threshold_critical" {
default = 10 default = 10
description = "Minimum critical acceptable percent of 2xx & 3xx requests" description = "Minimum critical acceptable percent of 2xx & 3xx requests"

View File

@ -10,7 +10,7 @@ data "template_file" "filter" {
resource "datadog_monitor" "appservices_response_time" { resource "datadog_monitor" "appservices_response_time" {
name = "[${var.environment}] App Services response time too high {{comparator}} {{#is_alert}}{{threshold}}s{{/is_alert}}{{#is_warning}}{{warn_threshold}}s{{/is_warning}} ({{value}}s)" name = "[${var.environment}] App Services response time too high {{comparator}} {{#is_alert}}{{threshold}}s{{/is_alert}}{{#is_warning}}{{warn_threshold}}s{{/is_warning}} ({{value}}s)"
type = "metric alert" type = "metric alert"
message = "${var.message}" message = "${coalesce(var.response_time_message, var.message)}"
query = <<EOF query = <<EOF
avg(last_5m): ( avg(last_5m): (
@ -39,9 +39,9 @@ resource "datadog_monitor" "appservices_response_time" {
# Monitoring App Services memory usage # Monitoring App Services memory usage
resource "datadog_monitor" "appservices_memory_usage_count" { resource "datadog_monitor" "appservices_memory_usage_count" {
name = "[${var.environment}] App Services memory usage {{comparator}} {{#is_alert}}{{threshold}}{{/is_alert}}{{#is_warning}}{{warn_threshold}}{{/is_warning}} ({{value}})" name = "[${var.environment}] App Services memory usage {{comparator}} {{#is_alert}}{{threshold}}{{/is_alert}}{{#is_warning}}{{warn_threshold}}{{/is_warning}} ({{value}})"
type = "metric alert" type = "metric alert"
message = "${var.message}" message = "${coalesce(var.memory_usage_message, var.message)}"
query = <<EOF query = <<EOF
avg(last_5m): ( avg(last_5m): (
@ -72,7 +72,7 @@ resource "datadog_monitor" "appservices_memory_usage_count" {
resource "datadog_monitor" "appservices_http_5xx_errors_count" { resource "datadog_monitor" "appservices_http_5xx_errors_count" {
name = "[${var.environment}] App Services HTTP 5xx errors too high {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)" name = "[${var.environment}] App Services HTTP 5xx errors too high {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)"
type = "metric alert" type = "metric alert"
message = "${var.message}" message = "${coalesce(var.http_5xx_requests_message, var.message)}"
query = <<EOF query = <<EOF
sum(last_5m): ( sum(last_5m): (
@ -104,7 +104,7 @@ resource "datadog_monitor" "appservices_http_5xx_errors_count" {
resource "datadog_monitor" "appservices_http_4xx_errors_count" { resource "datadog_monitor" "appservices_http_4xx_errors_count" {
name = "[${var.environment}] App Services HTTP 4xx errors too high {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)" name = "[${var.environment}] App Services HTTP 4xx errors too high {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)"
type = "metric alert" type = "metric alert"
message = "${var.message}" message = "${coalesce(var.http_4xx_requests_message, var.message)}"
query = <<EOF query = <<EOF
sum(last_5m): ( sum(last_5m): (
@ -136,7 +136,7 @@ resource "datadog_monitor" "appservices_http_4xx_errors_count" {
resource "datadog_monitor" "appservices_http_success_status_rate" { resource "datadog_monitor" "appservices_http_success_status_rate" {
name = "[${var.environment}] App Services HTTP successful responses too low {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)" name = "[${var.environment}] App Services HTTP successful responses too low {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)"
type = "metric alert" type = "metric alert"
message = "${var.message}" message = "${coalesce(var.http_successful_requests_message, var.message)}"
query = <<EOF query = <<EOF
sum(last_5m): ( sum(last_5m): (

View File

@ -29,15 +29,18 @@ Inputs
|------|-------------|:----:|:-----:|:-----:| |------|-------------|:----:|:-----:|:-----:|
| delay | Delay in seconds for the metric evaluation | string | `600` | no | | delay | Delay in seconds for the metric evaluation | string | `600` | no |
| environment | Architecture environment | string | - | yes | | environment | Architecture environment | string | - | yes |
| errors_rate_message | Custom message for Event Hub errors monitor | string | `` | no |
| errors_rate_silenced | Groups to mute for Event Hub errors monitor | map | `<map>` | no | | errors_rate_silenced | Groups to mute for Event Hub errors monitor | map | `<map>` | no |
| errors_rate_thresold_critical | Errors ratio (percentage) to trigger the critical alert | string | `90` | no | | errors_rate_thresold_critical | Errors ratio (percentage) to trigger the critical alert | string | `90` | no |
| errors_rate_thresold_warning | Errors ratio (percentage) to trigger a warning alert | string | `50` | no | | errors_rate_thresold_warning | Errors ratio (percentage) to trigger a warning alert | string | `50` | no |
| failed_requests_rate_message | Custom message for Event Hub failed requests monitor | string | `` | no |
| failed_requests_rate_silenced | Groups to mute for Event Hub failed requests monitor | map | `<map>` | no | | failed_requests_rate_silenced | Groups to mute for Event Hub failed requests monitor | map | `<map>` | no |
| failed_requests_rate_thresold_critical | Failed requests ratio (percentage) to trigger the critical alert | string | `90` | no | | failed_requests_rate_thresold_critical | Failed requests ratio (percentage) to trigger the critical alert | string | `90` | no |
| failed_requests_rate_thresold_warning | Failed requests ratio (percentage) to trigger a warning alert | string | `50` | no | | failed_requests_rate_thresold_warning | Failed requests ratio (percentage) to trigger a warning alert | string | `50` | no |
| filter_tags_custom | Tags used for custom filtering when filter_tags_use_defaults is false | string | `*` | no | | filter_tags_custom | Tags used for custom filtering when filter_tags_use_defaults is false | string | `*` | no |
| filter_tags_use_defaults | Use default filter tags convention | string | `true` | no | | filter_tags_use_defaults | Use default filter tags convention | string | `true` | no |
| message | Message sent when an alert is triggered | string | - | yes | | message | Message sent when an alert is triggered | string | - | yes |
| status_message | Custom message for Event Hub status monitor | string | `` | no |
| status_silenced | Groups to mute for Event Hub status monitor | map | `<map>` | no | | status_silenced | Groups to mute for Event Hub status monitor | map | `<map>` | no |
Related documentation Related documentation

View File

@ -24,18 +24,31 @@ variable "filter_tags_custom" {
default = "*" default = "*"
} }
# Azure Event Hub specific variables
variable "status_silenced" { variable "status_silenced" {
description = "Groups to mute for Event Hub status monitor" description = "Groups to mute for Event Hub status monitor"
type = "map" type = "map"
default = {} default = {}
} }
variable "status_message" {
description = "Custom message for Event Hub status monitor"
type = "string"
default = ""
}
variable "failed_requests_rate_silenced" { variable "failed_requests_rate_silenced" {
description = "Groups to mute for Event Hub failed requests monitor" description = "Groups to mute for Event Hub failed requests monitor"
type = "map" type = "map"
default = {} default = {}
} }
variable "failed_requests_rate_message" {
description = "Custom message for Event Hub failed requests monitor"
type = "string"
default = ""
}
variable "failed_requests_rate_thresold_critical" { variable "failed_requests_rate_thresold_critical" {
description = "Failed requests ratio (percentage) to trigger the critical alert" description = "Failed requests ratio (percentage) to trigger the critical alert"
default = 90 default = 90
@ -52,6 +65,12 @@ variable "errors_rate_silenced" {
default = {} default = {}
} }
variable "errors_rate_message" {
description = "Custom message for Event Hub errors monitor"
type = "string"
default = ""
}
variable "errors_rate_thresold_critical" { variable "errors_rate_thresold_critical" {
description = "Errors ratio (percentage) to trigger the critical alert" description = "Errors ratio (percentage) to trigger the critical alert"
default = 90 default = 90

View File

@ -8,7 +8,7 @@ data "template_file" "filter" {
resource "datadog_monitor" "eventhub_status" { resource "datadog_monitor" "eventhub_status" {
name = "[${var.environment}] Event Hub is down" name = "[${var.environment}] Event Hub is down"
message = "${var.message}" message = "${coalesce(var.status_message, var.message)}"
query = <<EOF query = <<EOF
avg(last_5m): avg:azure.eventhub_namespaces.status{${data.template_file.filter.rendered}} by {resource_group,region,name} != 1 avg(last_5m): avg:azure.eventhub_namespaces.status{${data.template_file.filter.rendered}} by {resource_group,region,name} != 1
@ -34,7 +34,7 @@ resource "datadog_monitor" "eventhub_status" {
resource "datadog_monitor" "eventhub_failed_requests" { resource "datadog_monitor" "eventhub_failed_requests" {
name = "[${var.environment}] Event Hub too many failed requests {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)" name = "[${var.environment}] Event Hub too many failed requests {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)"
message = "${var.message}" message = "${coalesce(var.failed_requests_rate_message, var.message)}"
query = <<EOF query = <<EOF
sum(last_5m): ( sum(last_5m): (
@ -70,7 +70,7 @@ resource "datadog_monitor" "eventhub_failed_requests" {
resource "datadog_monitor" "eventhub_errors" { resource "datadog_monitor" "eventhub_errors" {
name = "[${var.environment}] Event Hub too manny errors {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)" name = "[${var.environment}] Event Hub too manny errors {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)"
message = "${var.message}" message = "${coalesce(var.errors_rate_message, var.message)}"
query = <<EOF query = <<EOF
sum(last_5m): ( sum(last_5m): (

View File

@ -35,12 +35,24 @@ variable "apimanagement_status_silenced" {
default = {} default = {}
} }
variable "apimanagement_status_message" {
description = "Custom message for API Management status monitor"
type = "string"
default = ""
}
variable "apimanagement_failed_requests_silenced" { variable "apimanagement_failed_requests_silenced" {
description = "Groups to mute for API Management failed requests monitor" description = "Groups to mute for API Management failed requests monitor"
type = "map" type = "map"
default = {} default = {}
} }
variable "apimanagement_failed_requests_message" {
description = "Custom message for API Management failed requests monitor"
type = "string"
default = ""
}
variable "apimanagement_failed_requests_threshold_critical" { variable "apimanagement_failed_requests_threshold_critical" {
description = "Maximum acceptable percent of failed requests" description = "Maximum acceptable percent of failed requests"
default = 90 default = 90
@ -57,6 +69,12 @@ variable "apimanagement_other_requests_silenced" {
default = {} default = {}
} }
variable "apimanagement_other_requests_message" {
description = "Custom message for API Management other requests monitor"
type = "string"
default = ""
}
variable "apimanagement_other_requests_threshold_critical" { variable "apimanagement_other_requests_threshold_critical" {
description = "Maximum acceptable percent of other requests" description = "Maximum acceptable percent of other requests"
default = 90 default = 90
@ -73,6 +91,12 @@ variable "apimanagement_unauthorized_requests_silenced" {
default = {} default = {}
} }
variable "apimanagement_unauthorized_requests_message" {
description = "Custom message for API Management unauthorized requests monitor"
type = "string"
default = ""
}
variable "apimanagement_unauthorized_requests_threshold_critical" { variable "apimanagement_unauthorized_requests_threshold_critical" {
description = "Maximum acceptable percent of unauthorized requests" description = "Maximum acceptable percent of unauthorized requests"
default = 90 default = 90
@ -89,6 +113,12 @@ variable "apimanagement_successful_requests_silenced" {
default = {} default = {}
} }
variable "apimanagement_successful_requests_message" {
description = "Custom message for API Management successful requests monitor"
type = "string"
default = ""
}
variable "apimanagement_successful_requests_threshold_critical" { variable "apimanagement_successful_requests_threshold_critical" {
description = "Minimum acceptable percent of successful requests" description = "Minimum acceptable percent of successful requests"
default = 10 default = 10
@ -106,6 +136,12 @@ variable "appservices_response_time_silenced" {
default = {} default = {}
} }
variable "appservices_response_time_message" {
description = "Custom message for App Services response time monitor"
type = "string"
default = ""
}
variable "appservices_response_time_threshold_critical" { variable "appservices_response_time_threshold_critical" {
default = 10 default = 10
description = "Alerting threshold for response time in seconds" description = "Alerting threshold for response time in seconds"
@ -122,6 +158,12 @@ variable "appservices_memory_usage_silenced" {
default = {} default = {}
} }
variable "appservices_memory_usage_message" {
description = "Custom message for App Services memory usage monitor"
type = "string"
default = ""
}
variable "appservices_memory_usage_threshold_critical" { variable "appservices_memory_usage_threshold_critical" {
default = 1073741824 # 1Gb default = 1073741824 # 1Gb
description = "Alerting threshold in Mib" description = "Alerting threshold in Mib"
@ -138,6 +180,12 @@ variable "appservices_http_4xx_requests_silenced" {
default = {} default = {}
} }
variable "appservices_http_4xx_requests_message" {
description = "Custom message for App Services 4xx requests monitor"
type = "string"
default = ""
}
variable "appservices_http_4xx_requests_threshold_critical" { variable "appservices_http_4xx_requests_threshold_critical" {
default = 90 default = 90
description = "Maximum critical acceptable percent of 4xx errors" description = "Maximum critical acceptable percent of 4xx errors"
@ -154,6 +202,12 @@ variable "appservices_http_5xx_requests_silenced" {
default = {} default = {}
} }
variable "appservices_http_5xx_requests_message" {
description = "Custom message for App Services 5xx requests monitor"
type = "string"
default = ""
}
variable "appservices_http_5xx_requests_threshold_critical" { variable "appservices_http_5xx_requests_threshold_critical" {
default = 90 default = 90
description = "Maximum critical acceptable percent of 5xx errors" description = "Maximum critical acceptable percent of 5xx errors"
@ -170,6 +224,12 @@ variable "appservices_http_successful_requests_silenced" {
default = {} default = {}
} }
variable "appservices_http_successful_requests_message" {
description = "Custom message for App Services successful requests monitor"
type = "string"
default = ""
}
variable "appservices_http_successful_requests_threshold_critical" { variable "appservices_http_successful_requests_threshold_critical" {
default = 10 default = 10
description = "Minimum critical acceptable percent of 2xx & 3xx requests" description = "Minimum critical acceptable percent of 2xx & 3xx requests"
@ -187,12 +247,24 @@ variable "eventhub_status_silenced" {
default = {} default = {}
} }
variable "eventhub_status_message" {
description = "Custom message for Event Hub status monitor"
type = "string"
default = ""
}
variable "eventhub_failed_requests_rate_silenced" { variable "eventhub_failed_requests_rate_silenced" {
description = "Groups to mute for Event Hub failed requests monitor" description = "Groups to mute for Event Hub failed requests monitor"
type = "map" type = "map"
default = {} default = {}
} }
variable "eventhub_failed_requests_rate_message" {
description = "Custom message for Event Hub failed requests monitor"
type = "string"
default = ""
}
variable "eventhub_failed_requests_rate_thresold_critical" { variable "eventhub_failed_requests_rate_thresold_critical" {
description = "Failed requests ratio (percentage) to trigger the critical alert" description = "Failed requests ratio (percentage) to trigger the critical alert"
default = 90 default = 90
@ -209,6 +281,12 @@ variable "eventhub_errors_rate_silenced" {
default = {} default = {}
} }
variable "eventhub_errors_rate_message" {
description = "Custom message for Event Hub errors monitor"
type = "string"
default = ""
}
variable "eventhub_errors_rate_thresold_critical" { variable "eventhub_errors_rate_thresold_critical" {
description = "Errors ratio (percentage) to trigger the critical alert" description = "Errors ratio (percentage) to trigger the critical alert"
default = 90 default = 90
@ -226,24 +304,48 @@ variable "iothub_status_silenced" {
default = {} default = {}
} }
variable "iothub_status_message" {
description = "Custom message for IoT Hub status monitor"
type = "string"
default = ""
}
variable "iothub_total_devices_silenced" { variable "iothub_total_devices_silenced" {
description = "Groups to mute for IoT Hub total device monitor" description = "Groups to mute for IoT Hub total devices monitor"
type = "map" type = "map"
default = {} default = {}
} }
variable "iothub_total_devices_message" {
description = "Custom message for IoT Hub total devices monitor"
type = "string"
default = ""
}
variable "iothub_too_many_d2c_telemetry_ingress_nosent_silenced" { variable "iothub_too_many_d2c_telemetry_ingress_nosent_silenced" {
description = "Groups to mute for IoT Hub unsent d2c telemetry monitor" description = "Groups to mute for IoT Hub unsent d2c telemetry monitor"
type = "map" type = "map"
default = {} default = {}
} }
variable "iothub_too_many_d2c_telemetry_ingress_nosent_message" {
description = "Custom message for IoT Hub unsent d2c telemetry monitor"
type = "string"
default = ""
}
variable "iothub_failed_jobs_rate_silenced" { variable "iothub_failed_jobs_rate_silenced" {
description = "Groups to mute for IoT Hub failed jobs monitor" description = "Groups to mute for IoT Hub failed jobs monitor"
type = "map" type = "map"
default = {} default = {}
} }
variable "iothub_failed_jobs_rate_message" {
description = "Custom message for IoT Hub failed jobs monitor"
type = "string"
default = ""
}
variable "iothub_failed_jobs_rate_threshold_warning" { variable "iothub_failed_jobs_rate_threshold_warning" {
description = "Jobs Failed rate limit (warning threshold)" description = "Jobs Failed rate limit (warning threshold)"
default = 50 default = 50
@ -260,6 +362,12 @@ variable "iothub_failed_listjobs_rate_silenced" {
default = {} default = {}
} }
variable "iothub_failed_listjobs_rate_message" {
description = "Custom message for IoT Hub failed list jobs monitor"
type = "string"
default = ""
}
variable "iothub_failed_listjobs_rate_threshold_warning" { variable "iothub_failed_listjobs_rate_threshold_warning" {
description = "ListJobs Failed rate limit (warning threshold)" description = "ListJobs Failed rate limit (warning threshold)"
default = 50 default = 50
@ -276,6 +384,12 @@ variable "iothub_failed_queryjobs_rate_silenced" {
default = {} default = {}
} }
variable "iothub_failed_queryjobs_rate_message" {
description = "Custom message for IoT Hub failed query jobs monitor"
type = "string"
default = ""
}
variable "iothub_failed_queryjobs_rate_threshold_warning" { variable "iothub_failed_queryjobs_rate_threshold_warning" {
description = "QueryJobs Failed rate limit (warning threshold)" description = "QueryJobs Failed rate limit (warning threshold)"
default = 50 default = 50
@ -292,6 +406,12 @@ variable "iothub_failed_c2d_methods_rate_silenced" {
default = {} default = {}
} }
variable "iothub_failed_c2d_methods_rate_message" {
description = "Custom message for IoT Hub failed c2d method monitor"
type = "string"
default = ""
}
variable "iothub_failed_c2d_methods_rate_threshold_warning" { variable "iothub_failed_c2d_methods_rate_threshold_warning" {
description = "C2D Methods Failed rate limit (warning threshold)" description = "C2D Methods Failed rate limit (warning threshold)"
default = 50 default = 50
@ -308,6 +428,12 @@ variable "iothub_failed_c2d_twin_read_rate_silenced" {
default = {} default = {}
} }
variable "iothub_failed_c2d_twin_read_rate_message" {
description = "Custom message for IoT Hub failed c2d twin read monitor"
type = "string"
default = ""
}
variable "iothub_failed_c2d_twin_read_rate_threshold_warning" { variable "iothub_failed_c2d_twin_read_rate_threshold_warning" {
description = "C2D Twin Read Failed rate limit (warning threshold)" description = "C2D Twin Read Failed rate limit (warning threshold)"
default = 50 default = 50
@ -324,6 +450,12 @@ variable "iothub_failed_c2d_twin_update_rate_silenced" {
default = {} default = {}
} }
variable "iothub_failed_c2d_twin_update_rate_message" {
description = "Custom message for IoT Hub failed c2d twin update monitor"
type = "string"
default = ""
}
variable "iothub_failed_c2d_twin_update_rate_threshold_warning" { variable "iothub_failed_c2d_twin_update_rate_threshold_warning" {
description = "C2D Twin Update Failed rate limit (warning threshold)" description = "C2D Twin Update Failed rate limit (warning threshold)"
default = 50 default = 50
@ -340,6 +472,12 @@ variable "iothub_failed_d2c_twin_read_rate_silenced" {
default = {} default = {}
} }
variable "iothub_failed_d2c_twin_read_rate_message" {
description = "Custom message for IoT Hub failed d2c twin read monitor"
type = "string"
default = ""
}
variable "iothub_failed_d2c_twin_read_rate_threshold_warning" { variable "iothub_failed_d2c_twin_read_rate_threshold_warning" {
description = "D2C Twin Read Failed rate limit (warning threshold)" description = "D2C Twin Read Failed rate limit (warning threshold)"
default = 50 default = 50
@ -356,6 +494,12 @@ variable "iothub_failed_d2c_twin_update_rate_silenced" {
default = {} default = {}
} }
variable "iothub_failed_d2c_twin_update_rate_message" {
description = "Custom message for IoT Hub failed d2c twin update monitor"
type = "string"
default = ""
}
variable "iothub_failed_d2c_twin_update_rate_threshold_warning" { variable "iothub_failed_d2c_twin_update_rate_threshold_warning" {
description = "D2C Twin Update Failed rate limit (warning threshold)" description = "D2C Twin Update Failed rate limit (warning threshold)"
default = 50 default = 50
@ -372,6 +516,12 @@ variable "iothub_dropped_d2c_telemetry_egress_silenced" {
default = {} default = {}
} }
variable "iothub_dropped_d2c_telemetry_egress_message" {
description = "Custom message for IoT Hub dropped d2c telemetry monitor"
type = "string"
default = ""
}
variable "iothub_dropped_d2c_telemetry_egress_threshold_warning" { variable "iothub_dropped_d2c_telemetry_egress_threshold_warning" {
description = "D2C Telemetry Dropped limit (warning threshold)" description = "D2C Telemetry Dropped limit (warning threshold)"
default = 500 default = 500
@ -388,6 +538,12 @@ variable "iothub_orphaned_d2c_telemetry_egress_silenced" {
default = {} default = {}
} }
variable "iothub_orphaned_d2c_telemetry_egress_message" {
description = "Custom message for IoT Hub orphaned d2c telemetry monitor"
type = "string"
default = ""
}
variable "iothub_orphaned_d2c_telemetry_egress_threshold_warning" { variable "iothub_orphaned_d2c_telemetry_egress_threshold_warning" {
description = "D2C Telemetry Orphaned limit (warning threshold)" description = "D2C Telemetry Orphaned limit (warning threshold)"
default = 500 default = 500
@ -404,6 +560,12 @@ variable "iothub_invalid_d2c_telemetry_egress_silenced" {
default = {} default = {}
} }
variable "iothub_invalid_d2c_telemetry_egress_message" {
description = "Custom message for IoT Hub invalid d2c telemetry monitor"
type = "string"
default = ""
}
variable "iothub_invalid_d2c_telemetry_egress_threshold_warning" { variable "iothub_invalid_d2c_telemetry_egress_threshold_warning" {
description = "D2C Telemetry Invalid limit (warning threshold)" description = "D2C Telemetry Invalid limit (warning threshold)"
default = 500 default = 500
@ -420,6 +582,12 @@ variable "iothub_fallback_d2c_telemetry_egress_silenced" {
default = {} default = {}
} }
variable "iothub_fallback_d2c_telemetry_egress_message" {
description = "Custom message for IoT Hub fallback d2c telemetry monitor"
type = "string"
default = ""
}
variable "iothub_fallback_d2c_telemetry_egress_threshold_warning" { variable "iothub_fallback_d2c_telemetry_egress_threshold_warning" {
description = "D2C Telemetry Fallback limit (warning threshold)" description = "D2C Telemetry Fallback limit (warning threshold)"
default = 500 default = 500
@ -437,12 +605,24 @@ variable "redis_status_silenced" {
default = {} default = {}
} }
variable "redis_status_message" {
description = "Custom message for Redis status monitor"
type = "string"
default = ""
}
variable "redis_evictedkeys_limit_silenced" { variable "redis_evictedkeys_limit_silenced" {
description = "Groups to mute for Redis evicted keys monitor" description = "Groups to mute for Redis evicted keys monitor"
type = "map" type = "map"
default = {} default = {}
} }
variable "redis_evictedkeys_limit_message" {
description = "Custom message for Redis evicted keys monitor"
type = "string"
default = ""
}
variable "redis_evictedkeys_limit_threshold_warning" { variable "redis_evictedkeys_limit_threshold_warning" {
description = "Evicted keys limit (warning threshold)" description = "Evicted keys limit (warning threshold)"
default = 0 default = 0
@ -459,6 +639,12 @@ variable "redis_percent_processor_time_silenced" {
default = {} default = {}
} }
variable "redis_percent_processor_time_message" {
description = "Custom message for Redis processor monitor"
type = "string"
default = ""
}
variable "redis_percent_processor_time_threshold_critical" { variable "redis_percent_processor_time_threshold_critical" {
description = "Processor time percent (critical threshold)" description = "Processor time percent (critical threshold)"
default = 80 default = 80
@ -475,6 +661,12 @@ variable "redis_server_load_rate_silenced" {
default = {} default = {}
} }
variable "redis_server_load_rate_message" {
description = "Custom message for Redis server load monitor"
type = "string"
default = ""
}
variable "redis_server_load_rate_threshold_critical" { variable "redis_server_load_rate_threshold_critical" {
description = "Server CPU load rate (critical threshold)" description = "Server CPU load rate (critical threshold)"
default = 90 default = 90
@ -492,6 +684,12 @@ variable "sqldatabase_cpu_silenced" {
default = {} default = {}
} }
variable "sqldatabase_cpu_message" {
description = "Custom message for SQL CPU monitor"
type = "string"
default = ""
}
variable "sqldatabase_cpu_threshold_warning" { variable "sqldatabase_cpu_threshold_warning" {
description = "CPU usage in percent (warning threshold)" description = "CPU usage in percent (warning threshold)"
default = "80" default = "80"
@ -508,6 +706,12 @@ variable "sqldatabase_diskspace_silenced" {
default = {} default = {}
} }
variable "sqldatabase_diskspace_message" {
description = "Custom message for SQL disk space monitor"
type = "string"
default = ""
}
variable "sqldatabase_diskspace_threshold_warning" { variable "sqldatabase_diskspace_threshold_warning" {
description = "Disk space used in percent (warning threshold)" description = "Disk space used in percent (warning threshold)"
default = "80" default = "80"
@ -524,6 +728,12 @@ variable "sqldatabase_dtu_silenced" {
default = {} default = {}
} }
variable "sqldatabase_dtu_message" {
description = "Custom message for SQL DTU monitor"
type = "string"
default = ""
}
variable "sqldatabase_dtu_threshold_warning" { variable "sqldatabase_dtu_threshold_warning" {
description = "Amount of DTU used (warning threshold)" description = "Amount of DTU used (warning threshold)"
default = "85" default = "85"
@ -540,6 +750,12 @@ variable "sqldatabase_deadlock_silenced" {
default = {} default = {}
} }
variable "sqldatabase_deadlock_message" {
description = "Custom message for SQL Deadlock monitor"
type = "string"
default = ""
}
variable "sqldatabase_deadlock_threshold_critical" { variable "sqldatabase_deadlock_threshold_critical" {
description = "Amount of Deadlocks (critical threshold)" description = "Amount of Deadlocks (critical threshold)"
default = "1" default = "1"
@ -552,6 +768,12 @@ variable "storage_availability_silenced" {
default = {} default = {}
} }
variable "storage_availability_message" {
description = "Custom message for Storage availability monitor"
type = "string"
default = ""
}
variable "storage_availability_threshold_critical" { variable "storage_availability_threshold_critical" {
description = "Minimum acceptable percent of availability for a storage" description = "Minimum acceptable percent of availability for a storage"
default = 50 default = 50
@ -568,6 +790,12 @@ variable "storage_successful_requests_silenced" {
default = {} default = {}
} }
variable "storage_successful_requests_message" {
description = "Custom message for Storage sucessful requests monitor"
type = "string"
default = ""
}
variable "storage_successful_requests_threshold_critical" { variable "storage_successful_requests_threshold_critical" {
description = "Minimum acceptable percent of successful requests for a storage" description = "Minimum acceptable percent of successful requests for a storage"
default = 10 default = 10
@ -584,6 +812,12 @@ variable "storage_latency_silenced" {
default = {} default = {}
} }
variable "storage_latency_message" {
description = "Custom message for Storage latency monitor"
type = "string"
default = ""
}
variable "storage_latency_threshold_critical" { variable "storage_latency_threshold_critical" {
description = "Maximum acceptable end to end latency (ms) for a storage" description = "Maximum acceptable end to end latency (ms) for a storage"
default = 2000 default = 2000
@ -600,6 +834,12 @@ variable "storage_timeout_error_requests_silenced" {
default = {} default = {}
} }
variable "storage_timeout_error_requests_message" {
description = "Custom message for Storage timeout monitor"
type = "string"
default = ""
}
variable "storage_timeout_error_requests_threshold_critical" { variable "storage_timeout_error_requests_threshold_critical" {
description = "Maximum acceptable percent of timeout error requests for a storage" description = "Maximum acceptable percent of timeout error requests for a storage"
default = 90 default = 90
@ -616,6 +856,12 @@ variable "storage_network_error_requests_silenced" {
default = {} default = {}
} }
variable "storage_network_error_requests_message" {
description = "Custom message for Storage network errors monitor"
type = "string"
default = ""
}
variable "storage_network_error_requests_threshold_critical" { variable "storage_network_error_requests_threshold_critical" {
description = "Maximum acceptable percent of network error requests for a storage" description = "Maximum acceptable percent of network error requests for a storage"
default = 90 default = 90
@ -632,6 +878,12 @@ variable "storage_throttling_error_requests_silenced" {
default = {} default = {}
} }
variable "storage_throttling_error_requests_message" {
description = "Custom message for Storage throttling error monitor"
type = "string"
default = ""
}
variable "storage_throttling_error_requests_threshold_critical" { variable "storage_throttling_error_requests_threshold_critical" {
description = "Maximum acceptable percent of throttling error requests for a storage" description = "Maximum acceptable percent of throttling error requests for a storage"
default = 90 default = 90
@ -648,6 +900,12 @@ variable "storage_server_other_error_requests_silenced" {
default = {} default = {}
} }
variable "storage_server_other_error_requests_message" {
description = "Custom message for Storage server other errors monitor"
type = "string"
default = ""
}
variable "storage_server_other_error_requests_threshold_critical" { variable "storage_server_other_error_requests_threshold_critical" {
description = "Maximum acceptable percent of server other error requests for a storage" description = "Maximum acceptable percent of server other error requests for a storage"
default = 90 default = 90
@ -664,6 +922,12 @@ variable "storage_client_other_error_requests_silenced" {
default = {} default = {}
} }
variable "storage_client_other_error_requests_message" {
description = "Custom message for Storage other errors monitor"
type = "string"
default = ""
}
variable "storage_client_other_error_requests_threshold_critical" { variable "storage_client_other_error_requests_threshold_critical" {
description = "Maximum acceptable percent of client other error requests for a storage" description = "Maximum acceptable percent of client other error requests for a storage"
default = 90 default = 90
@ -680,6 +944,12 @@ variable "storage_authorization_error_requests_silenced" {
default = {} default = {}
} }
variable "storage_authorization_error_requests_message" {
description = "Custom message for Storage authorization errors monitor"
type = "string"
default = ""
}
variable "storage_authorization_error_requests_threshold_critical" { variable "storage_authorization_error_requests_threshold_critical" {
description = "Maximum acceptable percent of authorization error requests for a storage" description = "Maximum acceptable percent of authorization error requests for a storage"
default = 90 default = 90
@ -697,12 +967,24 @@ variable "streamanalytics_status_silenced" {
default = {} default = {}
} }
variable "streamanalytics_status_message" {
description = "Custom message for Stream Analytics status monitor"
type = "string"
default = ""
}
variable "streamanalytics_su_utilization_silenced" { variable "streamanalytics_su_utilization_silenced" {
description = "Groups to mute for Stream Analytics utilization monitor" description = "Groups to mute for Stream Analytics utilization monitor"
type = "map" type = "map"
default = {} default = {}
} }
variable "streamanalytics_su_utilization_message" {
description = "Custom message for Stream Analytics utilization monitor"
type = "string"
default = ""
}
variable "streamanalytics_su_utilization_threshold_warning" { variable "streamanalytics_su_utilization_threshold_warning" {
description = "Streaming Unit utilization rate limit (warning threshold)" description = "Streaming Unit utilization rate limit (warning threshold)"
default = 60 default = 60
@ -719,6 +1001,12 @@ variable "streamanalytics_failed_function_requests_silenced" {
default = {} default = {}
} }
variable "streamanalytics_failed_function_requests_message" {
description = "Custom message for Stream Analytics failed requests monitor"
type = "string"
default = ""
}
variable "streamanalytics_failed_function_requests_threshold_warning" { variable "streamanalytics_failed_function_requests_threshold_warning" {
description = "Failed Function Request rate limit (warning threshold)" description = "Failed Function Request rate limit (warning threshold)"
default = 0 default = 0
@ -735,6 +1023,12 @@ variable "streamanalytics_conversion_errors_silenced" {
default = {} default = {}
} }
variable "streamanalytics_conversion_errors_message" {
description = "Custom message for Stream Analytics conversion errors monitor"
type = "string"
default = ""
}
variable "streamanalytics_conversion_errors_threshold_warning" { variable "streamanalytics_conversion_errors_threshold_warning" {
description = "Conversion errors limit (warning threshold)" description = "Conversion errors limit (warning threshold)"
default = 0 default = 0
@ -751,6 +1045,12 @@ variable "streamanalytics_runtime_errors_silenced" {
default = {} default = {}
} }
variable "streamanalytics_runtime_errors_message" {
description = "Custom message for Stream Analytics runtime errors monitor"
type = "string"
default = ""
}
variable "streamanalytics_runtime_errors_threshold_warning" { variable "streamanalytics_runtime_errors_threshold_warning" {
description = "Runtime errors limit (warning threshold)" description = "Runtime errors limit (warning threshold)"
default = 0 default = 0

View File

@ -39,48 +39,63 @@ Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|:----:|:-----:|:-----:| |------|-------------|:----:|:-----:|:-----:|
| delay | Delay in seconds for the metric evaluation | string | `600` | no | | delay | Delay in seconds for the metric evaluation | string | `600` | no |
| dropped_d2c_telemetry_egress_message | Custom message for IoT Hub dropped d2c telemetry monitor | string | `` | no |
| dropped_d2c_telemetry_egress_silenced | Groups to mute for IoT Hub dropped d2c telemetry monitor | map | `<map>` | no | | dropped_d2c_telemetry_egress_silenced | Groups to mute for IoT Hub dropped d2c telemetry monitor | map | `<map>` | no |
| dropped_d2c_telemetry_egress_threshold_critical | D2C Telemetry Dropped limit (critical threshold) | string | `1000` | no | | dropped_d2c_telemetry_egress_threshold_critical | D2C Telemetry Dropped limit (critical threshold) | string | `1000` | no |
| dropped_d2c_telemetry_egress_threshold_warning | D2C Telemetry Dropped limit (warning threshold) | string | `500` | no | | dropped_d2c_telemetry_egress_threshold_warning | D2C Telemetry Dropped limit (warning threshold) | string | `500` | no |
| environment | Architecture Environment | string | - | yes | | environment | Architecture Environment | string | - | yes |
| failed_c2d_methods_rate_message | Custom message for IoT Hub failed c2d method monitor | string | `` | no |
| failed_c2d_methods_rate_silenced | Groups to mute for IoT Hub failed c2d methods monitor | map | `<map>` | no | | failed_c2d_methods_rate_silenced | Groups to mute for IoT Hub failed c2d methods monitor | map | `<map>` | no |
| failed_c2d_methods_rate_threshold_critical | C2D Methods Failed rate limit (critical threshold) | string | `90` | no | | failed_c2d_methods_rate_threshold_critical | C2D Methods Failed rate limit (critical threshold) | string | `90` | no |
| failed_c2d_methods_rate_threshold_warning | C2D Methods Failed rate limit (warning threshold) | string | `50` | no | | failed_c2d_methods_rate_threshold_warning | C2D Methods Failed rate limit (warning threshold) | string | `50` | no |
| failed_c2d_twin_read_rate_message | Custom message for IoT Hub failed c2d twin read monitor | string | `` | no |
| failed_c2d_twin_read_rate_silenced | Groups to mute for IoT Hub failed c2d twin read monitor | map | `<map>` | no | | failed_c2d_twin_read_rate_silenced | Groups to mute for IoT Hub failed c2d twin read monitor | map | `<map>` | no |
| failed_c2d_twin_read_rate_threshold_critical | C2D Twin Read Failed rate limit (critical threshold) | string | `90` | no | | failed_c2d_twin_read_rate_threshold_critical | C2D Twin Read Failed rate limit (critical threshold) | string | `90` | no |
| failed_c2d_twin_read_rate_threshold_warning | C2D Twin Read Failed rate limit (warning threshold) | string | `50` | no | | failed_c2d_twin_read_rate_threshold_warning | C2D Twin Read Failed rate limit (warning threshold) | string | `50` | no |
| failed_c2d_twin_update_rate_message | Custom message for IoT Hub failed c2d twin update monitor | string | `` | no |
| failed_c2d_twin_update_rate_silenced | Groups to mute for IoT Hub failed c2d twin update monitor | map | `<map>` | no | | failed_c2d_twin_update_rate_silenced | Groups to mute for IoT Hub failed c2d twin update monitor | map | `<map>` | no |
| failed_c2d_twin_update_rate_threshold_critical | C2D Twin Update Failed rate limit (critical threshold) | string | `90` | no | | failed_c2d_twin_update_rate_threshold_critical | C2D Twin Update Failed rate limit (critical threshold) | string | `90` | no |
| failed_c2d_twin_update_rate_threshold_warning | C2D Twin Update Failed rate limit (warning threshold) | string | `50` | no | | failed_c2d_twin_update_rate_threshold_warning | C2D Twin Update Failed rate limit (warning threshold) | string | `50` | no |
| failed_d2c_twin_read_rate_message | Custom message for IoT Hub failed d2c twin read monitor | string | `` | no |
| failed_d2c_twin_read_rate_silenced | Groups to mute for IoT Hub failed d2c twin read monitor | map | `<map>` | no | | failed_d2c_twin_read_rate_silenced | Groups to mute for IoT Hub failed d2c twin read monitor | map | `<map>` | no |
| failed_d2c_twin_read_rate_threshold_critical | D2C Twin Read Failed rate limit (critical threshold) | string | `90` | no | | failed_d2c_twin_read_rate_threshold_critical | D2C Twin Read Failed rate limit (critical threshold) | string | `90` | no |
| failed_d2c_twin_read_rate_threshold_warning | D2C Twin Read Failed rate limit (warning threshold) | string | `50` | no | | failed_d2c_twin_read_rate_threshold_warning | D2C Twin Read Failed rate limit (warning threshold) | string | `50` | no |
| failed_d2c_twin_update_rate_message | Custom message for IoT Hub failed d2c twin update monitor | string | `` | no |
| failed_d2c_twin_update_rate_silenced | Groups to mute for IoT Hub failed d2c twin update monitor | map | `<map>` | no | | failed_d2c_twin_update_rate_silenced | Groups to mute for IoT Hub failed d2c twin update monitor | map | `<map>` | no |
| failed_d2c_twin_update_rate_threshold_critical | D2C Twin Update Failed rate limit (critical threshold) | string | `90` | no | | failed_d2c_twin_update_rate_threshold_critical | D2C Twin Update Failed rate limit (critical threshold) | string | `90` | no |
| failed_d2c_twin_update_rate_threshold_warning | D2C Twin Update Failed rate limit (warning threshold) | string | `50` | no | | failed_d2c_twin_update_rate_threshold_warning | D2C Twin Update Failed rate limit (warning threshold) | string | `50` | no |
| failed_jobs_rate_message | Custom message for IoT Hub failed jobs monitor | string | `` | no |
| failed_jobs_rate_silenced | Groups to mute for IoT Hub failed jobs monitor | map | `<map>` | no | | failed_jobs_rate_silenced | Groups to mute for IoT Hub failed jobs monitor | map | `<map>` | no |
| failed_jobs_rate_threshold_critical | Jobs Failed rate limit (critical threshold) | string | `90` | no | | failed_jobs_rate_threshold_critical | Jobs Failed rate limit (critical threshold) | string | `90` | no |
| failed_jobs_rate_threshold_warning | Jobs Failed rate limit (warning threshold) | string | `50` | no | | failed_jobs_rate_threshold_warning | Jobs Failed rate limit (warning threshold) | string | `50` | no |
| failed_listjobs_rate_message | Custom message for IoT Hub failed list jobs monitor | string | `` | no |
| failed_listjobs_rate_silenced | Groups to mute for IoT Hub failed list jobs monitor | map | `<map>` | no | | failed_listjobs_rate_silenced | Groups to mute for IoT Hub failed list jobs monitor | map | `<map>` | no |
| failed_listjobs_rate_threshold_critical | ListJobs Failed rate limit (critical threshold) | string | `90` | no | | failed_listjobs_rate_threshold_critical | ListJobs Failed rate limit (critical threshold) | string | `90` | no |
| failed_listjobs_rate_threshold_warning | ListJobs Failed rate limit (warning threshold) | string | `50` | no | | failed_listjobs_rate_threshold_warning | ListJobs Failed rate limit (warning threshold) | string | `50` | no |
| failed_queryjobs_rate_message | Custom message for IoT Hub failed query jobs monitor | string | `` | no |
| failed_queryjobs_rate_silenced | Groups to mute for IoT Hub failed query jobs monitor | map | `<map>` | no | | failed_queryjobs_rate_silenced | Groups to mute for IoT Hub failed query jobs monitor | map | `<map>` | no |
| failed_queryjobs_rate_threshold_critical | QueryJobs Failed rate limit (critical threshold) | string | `90` | no | | failed_queryjobs_rate_threshold_critical | QueryJobs Failed rate limit (critical threshold) | string | `90` | no |
| failed_queryjobs_rate_threshold_warning | QueryJobs Failed rate limit (warning threshold) | string | `50` | no | | failed_queryjobs_rate_threshold_warning | QueryJobs Failed rate limit (warning threshold) | string | `50` | no |
| fallback_d2c_telemetry_egress_message | Custom message for IoT Hub fallback d2c telemetry monitor | string | `` | no |
| fallback_d2c_telemetry_egress_silenced | Groups to mute for IoT Hub fallback d2c telemetry monitor | map | `<map>` | no | | fallback_d2c_telemetry_egress_silenced | Groups to mute for IoT Hub fallback d2c telemetry monitor | map | `<map>` | no |
| fallback_d2c_telemetry_egress_threshold_critical | D2C Telemetry Fallback limit (critical threshold) | string | `1000` | no | | fallback_d2c_telemetry_egress_threshold_critical | D2C Telemetry Fallback limit (critical threshold) | string | `1000` | no |
| fallback_d2c_telemetry_egress_threshold_warning | D2C Telemetry Fallback limit (warning threshold) | string | `500` | no | | fallback_d2c_telemetry_egress_threshold_warning | D2C Telemetry Fallback limit (warning threshold) | string | `500` | no |
| filter_tags | Tags used for filtering | string | `*` | no | | filter_tags | Tags used for filtering | string | `*` | no |
| invalid_d2c_telemetry_egress_message | Custom message for IoT Hub invalid d2c telemetry monitor | string | `` | no |
| invalid_d2c_telemetry_egress_silenced | Groups to mute for IoT Hub invalid d2c telemetry monitor | map | `<map>` | no | | invalid_d2c_telemetry_egress_silenced | Groups to mute for IoT Hub invalid d2c telemetry monitor | map | `<map>` | no |
| invalid_d2c_telemetry_egress_threshold_critical | D2C Telemetry Invalid limit (critical threshold) | string | `1000` | no | | invalid_d2c_telemetry_egress_threshold_critical | D2C Telemetry Invalid limit (critical threshold) | string | `1000` | no |
| invalid_d2c_telemetry_egress_threshold_warning | D2C Telemetry Invalid limit (warning threshold) | string | `500` | no | | invalid_d2c_telemetry_egress_threshold_warning | D2C Telemetry Invalid limit (warning threshold) | string | `500` | no |
| message | Message sent when an alert is triggered | string | - | yes | | message | Message sent when an alert is triggered | string | - | yes |
| orphaned_d2c_telemetry_egress_message | Custom message for IoT Hub orphaned d2c telemetry monitor | string | `` | no |
| orphaned_d2c_telemetry_egress_silenced | Groups to mute for IoT Hub orphaned d2c telemetry monitor | map | `<map>` | no | | orphaned_d2c_telemetry_egress_silenced | Groups to mute for IoT Hub orphaned d2c telemetry monitor | map | `<map>` | no |
| orphaned_d2c_telemetry_egress_threshold_critical | D2C Telemetry Orphaned limit (critical threshold) | string | `1000` | no | | orphaned_d2c_telemetry_egress_threshold_critical | D2C Telemetry Orphaned limit (critical threshold) | string | `1000` | no |
| orphaned_d2c_telemetry_egress_threshold_warning | D2C Telemetry Orphaned limit (warning threshold) | string | `500` | no | | orphaned_d2c_telemetry_egress_threshold_warning | D2C Telemetry Orphaned limit (warning threshold) | string | `500` | no |
| status_message | Custom message for IoT Hub status monitor | string | `` | no |
| status_silenced | Groups to mute for IoT Hub status monitor | map | `<map>` | no | | status_silenced | Groups to mute for IoT Hub status monitor | map | `<map>` | no |
| too_many_d2c_telemetry_ingress_nosent_message | Custom message for IoT Hub unsent d2c telemetry monitor | string | `` | no |
| too_many_d2c_telemetry_ingress_nosent_silenced | Groups to mute for IoT Hub unsent d2c telemetry monitor | map | `<map>` | no | | too_many_d2c_telemetry_ingress_nosent_silenced | Groups to mute for IoT Hub unsent d2c telemetry monitor | map | `<map>` | no |
| total_devices_silenced | Groups to mute for IoT Hub total device monitor | map | `<map>` | no | | total_devices_message | Custom message for IoT Hub total devices monitor | string | `` | no |
| total_devices_silenced | Groups to mute for IoT Hub total devices monitor | map | `<map>` | no |
Related documentation Related documentation
--------------------- ---------------------

View File

@ -19,31 +19,55 @@ variable "filter_tags" {
default = "*" default = "*"
} }
# Azure IOT hubs specific # IOT Hub specific variables
variable "status_silenced" { variable "status_silenced" {
description = "Groups to mute for IoT Hub status monitor" description = "Groups to mute for IoT Hub status monitor"
type = "map" type = "map"
default = {} default = {}
} }
variable "status_message" {
description = "Custom message for IoT Hub status monitor"
type = "string"
default = ""
}
variable "total_devices_silenced" { variable "total_devices_silenced" {
description = "Groups to mute for IoT Hub total device monitor" description = "Groups to mute for IoT Hub total devices monitor"
type = "map" type = "map"
default = {} default = {}
} }
variable "total_devices_message" {
description = "Custom message for IoT Hub total devices monitor"
type = "string"
default = ""
}
variable "too_many_d2c_telemetry_ingress_nosent_silenced" { variable "too_many_d2c_telemetry_ingress_nosent_silenced" {
description = "Groups to mute for IoT Hub unsent d2c telemetry monitor" description = "Groups to mute for IoT Hub unsent d2c telemetry monitor"
type = "map" type = "map"
default = {} default = {}
} }
variable "too_many_d2c_telemetry_ingress_nosent_message" {
description = "Custom message for IoT Hub unsent d2c telemetry monitor"
type = "string"
default = ""
}
variable "failed_jobs_rate_silenced" { variable "failed_jobs_rate_silenced" {
description = "Groups to mute for IoT Hub failed jobs monitor" description = "Groups to mute for IoT Hub failed jobs monitor"
type = "map" type = "map"
default = {} default = {}
} }
variable "failed_jobs_rate_message" {
description = "Custom message for IoT Hub failed jobs monitor"
type = "string"
default = ""
}
variable "failed_jobs_rate_threshold_warning" { variable "failed_jobs_rate_threshold_warning" {
description = "Jobs Failed rate limit (warning threshold)" description = "Jobs Failed rate limit (warning threshold)"
default = 50 default = 50
@ -60,6 +84,12 @@ variable "failed_listjobs_rate_silenced" {
default = {} default = {}
} }
variable "failed_listjobs_rate_message" {
description = "Custom message for IoT Hub failed list jobs monitor"
type = "string"
default = ""
}
variable "failed_listjobs_rate_threshold_warning" { variable "failed_listjobs_rate_threshold_warning" {
description = "ListJobs Failed rate limit (warning threshold)" description = "ListJobs Failed rate limit (warning threshold)"
default = 50 default = 50
@ -76,6 +106,12 @@ variable "failed_queryjobs_rate_silenced" {
default = {} default = {}
} }
variable "failed_queryjobs_rate_message" {
description = "Custom message for IoT Hub failed query jobs monitor"
type = "string"
default = ""
}
variable "failed_queryjobs_rate_threshold_warning" { variable "failed_queryjobs_rate_threshold_warning" {
description = "QueryJobs Failed rate limit (warning threshold)" description = "QueryJobs Failed rate limit (warning threshold)"
default = 50 default = 50
@ -92,6 +128,12 @@ variable "failed_c2d_methods_rate_silenced" {
default = {} default = {}
} }
variable "failed_c2d_methods_rate_message" {
description = "Custom message for IoT Hub failed c2d method monitor"
type = "string"
default = ""
}
variable "failed_c2d_methods_rate_threshold_warning" { variable "failed_c2d_methods_rate_threshold_warning" {
description = "C2D Methods Failed rate limit (warning threshold)" description = "C2D Methods Failed rate limit (warning threshold)"
default = 50 default = 50
@ -108,6 +150,12 @@ variable "failed_c2d_twin_read_rate_silenced" {
default = {} default = {}
} }
variable "failed_c2d_twin_read_rate_message" {
description = "Custom message for IoT Hub failed c2d twin read monitor"
type = "string"
default = ""
}
variable "failed_c2d_twin_read_rate_threshold_warning" { variable "failed_c2d_twin_read_rate_threshold_warning" {
description = "C2D Twin Read Failed rate limit (warning threshold)" description = "C2D Twin Read Failed rate limit (warning threshold)"
default = 50 default = 50
@ -124,6 +172,12 @@ variable "failed_c2d_twin_update_rate_silenced" {
default = {} default = {}
} }
variable "failed_c2d_twin_update_rate_message" {
description = "Custom message for IoT Hub failed c2d twin update monitor"
type = "string"
default = ""
}
variable "failed_c2d_twin_update_rate_threshold_warning" { variable "failed_c2d_twin_update_rate_threshold_warning" {
description = "C2D Twin Update Failed rate limit (warning threshold)" description = "C2D Twin Update Failed rate limit (warning threshold)"
default = 50 default = 50
@ -140,6 +194,12 @@ variable "failed_d2c_twin_read_rate_silenced" {
default = {} default = {}
} }
variable "failed_d2c_twin_read_rate_message" {
description = "Custom message for IoT Hub failed d2c twin read monitor"
type = "string"
default = ""
}
variable "failed_d2c_twin_read_rate_threshold_warning" { variable "failed_d2c_twin_read_rate_threshold_warning" {
description = "D2C Twin Read Failed rate limit (warning threshold)" description = "D2C Twin Read Failed rate limit (warning threshold)"
default = 50 default = 50
@ -156,6 +216,12 @@ variable "failed_d2c_twin_update_rate_silenced" {
default = {} default = {}
} }
variable "failed_d2c_twin_update_rate_message" {
description = "Custom message for IoT Hub failed d2c twin update monitor"
type = "string"
default = ""
}
variable "failed_d2c_twin_update_rate_threshold_warning" { variable "failed_d2c_twin_update_rate_threshold_warning" {
description = "D2C Twin Update Failed rate limit (warning threshold)" description = "D2C Twin Update Failed rate limit (warning threshold)"
default = 50 default = 50
@ -172,6 +238,12 @@ variable "dropped_d2c_telemetry_egress_silenced" {
default = {} default = {}
} }
variable "dropped_d2c_telemetry_egress_message" {
description = "Custom message for IoT Hub dropped d2c telemetry monitor"
type = "string"
default = ""
}
variable "dropped_d2c_telemetry_egress_threshold_warning" { variable "dropped_d2c_telemetry_egress_threshold_warning" {
description = "D2C Telemetry Dropped limit (warning threshold)" description = "D2C Telemetry Dropped limit (warning threshold)"
default = 500 default = 500
@ -188,6 +260,12 @@ variable "orphaned_d2c_telemetry_egress_silenced" {
default = {} default = {}
} }
variable "orphaned_d2c_telemetry_egress_message" {
description = "Custom message for IoT Hub orphaned d2c telemetry monitor"
type = "string"
default = ""
}
variable "orphaned_d2c_telemetry_egress_threshold_warning" { variable "orphaned_d2c_telemetry_egress_threshold_warning" {
description = "D2C Telemetry Orphaned limit (warning threshold)" description = "D2C Telemetry Orphaned limit (warning threshold)"
default = 500 default = 500
@ -204,6 +282,12 @@ variable "invalid_d2c_telemetry_egress_silenced" {
default = {} default = {}
} }
variable "invalid_d2c_telemetry_egress_message" {
description = "Custom message for IoT Hub invalid d2c telemetry monitor"
type = "string"
default = ""
}
variable "invalid_d2c_telemetry_egress_threshold_warning" { variable "invalid_d2c_telemetry_egress_threshold_warning" {
description = "D2C Telemetry Invalid limit (warning threshold)" description = "D2C Telemetry Invalid limit (warning threshold)"
default = 500 default = 500
@ -220,6 +304,12 @@ variable "fallback_d2c_telemetry_egress_silenced" {
default = {} default = {}
} }
variable "fallback_d2c_telemetry_egress_message" {
description = "Custom message for IoT Hub fallback d2c telemetry monitor"
type = "string"
default = ""
}
variable "fallback_d2c_telemetry_egress_threshold_warning" { variable "fallback_d2c_telemetry_egress_threshold_warning" {
description = "D2C Telemetry Fallback limit (warning threshold)" description = "D2C Telemetry Fallback limit (warning threshold)"
default = 500 default = 500

View File

@ -1,6 +1,6 @@
resource "datadog_monitor" "too_many_jobs_failed" { resource "datadog_monitor" "too_many_jobs_failed" {
name = "[${var.environment}] IOT Hub Too many jobs failed {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)" name = "[${var.environment}] IOT Hub Too many jobs failed {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)"
message = "${var.message}" message = "${coalesce(var.failed_jobs_rate_message, var.message)}"
query = <<EOF query = <<EOF
sum(last_5m):( sum(last_5m):(
@ -35,7 +35,7 @@ resource "datadog_monitor" "too_many_jobs_failed" {
resource "datadog_monitor" "too_many_list_jobs_failed" { resource "datadog_monitor" "too_many_list_jobs_failed" {
name = "[${var.environment}] IOT Hub Too many list_jobs failure {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)" name = "[${var.environment}] IOT Hub Too many list_jobs failure {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)"
message = "${var.message}" message = "${coalesce(var.failed_listjobs_rate_message, var.message)}"
query = <<EOF query = <<EOF
sum(last_5m):( sum(last_5m):(
@ -70,7 +70,7 @@ resource "datadog_monitor" "too_many_list_jobs_failed" {
resource "datadog_monitor" "too_many_query_jobs_failed" { resource "datadog_monitor" "too_many_query_jobs_failed" {
name = "[${var.environment}] IOT Hub Too many query_jobs failed {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)" name = "[${var.environment}] IOT Hub Too many query_jobs failed {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)"
message = "${var.message}" message = "${coalesce(var.failed_queryjobs_rate_message, var.message)}"
query = <<EOF query = <<EOF
sum(last_5m):( sum(last_5m):(
@ -105,7 +105,7 @@ resource "datadog_monitor" "too_many_query_jobs_failed" {
resource "datadog_monitor" "status" { resource "datadog_monitor" "status" {
name = "[${var.environment}] IOT Hub is down" name = "[${var.environment}] IOT Hub is down"
message = "${var.message}" message = "${coalesce(var.status_message, var.message)}"
query = <<EOF query = <<EOF
avg(last_5m):avg:azure.devices_iothubs.status{${var.filter_tags}} by {resource_group,region,name} < 1 avg(last_5m):avg:azure.devices_iothubs.status{${var.filter_tags}} by {resource_group,region,name} < 1
@ -131,7 +131,7 @@ resource "datadog_monitor" "status" {
resource "datadog_monitor" "total_devices" { resource "datadog_monitor" "total_devices" {
name = "[${var.environment}] IOT Hub Total devices is wrong {{comparator}} {{#is_alert}}{{threshold}}{{/is_alert}}{{#is_warning}}{{warn_threshold}}{{/is_warning}} ({{value}})" name = "[${var.environment}] IOT Hub Total devices is wrong {{comparator}} {{#is_alert}}{{threshold}}{{/is_alert}}{{#is_warning}}{{warn_threshold}}{{/is_warning}} ({{value}})"
message = "${var.message}" message = "${coalesce(var.total_devices_message, var.message)}"
query = <<EOF query = <<EOF
avg(last_5m):avg:azure.devices_iothubs.devices.total_devices{${var.filter_tags}} by {resource_group,region,name} == 0 avg(last_5m):avg:azure.devices_iothubs.devices.total_devices{${var.filter_tags}} by {resource_group,region,name} == 0
@ -157,7 +157,7 @@ resource "datadog_monitor" "total_devices" {
resource "datadog_monitor" "too_many_c2d_methods_failed" { resource "datadog_monitor" "too_many_c2d_methods_failed" {
name = "[${var.environment}] IOT Hub Too many c2d methods failure {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)" name = "[${var.environment}] IOT Hub Too many c2d methods failure {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)"
message = "${var.message}" message = "${coalesce(var.failed_c2d_methods_rate_message, var.message)}"
query = <<EOF query = <<EOF
sum(last_5m):( sum(last_5m):(
@ -192,7 +192,7 @@ resource "datadog_monitor" "too_many_c2d_methods_failed" {
resource "datadog_monitor" "too_many_c2d_twin_read_failed" { resource "datadog_monitor" "too_many_c2d_twin_read_failed" {
name = "[${var.environment}] IOT Hub Too many c2d twin read failure {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)" name = "[${var.environment}] IOT Hub Too many c2d twin read failure {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)"
message = "${var.message}" message = "${coalesce(var.failed_c2d_twin_read_rate_message, var.message)}"
query = <<EOF query = <<EOF
sum(last_5m):( sum(last_5m):(
@ -227,7 +227,7 @@ resource "datadog_monitor" "too_many_c2d_twin_read_failed" {
resource "datadog_monitor" "too_many_c2d_twin_update_failed" { resource "datadog_monitor" "too_many_c2d_twin_update_failed" {
name = "[${var.environment}] IOT Hub Too many c2d twin update failure {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)" name = "[${var.environment}] IOT Hub Too many c2d twin update failure {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)"
message = "${var.message}" message = "${coalesce(var.failed_c2d_twin_update_rate_message, var.message)}"
query = <<EOF query = <<EOF
sum(last_5m):( sum(last_5m):(
@ -262,7 +262,7 @@ resource "datadog_monitor" "too_many_c2d_twin_update_failed" {
resource "datadog_monitor" "too_many_d2c_twin_read_failed" { resource "datadog_monitor" "too_many_d2c_twin_read_failed" {
name = "[${var.environment}] IOT Hub Too many d2c twin read failure {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)" name = "[${var.environment}] IOT Hub Too many d2c twin read failure {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)"
message = "${var.message}" message = "${coalesce(var.failed_d2c_twin_read_rate_message, var.message)}"
query = <<EOF query = <<EOF
sum(last_5m):( sum(last_5m):(
@ -297,7 +297,7 @@ resource "datadog_monitor" "too_many_d2c_twin_read_failed" {
resource "datadog_monitor" "too_many_d2c_twin_update_failed" { resource "datadog_monitor" "too_many_d2c_twin_update_failed" {
name = "[${var.environment}] IOT Hub Too many d2c twin update failure {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)" name = "[${var.environment}] IOT Hub Too many d2c twin update failure {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)"
message = "${var.message}" message = "${coalesce(var.failed_d2c_twin_update_rate_message, var.message)}"
query = <<EOF query = <<EOF
sum(last_5m):( sum(last_5m):(
@ -332,7 +332,7 @@ resource "datadog_monitor" "too_many_d2c_twin_update_failed" {
resource "datadog_monitor" "too_many_d2c_telemetry_egress_dropped" { resource "datadog_monitor" "too_many_d2c_telemetry_egress_dropped" {
name = "[${var.environment}] IOT Hub Too many d2c telemetry egress dropped {{comparator}} {{#is_alert}}{{threshold}}{{/is_alert}}{{#is_warning}}{{warn_threshold}}{{/is_warning}} ({{value}})" name = "[${var.environment}] IOT Hub Too many d2c telemetry egress dropped {{comparator}} {{#is_alert}}{{threshold}}{{/is_alert}}{{#is_warning}}{{warn_threshold}}{{/is_warning}} ({{value}})"
message = "${var.message}" message = "${coalesce(var.dropped_d2c_telemetry_egress_message, var.message)}"
query = <<EOF query = <<EOF
sum(last_5m): ( sum(last_5m): (
@ -365,7 +365,7 @@ resource "datadog_monitor" "too_many_d2c_telemetry_egress_dropped" {
resource "datadog_monitor" "too_many_d2c_telemetry_egress_orphaned" { resource "datadog_monitor" "too_many_d2c_telemetry_egress_orphaned" {
name = "[${var.environment}] IOT Hub Too many d2c telemetry egress orphaned {{comparator}} {{#is_alert}}{{threshold}}{{/is_alert}}{{#is_warning}}{{warn_threshold}}{{/is_warning}} ({{value}})" name = "[${var.environment}] IOT Hub Too many d2c telemetry egress orphaned {{comparator}} {{#is_alert}}{{threshold}}{{/is_alert}}{{#is_warning}}{{warn_threshold}}{{/is_warning}} ({{value}})"
message = "${var.message}" message = "${coalesce(var.orphaned_d2c_telemetry_egress_message, var.message)}"
query = <<EOF query = <<EOF
sum(last_5m): ( sum(last_5m): (
@ -398,7 +398,7 @@ resource "datadog_monitor" "too_many_d2c_telemetry_egress_orphaned" {
resource "datadog_monitor" "too_many_d2c_telemetry_egress_invalid" { resource "datadog_monitor" "too_many_d2c_telemetry_egress_invalid" {
name = "[${var.environment}] IOT Hub Too many d2c telemetry egress invalid {{comparator}} {{#is_alert}}{{threshold}}{{/is_alert}}{{#is_warning}}{{warn_threshold}}{{/is_warning}} ({{value}})" name = "[${var.environment}] IOT Hub Too many d2c telemetry egress invalid {{comparator}} {{#is_alert}}{{threshold}}{{/is_alert}}{{#is_warning}}{{warn_threshold}}{{/is_warning}} ({{value}})"
message = "${var.message}" message = "${coalesce(var.invalid_d2c_telemetry_egress_message, var.message)}"
query = <<EOF query = <<EOF
sum(last_5m): ( sum(last_5m): (
@ -431,7 +431,7 @@ resource "datadog_monitor" "too_many_d2c_telemetry_egress_invalid" {
resource "datadog_monitor" "too_many_d2c_telemetry_egress_fallback" { resource "datadog_monitor" "too_many_d2c_telemetry_egress_fallback" {
name = "[${var.environment}] IOT Hub Too many d2c telemetry egress fallback {{comparator}} {{#is_alert}}{{threshold}}{{/is_alert}}{{#is_warning}}{{warn_threshold}}{{/is_warning}} ({{value}})" name = "[${var.environment}] IOT Hub Too many d2c telemetry egress fallback {{comparator}} {{#is_alert}}{{threshold}}{{/is_alert}}{{#is_warning}}{{warn_threshold}}{{/is_warning}} ({{value}})"
message = "${var.message}" message = "${coalesce(var.fallback_d2c_telemetry_egress_message, var.message)}"
query = <<EOF query = <<EOF
sum(last_5m): ( sum(last_5m): (
@ -464,7 +464,7 @@ resource "datadog_monitor" "too_many_d2c_telemetry_egress_fallback" {
resource "datadog_monitor" "too_many_d2c_telemetry_ingress_nosent" { resource "datadog_monitor" "too_many_d2c_telemetry_ingress_nosent" {
name = "[${var.environment}] IOT Hub Too many d2c telemetry ingress not sent {{comparator}} {{#is_alert}}{{threshold}}{{/is_alert}}{{#is_warning}}{{warn_threshold}}{{/is_warning}} ({{value}})" name = "[${var.environment}] IOT Hub Too many d2c telemetry ingress not sent {{comparator}} {{#is_alert}}{{threshold}}{{/is_alert}}{{#is_warning}}{{warn_threshold}}{{/is_warning}} ({{value}})"
message = "${var.message}" message = "${coalesce(var.too_many_d2c_telemetry_ingress_nosent_message, var.message)}"
query = <<EOF query = <<EOF
sum(last_5m): ( sum(last_5m): (

View File

@ -9,16 +9,21 @@ module "apimanagement" {
filter_tags_custom = "${var.filter_tags_custom}" filter_tags_custom = "${var.filter_tags_custom}"
status_silenced = "${var.apimanagement_status_silenced}" status_silenced = "${var.apimanagement_status_silenced}"
status_message = "${var.apimanagement_status_message}"
failed_requests_silenced = "${var.apimanagement_failed_requests_silenced}" failed_requests_silenced = "${var.apimanagement_failed_requests_silenced}"
failed_requests_message = "${var.apimanagement_failed_requests_message}"
failed_requests_threshold_critical = "${var.apimanagement_failed_requests_threshold_critical}" failed_requests_threshold_critical = "${var.apimanagement_failed_requests_threshold_critical}"
failed_requests_threshold_warning = "${var.apimanagement_failed_requests_threshold_warning}" failed_requests_threshold_warning = "${var.apimanagement_failed_requests_threshold_warning}"
other_requests_silenced = "${var.apimanagement_other_requests_silenced}" other_requests_silenced = "${var.apimanagement_other_requests_silenced}"
other_requests_message = "${var.apimanagement_other_requests_message}"
other_requests_threshold_critical = "${var.apimanagement_other_requests_threshold_critical}" other_requests_threshold_critical = "${var.apimanagement_other_requests_threshold_critical}"
other_requests_threshold_warning = "${var.apimanagement_other_requests_threshold_warning}" other_requests_threshold_warning = "${var.apimanagement_other_requests_threshold_warning}"
successful_requests_silenced = "${var.apimanagement_successful_requests_silenced}" successful_requests_silenced = "${var.apimanagement_successful_requests_silenced}"
successful_requests_message = "${var.apimanagement_successful_requests_message}"
successful_requests_threshold_critical = "${var.apimanagement_successful_requests_threshold_critical}" successful_requests_threshold_critical = "${var.apimanagement_successful_requests_threshold_critical}"
successful_requests_threshold_warning = "${var.apimanagement_successful_requests_threshold_warning}" successful_requests_threshold_warning = "${var.apimanagement_successful_requests_threshold_warning}"
unauthorized_requests_silenced = "${var.apimanagement_unauthorized_requests_silenced}" unauthorized_requests_silenced = "${var.apimanagement_unauthorized_requests_silenced}"
unauthorized_requests_message = "${var.apimanagement_unauthorized_requests_message}"
unauthorized_requests_threshold_critical = "${var.apimanagement_unauthorized_requests_threshold_critical}" unauthorized_requests_threshold_critical = "${var.apimanagement_unauthorized_requests_threshold_critical}"
unauthorized_requests_threshold_warning = "${var.apimanagement_unauthorized_requests_threshold_warning}" unauthorized_requests_threshold_warning = "${var.apimanagement_unauthorized_requests_threshold_warning}"
} }
@ -34,18 +39,23 @@ module "appservices" {
filter_tags_custom = "${var.filter_tags_custom}" filter_tags_custom = "${var.filter_tags_custom}"
http_successful_requests_silenced = "${var.appservices_http_successful_requests_silenced}" http_successful_requests_silenced = "${var.appservices_http_successful_requests_silenced}"
http_successful_requests_message = "${var.appservices_http_successful_requests_message}"
http_successful_requests_threshold_critical = "${var.appservices_http_successful_requests_threshold_critical}" http_successful_requests_threshold_critical = "${var.appservices_http_successful_requests_threshold_critical}"
http_successful_requests_threshold_warning = "${var.appservices_http_successful_requests_threshold_warning}" http_successful_requests_threshold_warning = "${var.appservices_http_successful_requests_threshold_warning}"
http_5xx_requests_silenced = "${var.appservices_http_5xx_requests_silenced}" http_5xx_requests_silenced = "${var.appservices_http_5xx_requests_silenced}"
http_5xx_requests_message = "${var.appservices_http_5xx_requests_message}"
http_5xx_requests_threshold_critical = "${var.appservices_http_5xx_requests_threshold_critical}" http_5xx_requests_threshold_critical = "${var.appservices_http_5xx_requests_threshold_critical}"
http_5xx_requests_threshold_warning = "${var.appservices_http_5xx_requests_threshold_warning}" http_5xx_requests_threshold_warning = "${var.appservices_http_5xx_requests_threshold_warning}"
http_4xx_requests_silenced = "${var.appservices_http_4xx_requests_silenced}" http_4xx_requests_silenced = "${var.appservices_http_4xx_requests_silenced}"
http_4xx_requests_message = "${var.appservices_http_4xx_requests_message}"
http_4xx_requests_threshold_critical = "${var.appservices_http_4xx_requests_threshold_critical}" http_4xx_requests_threshold_critical = "${var.appservices_http_4xx_requests_threshold_critical}"
http_4xx_requests_threshold_warning = "${var.appservices_http_4xx_requests_threshold_warning}" http_4xx_requests_threshold_warning = "${var.appservices_http_4xx_requests_threshold_warning}"
memory_usage_silenced = "${var.appservices_memory_usage_silenced}" memory_usage_silenced = "${var.appservices_memory_usage_silenced}"
memory_usage_message = "${var.appservices_memory_usage_message}"
memory_usage_threshold_critical = "${var.appservices_memory_usage_threshold_critical}" memory_usage_threshold_critical = "${var.appservices_memory_usage_threshold_critical}"
memory_usage_threshold_warning = "${var.appservices_memory_usage_threshold_warning}" memory_usage_threshold_warning = "${var.appservices_memory_usage_threshold_warning}"
response_time_silenced = "${var.appservices_response_time_silenced}" response_time_silenced = "${var.appservices_response_time_silenced}"
response_time_message = "${var.appservices_response_time_message}"
response_time_threshold_critical = "${var.appservices_response_time_threshold_critical}" response_time_threshold_critical = "${var.appservices_response_time_threshold_critical}"
response_time_threshold_warning = "${var.appservices_response_time_threshold_warning}" response_time_threshold_warning = "${var.appservices_response_time_threshold_warning}"
} }
@ -61,10 +71,13 @@ module "eventhub" {
filter_tags_custom = "${var.filter_tags_custom}" filter_tags_custom = "${var.filter_tags_custom}"
status_silenced = "${var.eventhub_status_silenced}" status_silenced = "${var.eventhub_status_silenced}"
status_message = "${var.eventhub_status_message}"
errors_rate_silenced = "${var.eventhub_errors_rate_silenced}" errors_rate_silenced = "${var.eventhub_errors_rate_silenced}"
errors_rate_message = "${var.eventhub_errors_rate_message}"
errors_rate_thresold_critical = "${var.eventhub_errors_rate_thresold_critical}" errors_rate_thresold_critical = "${var.eventhub_errors_rate_thresold_critical}"
errors_rate_thresold_warning = "${var.eventhub_errors_rate_thresold_warning}" errors_rate_thresold_warning = "${var.eventhub_errors_rate_thresold_warning}"
failed_requests_rate_silenced = "${var.eventhub_failed_requests_rate_silenced}" failed_requests_rate_silenced = "${var.eventhub_failed_requests_rate_silenced}"
failed_requests_rate_message = "${var.eventhub_failed_requests_rate_message}"
failed_requests_rate_thresold_critical = "${var.eventhub_failed_requests_rate_thresold_critical}" failed_requests_rate_thresold_critical = "${var.eventhub_failed_requests_rate_thresold_critical}"
failed_requests_rate_thresold_warning = "${var.eventhub_failed_requests_rate_thresold_warning}" failed_requests_rate_thresold_warning = "${var.eventhub_failed_requests_rate_thresold_warning}"
} }
@ -79,42 +92,56 @@ module "iothub" {
filter_tags = "${var.non_taggable_filter_tags}" filter_tags = "${var.non_taggable_filter_tags}"
status_silenced = "${var.iothub_status_silenced}" status_silenced = "${var.iothub_status_silenced}"
status_message = "${var.iothub_status_message}"
total_devices_silenced = "${var.iothub_total_devices_silenced}" total_devices_silenced = "${var.iothub_total_devices_silenced}"
total_devices_message = "${var.iothub_total_devices_message}"
too_many_d2c_telemetry_ingress_nosent_silenced = "${var.iothub_too_many_d2c_telemetry_ingress_nosent_silenced}" too_many_d2c_telemetry_ingress_nosent_silenced = "${var.iothub_too_many_d2c_telemetry_ingress_nosent_silenced}"
dropped_d2c_telemetry_egress_silenced = "${var.iothub_dropped_d2c_telemetry_egress_silenced}" dropped_d2c_telemetry_egress_silenced = "${var.iothub_dropped_d2c_telemetry_egress_silenced}"
dropped_d2c_telemetry_egress_message = "${var.iothub_dropped_d2c_telemetry_egress_message}"
dropped_d2c_telemetry_egress_threshold_critical = "${var.iothub_dropped_d2c_telemetry_egress_threshold_critical}" dropped_d2c_telemetry_egress_threshold_critical = "${var.iothub_dropped_d2c_telemetry_egress_threshold_critical}"
dropped_d2c_telemetry_egress_threshold_warning = "${var.iothub_dropped_d2c_telemetry_egress_threshold_warning}" dropped_d2c_telemetry_egress_threshold_warning = "${var.iothub_dropped_d2c_telemetry_egress_threshold_warning}"
failed_c2d_methods_rate_silenced = "${var.iothub_failed_c2d_methods_rate_silenced}" failed_c2d_methods_rate_silenced = "${var.iothub_failed_c2d_methods_rate_silenced}"
failed_c2d_methods_rate_message = "${var.iothub_failed_c2d_methods_rate_message}"
failed_c2d_methods_rate_threshold_critical = "${var.iothub_failed_c2d_methods_rate_threshold_critical}" failed_c2d_methods_rate_threshold_critical = "${var.iothub_failed_c2d_methods_rate_threshold_critical}"
failed_c2d_methods_rate_threshold_warning = "${var.iothub_failed_c2d_methods_rate_threshold_warning}" failed_c2d_methods_rate_threshold_warning = "${var.iothub_failed_c2d_methods_rate_threshold_warning}"
failed_c2d_twin_read_rate_silenced = "${var.iothub_failed_c2d_twin_read_rate_silenced}" failed_c2d_twin_read_rate_silenced = "${var.iothub_failed_c2d_twin_read_rate_silenced}"
failed_c2d_twin_read_rate_message = "${var.iothub_failed_c2d_twin_read_rate_message}"
failed_c2d_twin_read_rate_threshold_critical = "${var.iothub_failed_c2d_twin_read_rate_threshold_critical}" failed_c2d_twin_read_rate_threshold_critical = "${var.iothub_failed_c2d_twin_read_rate_threshold_critical}"
failed_c2d_twin_read_rate_threshold_warning = "${var.iothub_failed_c2d_twin_read_rate_threshold_warning}" failed_c2d_twin_read_rate_threshold_warning = "${var.iothub_failed_c2d_twin_read_rate_threshold_warning}"
failed_c2d_twin_update_rate_silenced = "${var.iothub_failed_c2d_twin_update_rate_silenced}" failed_c2d_twin_update_rate_silenced = "${var.iothub_failed_c2d_twin_update_rate_silenced}"
failed_c2d_twin_update_rate_message = "${var.iothub_failed_c2d_twin_update_rate_message}"
failed_c2d_twin_update_rate_threshold_critical = "${var.iothub_failed_c2d_twin_update_rate_threshold_critical}" failed_c2d_twin_update_rate_threshold_critical = "${var.iothub_failed_c2d_twin_update_rate_threshold_critical}"
failed_c2d_twin_update_rate_threshold_warning = "${var.iothub_failed_c2d_twin_update_rate_threshold_warning}" failed_c2d_twin_update_rate_threshold_warning = "${var.iothub_failed_c2d_twin_update_rate_threshold_warning}"
failed_d2c_twin_read_rate_silenced = "${var.iothub_failed_d2c_twin_read_rate_silenced}" failed_d2c_twin_read_rate_silenced = "${var.iothub_failed_d2c_twin_read_rate_silenced}"
failed_d2c_twin_read_rate_message = "${var.iothub_failed_d2c_twin_read_rate_message}"
failed_d2c_twin_read_rate_threshold_critical = "${var.iothub_failed_d2c_twin_read_rate_threshold_critical}" failed_d2c_twin_read_rate_threshold_critical = "${var.iothub_failed_d2c_twin_read_rate_threshold_critical}"
failed_d2c_twin_read_rate_threshold_warning = "${var.iothub_failed_d2c_twin_read_rate_threshold_warning}" failed_d2c_twin_read_rate_threshold_warning = "${var.iothub_failed_d2c_twin_read_rate_threshold_warning}"
failed_d2c_twin_update_rate_silenced = "${var.iothub_failed_d2c_twin_update_rate_silenced}" failed_d2c_twin_update_rate_silenced = "${var.iothub_failed_d2c_twin_update_rate_silenced}"
failed_d2c_twin_update_rate_message = "${var.iothub_failed_d2c_twin_update_rate_message}"
failed_d2c_twin_update_rate_threshold_critical = "${var.iothub_failed_d2c_twin_update_rate_threshold_critical}" failed_d2c_twin_update_rate_threshold_critical = "${var.iothub_failed_d2c_twin_update_rate_threshold_critical}"
failed_d2c_twin_update_rate_threshold_warning = "${var.iothub_failed_d2c_twin_update_rate_threshold_warning}" failed_d2c_twin_update_rate_threshold_warning = "${var.iothub_failed_d2c_twin_update_rate_threshold_warning}"
failed_jobs_rate_silenced = "${var.iothub_failed_jobs_rate_silenced}" failed_jobs_rate_silenced = "${var.iothub_failed_jobs_rate_silenced}"
failed_jobs_rate_message = "${var.iothub_failed_jobs_rate_message}"
failed_jobs_rate_threshold_critical = "${var.iothub_failed_jobs_rate_threshold_critical}" failed_jobs_rate_threshold_critical = "${var.iothub_failed_jobs_rate_threshold_critical}"
failed_jobs_rate_threshold_warning = "${var.iothub_failed_jobs_rate_threshold_warning}" failed_jobs_rate_threshold_warning = "${var.iothub_failed_jobs_rate_threshold_warning}"
failed_listjobs_rate_silenced = "${var.iothub_failed_listjobs_rate_silenced}" failed_listjobs_rate_silenced = "${var.iothub_failed_listjobs_rate_silenced}"
failed_listjobs_rate_message = "${var.iothub_failed_listjobs_rate_message}"
failed_listjobs_rate_threshold_critical = "${var.iothub_failed_listjobs_rate_threshold_critical}" failed_listjobs_rate_threshold_critical = "${var.iothub_failed_listjobs_rate_threshold_critical}"
failed_listjobs_rate_threshold_warning = "${var.iothub_failed_listjobs_rate_threshold_warning}" failed_listjobs_rate_threshold_warning = "${var.iothub_failed_listjobs_rate_threshold_warning}"
failed_queryjobs_rate_silenced = "${var.iothub_failed_queryjobs_rate_silenced}" failed_queryjobs_rate_silenced = "${var.iothub_failed_queryjobs_rate_silenced}"
failed_queryjobs_rate_message = "${var.iothub_failed_queryjobs_rate_message}"
failed_queryjobs_rate_threshold_critical = "${var.iothub_failed_queryjobs_rate_threshold_critical}" failed_queryjobs_rate_threshold_critical = "${var.iothub_failed_queryjobs_rate_threshold_critical}"
failed_queryjobs_rate_threshold_warning = "${var.iothub_failed_queryjobs_rate_threshold_warning}" failed_queryjobs_rate_threshold_warning = "${var.iothub_failed_queryjobs_rate_threshold_warning}"
fallback_d2c_telemetry_egress_silenced = "${var.iothub_fallback_d2c_telemetry_egress_silenced}" fallback_d2c_telemetry_egress_silenced = "${var.iothub_fallback_d2c_telemetry_egress_silenced}"
fallback_d2c_telemetry_egress_message = "${var.iothub_fallback_d2c_telemetry_egress_message}"
fallback_d2c_telemetry_egress_threshold_critical = "${var.iothub_fallback_d2c_telemetry_egress_threshold_critical}" fallback_d2c_telemetry_egress_threshold_critical = "${var.iothub_fallback_d2c_telemetry_egress_threshold_critical}"
fallback_d2c_telemetry_egress_threshold_warning = "${var.iothub_fallback_d2c_telemetry_egress_threshold_warning}" fallback_d2c_telemetry_egress_threshold_warning = "${var.iothub_fallback_d2c_telemetry_egress_threshold_warning}"
invalid_d2c_telemetry_egress_silenced = "${var.iothub_invalid_d2c_telemetry_egress_silenced}" invalid_d2c_telemetry_egress_silenced = "${var.iothub_invalid_d2c_telemetry_egress_silenced}"
invalid_d2c_telemetry_egress_message = "${var.iothub_invalid_d2c_telemetry_egress_message}"
invalid_d2c_telemetry_egress_threshold_critical = "${var.iothub_invalid_d2c_telemetry_egress_threshold_critical}" invalid_d2c_telemetry_egress_threshold_critical = "${var.iothub_invalid_d2c_telemetry_egress_threshold_critical}"
invalid_d2c_telemetry_egress_threshold_warning = "${var.iothub_invalid_d2c_telemetry_egress_threshold_warning}" invalid_d2c_telemetry_egress_threshold_warning = "${var.iothub_invalid_d2c_telemetry_egress_threshold_warning}"
orphaned_d2c_telemetry_egress_silenced = "${var.iothub_orphaned_d2c_telemetry_egress_silenced}" orphaned_d2c_telemetry_egress_silenced = "${var.iothub_orphaned_d2c_telemetry_egress_silenced}"
orphaned_d2c_telemetry_egress_message = "${var.iothub_orphaned_d2c_telemetry_egress_message}"
orphaned_d2c_telemetry_egress_threshold_critical = "${var.iothub_orphaned_d2c_telemetry_egress_threshold_critical}" orphaned_d2c_telemetry_egress_threshold_critical = "${var.iothub_orphaned_d2c_telemetry_egress_threshold_critical}"
orphaned_d2c_telemetry_egress_threshold_warning = "${var.iothub_orphaned_d2c_telemetry_egress_threshold_warning}" orphaned_d2c_telemetry_egress_threshold_warning = "${var.iothub_orphaned_d2c_telemetry_egress_threshold_warning}"
} }
@ -130,13 +157,17 @@ module "redis" {
filter_tags_custom = "${var.filter_tags_custom}" filter_tags_custom = "${var.filter_tags_custom}"
status_silenced = "${var.redis_status_silenced}" status_silenced = "${var.redis_status_silenced}"
status_message = "${var.redis_status_message}"
evictedkeys_limit_silenced = "${var.redis_evictedkeys_limit_silenced}" evictedkeys_limit_silenced = "${var.redis_evictedkeys_limit_silenced}"
evictedkeys_limit_message = "${var.redis_evictedkeys_limit_message}"
evictedkeys_limit_threshold_critical = "${var.redis_evictedkeys_limit_threshold_critical}" evictedkeys_limit_threshold_critical = "${var.redis_evictedkeys_limit_threshold_critical}"
evictedkeys_limit_threshold_warning = "${var.redis_evictedkeys_limit_threshold_warning}" evictedkeys_limit_threshold_warning = "${var.redis_evictedkeys_limit_threshold_warning}"
percent_processor_time_silenced = "${var.redis_percent_processor_time_silenced}" percent_processor_time_silenced = "${var.redis_percent_processor_time_silenced}"
percent_processor_time_message = "${var.redis_percent_processor_time_message}"
percent_processor_time_threshold_critical = "${var.redis_percent_processor_time_threshold_critical}" percent_processor_time_threshold_critical = "${var.redis_percent_processor_time_threshold_critical}"
percent_processor_time_threshold_warning = "${var.redis_percent_processor_time_threshold_warning}" percent_processor_time_threshold_warning = "${var.redis_percent_processor_time_threshold_warning}"
server_load_rate_silenced = "${var.redis_server_load_rate_silenced}" server_load_rate_silenced = "${var.redis_server_load_rate_silenced}"
server_load_rate_message = "${var.redis_server_load_rate_message}"
server_load_rate_threshold_critical = "${var.redis_server_load_rate_threshold_critical}" server_load_rate_threshold_critical = "${var.redis_server_load_rate_threshold_critical}"
server_load_rate_threshold_warning = "${var.redis_server_load_rate_threshold_warning}" server_load_rate_threshold_warning = "${var.redis_server_load_rate_threshold_warning}"
} }
@ -152,14 +183,18 @@ module "sqldatabase" {
filter_tags_custom = "${var.filter_tags_custom}" filter_tags_custom = "${var.filter_tags_custom}"
cpu_silenced = "${var.sqldatabase_cpu_silenced}" cpu_silenced = "${var.sqldatabase_cpu_silenced}"
cpu_message = "${var.sqldatabase_cpu_message}"
cpu_threshold_critical = "${var.sqldatabase_cpu_threshold_critical}" cpu_threshold_critical = "${var.sqldatabase_cpu_threshold_critical}"
cpu_threshold_warning = "${var.sqldatabase_cpu_threshold_warning}" cpu_threshold_warning = "${var.sqldatabase_cpu_threshold_warning}"
deadlock_silenced = "${var.sqldatabase_deadlock_silenced}" deadlock_silenced = "${var.sqldatabase_deadlock_silenced}"
deadlock_message = "${var.sqldatabase_deadlock_message}"
deadlock_threshold_critical = "${var.sqldatabase_deadlock_threshold_critical}" deadlock_threshold_critical = "${var.sqldatabase_deadlock_threshold_critical}"
diskspace_silenced = "${var.sqldatabase_diskspace_silenced}" diskspace_silenced = "${var.sqldatabase_diskspace_silenced}"
diskspace_message = "${var.sqldatabase_diskspace_message}"
diskspace_threshold_critical = "${var.sqldatabase_diskspace_threshold_critical}" diskspace_threshold_critical = "${var.sqldatabase_diskspace_threshold_critical}"
diskspace_threshold_warning = "${var.sqldatabase_diskspace_threshold_warning}" diskspace_threshold_warning = "${var.sqldatabase_diskspace_threshold_warning}"
dtu_silenced = "${var.sqldatabase_dtu_silenced}" dtu_silenced = "${var.sqldatabase_dtu_silenced}"
dtu_message = "${var.sqldatabase_dtu_message}"
dtu_threshold_critical = "${var.sqldatabase_dtu_threshold_critical}" dtu_threshold_critical = "${var.sqldatabase_dtu_threshold_critical}"
dtu_threshold_warning = "${var.sqldatabase_dtu_threshold_warning}" dtu_threshold_warning = "${var.sqldatabase_dtu_threshold_warning}"
} }
@ -175,30 +210,39 @@ module "storage" {
filter_tags_custom = "${var.filter_tags_custom}" filter_tags_custom = "${var.filter_tags_custom}"
authorization_error_requests_silenced = "${var.storage_authorization_error_requests_silenced}" authorization_error_requests_silenced = "${var.storage_authorization_error_requests_silenced}"
authorization_error_requests_message = "${var.storage_authorization_error_requests_message}"
authorization_error_requests_threshold_critical = "${var.storage_authorization_error_requests_threshold_critical}" authorization_error_requests_threshold_critical = "${var.storage_authorization_error_requests_threshold_critical}"
authorization_error_requests_threshold_warning = "${var.storage_authorization_error_requests_threshold_warning}" authorization_error_requests_threshold_warning = "${var.storage_authorization_error_requests_threshold_warning}"
availability_silenced = "${var.storage_availability_silenced}" availability_silenced = "${var.storage_availability_silenced}"
availability_message = "${var.storage_availability_message}"
availability_threshold_critical = "${var.storage_availability_threshold_critical}" availability_threshold_critical = "${var.storage_availability_threshold_critical}"
availability_threshold_warning = "${var.storage_availability_threshold_warning}" availability_threshold_warning = "${var.storage_availability_threshold_warning}"
client_other_error_requests_silenced = "${var.storage_client_other_error_requests_silenced}" client_other_error_requests_silenced = "${var.storage_client_other_error_requests_silenced}"
client_other_error_requests_message = "${var.storage_client_other_error_requests_message}"
client_other_error_requests_threshold_critical = "${var.storage_client_other_error_requests_threshold_critical}" client_other_error_requests_threshold_critical = "${var.storage_client_other_error_requests_threshold_critical}"
client_other_error_requests_threshold_warning = "${var.storage_client_other_error_requests_threshold_warning}" client_other_error_requests_threshold_warning = "${var.storage_client_other_error_requests_threshold_warning}"
latency_silenced = "${var.storage_latency_silenced}" latency_silenced = "${var.storage_latency_silenced}"
latency_message = "${var.storage_latency_message}"
latency_threshold_critical = "${var.storage_latency_threshold_critical}" latency_threshold_critical = "${var.storage_latency_threshold_critical}"
latency_threshold_warning = "${var.storage_latency_threshold_warning}" latency_threshold_warning = "${var.storage_latency_threshold_warning}"
network_error_requests_silenced = "${var.storage_network_error_requests_silenced}" network_error_requests_silenced = "${var.storage_network_error_requests_silenced}"
network_error_requests_message = "${var.storage_network_error_requests_message}"
network_error_requests_threshold_critical = "${var.storage_network_error_requests_threshold_critical}" network_error_requests_threshold_critical = "${var.storage_network_error_requests_threshold_critical}"
network_error_requests_threshold_warning = "${var.storage_network_error_requests_threshold_warning}" network_error_requests_threshold_warning = "${var.storage_network_error_requests_threshold_warning}"
server_other_error_requests_silenced = "${var.storage_server_other_error_requests_silenced}" server_other_error_requests_silenced = "${var.storage_server_other_error_requests_silenced}"
server_other_error_requests_message = "${var.storage_server_other_error_requests_message}"
server_other_error_requests_threshold_critical = "${var.storage_server_other_error_requests_threshold_critical}" server_other_error_requests_threshold_critical = "${var.storage_server_other_error_requests_threshold_critical}"
server_other_error_requests_threshold_warning = "${var.storage_server_other_error_requests_threshold_warning}" server_other_error_requests_threshold_warning = "${var.storage_server_other_error_requests_threshold_warning}"
successful_requests_silenced = "${var.storage_successful_requests_silenced}" successful_requests_silenced = "${var.storage_successful_requests_silenced}"
successful_requests_message = "${var.storage_successful_requests_message}"
successful_requests_threshold_critical = "${var.storage_successful_requests_threshold_critical}" successful_requests_threshold_critical = "${var.storage_successful_requests_threshold_critical}"
successful_requests_threshold_warning = "${var.storage_successful_requests_threshold_warning}" successful_requests_threshold_warning = "${var.storage_successful_requests_threshold_warning}"
throttling_error_requests_silenced = "${var.storage_throttling_error_requests_silenced}" throttling_error_requests_silenced = "${var.storage_throttling_error_requests_silenced}"
throttling_error_requests_message = "${var.storage_throttling_error_requests_message}"
throttling_error_requests_threshold_critical = "${var.storage_throttling_error_requests_threshold_critical}" throttling_error_requests_threshold_critical = "${var.storage_throttling_error_requests_threshold_critical}"
throttling_error_requests_threshold_warning = "${var.storage_throttling_error_requests_threshold_warning}" throttling_error_requests_threshold_warning = "${var.storage_throttling_error_requests_threshold_warning}"
timeout_error_requests_silenced = "${var.storage_timeout_error_requests_silenced}" timeout_error_requests_silenced = "${var.storage_timeout_error_requests_silenced}"
timeout_error_requests_message = "${var.storage_timeout_error_requests_message}"
timeout_error_requests_threshold_critical = "${var.storage_timeout_error_requests_threshold_critical}" timeout_error_requests_threshold_critical = "${var.storage_timeout_error_requests_threshold_critical}"
timeout_error_requests_threshold_warning = "${var.storage_timeout_error_requests_threshold_warning}" timeout_error_requests_threshold_warning = "${var.storage_timeout_error_requests_threshold_warning}"
} }
@ -214,15 +258,19 @@ module "streamanalytics" {
filter_tags_custom = "${var.filter_tags_custom}" filter_tags_custom = "${var.filter_tags_custom}"
conversion_errors_silenced = "${var.streamanalytics_conversion_errors_silenced}" conversion_errors_silenced = "${var.streamanalytics_conversion_errors_silenced}"
conversion_errors_message = "${var.streamanalytics_conversion_errors_message}"
conversion_errors_threshold_critical = "${var.streamanalytics_conversion_errors_threshold_critical}" conversion_errors_threshold_critical = "${var.streamanalytics_conversion_errors_threshold_critical}"
conversion_errors_threshold_warning = "${var.streamanalytics_conversion_errors_threshold_warning}" conversion_errors_threshold_warning = "${var.streamanalytics_conversion_errors_threshold_warning}"
failed_function_requests_silenced = "${var.streamanalytics_failed_function_requests_silenced}" failed_function_requests_silenced = "${var.streamanalytics_failed_function_requests_silenced}"
failed_function_requests_message = "${var.streamanalytics_failed_function_requests_message}"
failed_function_requests_threshold_critical = "${var.streamanalytics_failed_function_requests_threshold_critical}" failed_function_requests_threshold_critical = "${var.streamanalytics_failed_function_requests_threshold_critical}"
failed_function_requests_threshold_warning = "${var.streamanalytics_failed_function_requests_threshold_warning}" failed_function_requests_threshold_warning = "${var.streamanalytics_failed_function_requests_threshold_warning}"
runtime_errors_silenced = "${var.streamanalytics_runtime_errors_silenced}" runtime_errors_silenced = "${var.streamanalytics_runtime_errors_silenced}"
runtime_errors_message = "${var.streamanalytics_runtime_errors_message}"
runtime_errors_threshold_critical = "${var.streamanalytics_runtime_errors_threshold_critical}" runtime_errors_threshold_critical = "${var.streamanalytics_runtime_errors_threshold_critical}"
runtime_errors_threshold_warning = "${var.streamanalytics_runtime_errors_threshold_warning}" runtime_errors_threshold_warning = "${var.streamanalytics_runtime_errors_threshold_warning}"
su_utilization_silenced = "${var.streamanalytics_su_utilization_silenced}" su_utilization_silenced = "${var.streamanalytics_su_utilization_silenced}"
su_utilization_message = "${var.streamanalytics_su_utilization_message}"
su_utilization_threshold_critical = "${var.streamanalytics_su_utilization_threshold_critical}" su_utilization_threshold_critical = "${var.streamanalytics_su_utilization_threshold_critical}"
su_utilization_threshold_warning = "${var.streamanalytics_su_utilization_threshold_warning}" su_utilization_threshold_warning = "${var.streamanalytics_su_utilization_threshold_warning}"
} }

View File

@ -29,18 +29,23 @@ Inputs
|------|-------------|:----:|:-----:|:-----:| |------|-------------|:----:|:-----:|:-----:|
| delay | Delay in seconds for the metric evaluation | string | `600` | no | | delay | Delay in seconds for the metric evaluation | string | `600` | no |
| environment | Architecture environment | string | - | yes | | environment | Architecture environment | string | - | yes |
| evictedkeys_limit_message | Custom message for Redis evicted keys monitor | string | `` | no |
| evictedkeys_limit_silenced | Groups to mute for Redis evicted keys monitor | map | `<map>` | no | | evictedkeys_limit_silenced | Groups to mute for Redis evicted keys monitor | map | `<map>` | no |
| evictedkeys_limit_threshold_critical | Evicted keys limit (critical threshold) | string | `100` | no | | evictedkeys_limit_threshold_critical | Evicted keys limit (critical threshold) | string | `100` | no |
| evictedkeys_limit_threshold_warning | Evicted keys limit (warning threshold) | string | `0` | no | | evictedkeys_limit_threshold_warning | Evicted keys limit (warning threshold) | string | `0` | no |
| filter_tags_custom | Tags used for custom filtering when filter_tags_use_defaults is false | string | `*` | no | | filter_tags_custom | Tags used for custom filtering when filter_tags_use_defaults is false | string | `*` | no |
| filter_tags_use_defaults | Use default filter tags convention | string | `true` | no | | filter_tags_use_defaults | Use default filter tags convention | string | `true` | no |
| message | Message sent when a Redis monitor is triggered | string | - | yes | | message | Message sent when a Redis monitor is triggered | string | - | yes |
| percent_processor_time_message | Custom message for Redis processor monitor | string | `` | no |
| percent_processor_time_silenced | Groups to mute for Redis processor monitor | map | `<map>` | no | | percent_processor_time_silenced | Groups to mute for Redis processor monitor | map | `<map>` | no |
| percent_processor_time_threshold_critical | Processor time percent (critical threshold) | string | `80` | no | | percent_processor_time_threshold_critical | Processor time percent (critical threshold) | string | `80` | no |
| percent_processor_time_threshold_warning | Processor time percent (warning threshold) | string | `60` | no | | percent_processor_time_threshold_warning | Processor time percent (warning threshold) | string | `60` | no |
| server_load_rate_message | Custom message for Redis server load monitor | string | `` | no |
| server_load_rate_silenced | Groups to mute for Redis server load monitor | map | `<map>` | no | | server_load_rate_silenced | Groups to mute for Redis server load monitor | map | `<map>` | no |
| server_load_rate_threshold_critical | Server CPU load rate (critical threshold) | string | `90` | no | | server_load_rate_threshold_critical | Server CPU load rate (critical threshold) | string | `90` | no |
| server_load_rate_threshold_warning | Server CPU load rate (warning threshold) | string | `70` | no | | server_load_rate_threshold_warning | Server CPU load rate (warning threshold) | string | `70` | no |
| status_message | Custom message for Redis status monitor | string | `` | no |
| status_silenced | Groups to mute for Redis status monitor | map | `<map>` | no |
Related documentation Related documentation
--------------------- ---------------------

View File

@ -24,19 +24,31 @@ variable "filter_tags_custom" {
default = "*" default = "*"
} }
# Azure Redis specific # Azure Redis specific variables
variable "status_silenced" { variable "status_silenced" {
description = "Groups to mute for Redis status monitor" description = "Groups to mute for Redis status monitor"
type = "map" type = "map"
default = {} default = {}
} }
variable "status_message" {
description = "Custom message for Redis status monitor"
type = "string"
default = ""
}
variable "evictedkeys_limit_silenced" { variable "evictedkeys_limit_silenced" {
description = "Groups to mute for Redis evicted keys monitor" description = "Groups to mute for Redis evicted keys monitor"
type = "map" type = "map"
default = {} default = {}
} }
variable "evictedkeys_limit_message" {
description = "Custom message for Redis evicted keys monitor"
type = "string"
default = ""
}
variable "evictedkeys_limit_threshold_warning" { variable "evictedkeys_limit_threshold_warning" {
description = "Evicted keys limit (warning threshold)" description = "Evicted keys limit (warning threshold)"
default = 0 default = 0
@ -53,6 +65,12 @@ variable "percent_processor_time_silenced" {
default = {} default = {}
} }
variable "percent_processor_time_message" {
description = "Custom message for Redis processor monitor"
type = "string"
default = ""
}
variable "percent_processor_time_threshold_critical" { variable "percent_processor_time_threshold_critical" {
description = "Processor time percent (critical threshold)" description = "Processor time percent (critical threshold)"
default = 80 default = 80
@ -69,6 +87,12 @@ variable "server_load_rate_silenced" {
default = {} default = {}
} }
variable "server_load_rate_message" {
description = "Custom message for Redis server load monitor"
type = "string"
default = ""
}
variable "server_load_rate_threshold_critical" { variable "server_load_rate_threshold_critical" {
description = "Server CPU load rate (critical threshold)" description = "Server CPU load rate (critical threshold)"
default = 90 default = 90

View File

@ -8,7 +8,7 @@ data "template_file" "filter" {
resource "datadog_monitor" "status" { resource "datadog_monitor" "status" {
name = "[${var.environment}] Redis {{name}} is down" name = "[${var.environment}] Redis {{name}} is down"
message = "${var.message}" message = "${coalesce(var.status_message, var.message)}"
query = <<EOF query = <<EOF
avg(last_5m):avg:azure.cache_redis.status{${data.template_file.filter.rendered}} by {resource_group,region,name} != 1 avg(last_5m):avg:azure.cache_redis.status{${data.template_file.filter.rendered}} by {resource_group,region,name} != 1
@ -34,7 +34,7 @@ EOF
resource "datadog_monitor" "evictedkeys" { resource "datadog_monitor" "evictedkeys" {
name = "[${var.environment}] Redis too many evictedkeys {{comparator}} {{#is_alert}}{{threshold}}{{/is_alert}}{{#is_warning}}{{warn_threshold}}{{/is_warning}} ({{value}})" name = "[${var.environment}] Redis too many evictedkeys {{comparator}} {{#is_alert}}{{threshold}}{{/is_alert}}{{#is_warning}}{{warn_threshold}}{{/is_warning}} ({{value}})"
message = "${var.message}" message = "${coalesce(var.evictedkeys_limit_message, var.message)}"
query = <<EOF query = <<EOF
avg(last_5m): ( avg(last_5m): (
@ -67,7 +67,7 @@ EOF
resource "datadog_monitor" "percent_processor_time" { resource "datadog_monitor" "percent_processor_time" {
name = "[${var.environment}] Redis processor time too high {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)" name = "[${var.environment}] Redis processor time too high {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)"
message = "${var.message}" message = "${coalesce(var.percent_processor_time_message, var.message)}"
query = <<EOF query = <<EOF
avg(last_5m): ( avg(last_5m): (
@ -100,7 +100,7 @@ EOF
resource "datadog_monitor" "server_load" { resource "datadog_monitor" "server_load" {
name = "[${var.environment}] Redis server load too high {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)" name = "[${var.environment}] Redis server load too high {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)"
message = "${var.message}" message = "${coalesce(var.server_load_rate_message, var.message)}"
query = <<EOF query = <<EOF
avg(last_5m): ( avg(last_5m): (

View File

@ -27,15 +27,19 @@ Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|:----:|:-----:|:-----:| |------|-------------|:----:|:-----:|:-----:|
| cpu_message | Custom message for SQL CPU monitor | string | `` | no |
| cpu_silenced | Groups to mute for SQL CPU monitor | map | `<map>` | no | | cpu_silenced | Groups to mute for SQL CPU monitor | map | `<map>` | no |
| cpu_threshold_critical | CPU usage in percent (critical threshold) | string | `90` | no | | cpu_threshold_critical | CPU usage in percent (critical threshold) | string | `90` | no |
| cpu_threshold_warning | CPU usage in percent (warning threshold) | string | `80` | no | | cpu_threshold_warning | CPU usage in percent (warning threshold) | string | `80` | no |
| deadlock_message | Custom message for SQL Deadlock monitor | string | `` | no |
| deadlock_silenced | Groups to mute for SQL Deadlock monitor | map | `<map>` | no | | deadlock_silenced | Groups to mute for SQL Deadlock monitor | map | `<map>` | no |
| deadlock_threshold_critical | Amount of Deadlocks (critical threshold) | string | `1` | no | | deadlock_threshold_critical | Amount of Deadlocks (critical threshold) | string | `1` | no |
| delay | Delay in seconds for the metric evaluation | string | `600` | no | | delay | Delay in seconds for the metric evaluation | string | `600` | no |
| diskspace_message | Custom message for SQL disk space monitor | string | `` | no |
| diskspace_silenced | Groups to mute for SQL disk space monitor | map | `<map>` | no | | diskspace_silenced | Groups to mute for SQL disk space monitor | map | `<map>` | no |
| diskspace_threshold_critical | Disk space used in percent (critical threshold) | string | `90` | no | | diskspace_threshold_critical | Disk space used in percent (critical threshold) | string | `90` | no |
| diskspace_threshold_warning | Disk space used in percent (warning threshold) | string | `80` | no | | diskspace_threshold_warning | Disk space used in percent (warning threshold) | string | `80` | no |
| dtu_message | Custom message for SQL DTU monitor | string | `` | no |
| dtu_silenced | Groups to mute for SQL DTU monitor | map | `<map>` | no | | dtu_silenced | Groups to mute for SQL DTU monitor | map | `<map>` | no |
| dtu_threshold_critical | Amount of DTU used (critical threshold) | string | `90` | no | | dtu_threshold_critical | Amount of DTU used (critical threshold) | string | `90` | no |
| dtu_threshold_warning | Amount of DTU used (warning threshold) | string | `85` | no | | dtu_threshold_warning | Amount of DTU used (warning threshold) | string | `85` | no |

View File

@ -24,13 +24,19 @@ variable "filter_tags_custom" {
default = "*" default = "*"
} }
# Azure SQL Database specific # Azure SQL Database specific variables
variable "cpu_silenced" { variable "cpu_silenced" {
description = "Groups to mute for SQL CPU monitor" description = "Groups to mute for SQL CPU monitor"
type = "map" type = "map"
default = {} default = {}
} }
variable "cpu_message" {
description = "Custom message for SQL CPU monitor"
type = "string"
default = ""
}
variable "cpu_threshold_warning" { variable "cpu_threshold_warning" {
description = "CPU usage in percent (warning threshold)" description = "CPU usage in percent (warning threshold)"
default = "80" default = "80"
@ -47,6 +53,12 @@ variable "diskspace_silenced" {
default = {} default = {}
} }
variable "diskspace_message" {
description = "Custom message for SQL disk space monitor"
type = "string"
default = ""
}
variable "diskspace_threshold_warning" { variable "diskspace_threshold_warning" {
description = "Disk space used in percent (warning threshold)" description = "Disk space used in percent (warning threshold)"
default = "80" default = "80"
@ -63,6 +75,12 @@ variable "dtu_silenced" {
default = {} default = {}
} }
variable "dtu_message" {
description = "Custom message for SQL DTU monitor"
type = "string"
default = ""
}
variable "dtu_threshold_warning" { variable "dtu_threshold_warning" {
description = "Amount of DTU used (warning threshold)" description = "Amount of DTU used (warning threshold)"
default = "85" default = "85"
@ -79,6 +97,12 @@ variable "deadlock_silenced" {
default = {} default = {}
} }
variable "deadlock_message" {
description = "Custom message for SQL Deadlock monitor"
type = "string"
default = ""
}
variable "deadlock_threshold_critical" { variable "deadlock_threshold_critical" {
description = "Amount of Deadlocks (critical threshold)" description = "Amount of Deadlocks (critical threshold)"
default = "1" default = "1"

View File

@ -8,7 +8,7 @@ data "template_file" "filter" {
resource "datadog_monitor" "sql-database_cpu_90_15min" { resource "datadog_monitor" "sql-database_cpu_90_15min" {
name = "[${var.environment}] SQL Database CPU too high {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)" name = "[${var.environment}] SQL Database CPU too high {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)"
message = "${var.message}" message = "${coalesce(var.cpu_message, var.message)}"
query = <<EOF query = <<EOF
avg(last_15m): ( avg(last_15m): (
@ -40,7 +40,7 @@ resource "datadog_monitor" "sql-database_cpu_90_15min" {
resource "datadog_monitor" "sql-database_free_space_low" { resource "datadog_monitor" "sql-database_free_space_low" {
name = "[${var.environment}] SQL Database low free space {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)" name = "[${var.environment}] SQL Database low free space {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)"
message = "${var.message}" message = "${coalesce(var.diskspace_message, var.message)}"
type = "metric alert" type = "metric alert"
@ -73,7 +73,7 @@ resource "datadog_monitor" "sql-database_free_space_low" {
resource "datadog_monitor" "sql-database_dtu_consumption_high" { resource "datadog_monitor" "sql-database_dtu_consumption_high" {
name = "[${var.environment}] SQL Database DTU Consumption too high {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)" name = "[${var.environment}] SQL Database DTU Consumption too high {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)"
message = "${var.message}" message = "${coalesce(var.dtu_message, var.message)}"
type = "metric alert" type = "metric alert"
@ -106,7 +106,7 @@ resource "datadog_monitor" "sql-database_dtu_consumption_high" {
resource "datadog_monitor" "sql-database_deadlocks_count" { resource "datadog_monitor" "sql-database_deadlocks_count" {
name = "[${var.environment}] SQL Database Deadlocks too high {{comparator}} {{#is_alert}}{{threshold}}{{/is_alert}}{{#is_warning}}{{warn_threshold}}{{/is_warning}} ({{value}})" name = "[${var.environment}] SQL Database Deadlocks too high {{comparator}} {{#is_alert}}{{threshold}}{{/is_alert}}{{#is_warning}}{{warn_threshold}}{{/is_warning}} ({{value}})"
message = "${var.message}" message = "${coalesce(var.deadlock_message, var.message)}"
type = "metric alert" type = "metric alert"

View File

@ -32,12 +32,15 @@ Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|:----:|:-----:|:-----:| |------|-------------|:----:|:-----:|:-----:|
| authorization_error_requests_message | Custom message for Storage authorization errors monitor | string | `` | no |
| authorization_error_requests_silenced | Groups to mute for Storage authorization errors monitor | map | `<map>` | no | | authorization_error_requests_silenced | Groups to mute for Storage authorization errors monitor | map | `<map>` | no |
| authorization_error_requests_threshold_critical | Maximum acceptable percent of authorization error requests for a storage | string | `90` | no | | authorization_error_requests_threshold_critical | Maximum acceptable percent of authorization error requests for a storage | string | `90` | no |
| authorization_error_requests_threshold_warning | Warning regarding acceptable percent of authorization error requests for a storage | string | `50` | no | | authorization_error_requests_threshold_warning | Warning regarding acceptable percent of authorization error requests for a storage | string | `50` | no |
| availability_message | Custom message for Storage availability monitor | string | `` | no |
| availability_silenced | Groups to mute for Storage availability monitor | map | `<map>` | no | | availability_silenced | Groups to mute for Storage availability monitor | map | `<map>` | no |
| availability_threshold_critical | Minimum acceptable percent of availability for a storage | string | `50` | no | | availability_threshold_critical | Minimum acceptable percent of availability for a storage | string | `50` | no |
| availability_threshold_warning | Warning regarding acceptable percent of availability for a storage | string | `90` | no | | availability_threshold_warning | Warning regarding acceptable percent of availability for a storage | string | `90` | no |
| client_other_error_requests_message | Custom message for Storage other errors monitor | string | `` | no |
| client_other_error_requests_silenced | Groups to mute for Storage other errors monitor | map | `<map>` | no | | client_other_error_requests_silenced | Groups to mute for Storage other errors monitor | map | `<map>` | no |
| client_other_error_requests_threshold_critical | Maximum acceptable percent of client other error requests for a storage | string | `90` | no | | client_other_error_requests_threshold_critical | Maximum acceptable percent of client other error requests for a storage | string | `90` | no |
| client_other_error_requests_threshold_warning | Warning regarding acceptable percent of client other error requests for a storage | string | `50` | no | | client_other_error_requests_threshold_warning | Warning regarding acceptable percent of client other error requests for a storage | string | `50` | no |
@ -45,22 +48,28 @@ Inputs
| environment | Architecture environment | string | - | yes | | environment | Architecture environment | string | - | yes |
| filter_tags_custom | Tags used for custom filtering when filter_tags_use_defaults is false | string | `*` | no | | filter_tags_custom | Tags used for custom filtering when filter_tags_use_defaults is false | string | `*` | no |
| filter_tags_use_defaults | Use default filter tags convention | string | `true` | no | | filter_tags_use_defaults | Use default filter tags convention | string | `true` | no |
| latency_message | Custom message for Storage latency monitor | string | `` | no |
| latency_silenced | Groups to mute for Storage latency monitor | map | `<map>` | no | | latency_silenced | Groups to mute for Storage latency monitor | map | `<map>` | no |
| latency_threshold_critical | Maximum acceptable end to end latency (ms) for a storage | string | `2000` | no | | latency_threshold_critical | Maximum acceptable end to end latency (ms) for a storage | string | `2000` | no |
| latency_threshold_warning | Warning regarding acceptable end to end latency (ms) for a storage | string | `1000` | no | | latency_threshold_warning | Warning regarding acceptable end to end latency (ms) for a storage | string | `1000` | no |
| message | Message sent when a Redis monitor is triggered | string | - | yes | | message | Message sent when a Redis monitor is triggered | string | - | yes |
| network_error_requests_message | Custom message for Storage network errors monitor | string | `` | no |
| network_error_requests_silenced | Groups to mute for Storage network errors monitor | map | `<map>` | no | | network_error_requests_silenced | Groups to mute for Storage network errors monitor | map | `<map>` | no |
| network_error_requests_threshold_critical | Maximum acceptable percent of network error requests for a storage | string | `90` | no | | network_error_requests_threshold_critical | Maximum acceptable percent of network error requests for a storage | string | `90` | no |
| network_error_requests_threshold_warning | Warning regarding acceptable percent of network error requests for a storage | string | `50` | no | | network_error_requests_threshold_warning | Warning regarding acceptable percent of network error requests for a storage | string | `50` | no |
| server_other_error_requests_message | Custom message for Storage server other errors monitor | string | `` | no |
| server_other_error_requests_silenced | Groups to mute for Storage server other errors monitor | map | `<map>` | no | | server_other_error_requests_silenced | Groups to mute for Storage server other errors monitor | map | `<map>` | no |
| server_other_error_requests_threshold_critical | Maximum acceptable percent of server other error requests for a storage | string | `90` | no | | server_other_error_requests_threshold_critical | Maximum acceptable percent of server other error requests for a storage | string | `90` | no |
| server_other_error_requests_threshold_warning | Warning regarding acceptable percent of server other error requests for a storage | string | `50` | no | | server_other_error_requests_threshold_warning | Warning regarding acceptable percent of server other error requests for a storage | string | `50` | no |
| successful_requests_message | Custom message for Storage sucessful requests monitor | string | `` | no |
| successful_requests_silenced | Groups to mute for Storage sucessful requests monitor | map | `<map>` | no | | successful_requests_silenced | Groups to mute for Storage sucessful requests monitor | map | `<map>` | no |
| successful_requests_threshold_critical | Minimum acceptable percent of successful requests for a storage | string | `10` | no | | successful_requests_threshold_critical | Minimum acceptable percent of successful requests for a storage | string | `10` | no |
| successful_requests_threshold_warning | Warning regarding acceptable percent of successful requests for a storage | string | `30` | no | | successful_requests_threshold_warning | Warning regarding acceptable percent of successful requests for a storage | string | `30` | no |
| throttling_error_requests_message | Custom message for Storage throttling error monitor | string | `` | no |
| throttling_error_requests_silenced | Groups to mute for Storage throttling error monitor | map | `<map>` | no | | throttling_error_requests_silenced | Groups to mute for Storage throttling error monitor | map | `<map>` | no |
| throttling_error_requests_threshold_critical | Maximum acceptable percent of throttling error requests for a storage | string | `90` | no | | throttling_error_requests_threshold_critical | Maximum acceptable percent of throttling error requests for a storage | string | `90` | no |
| throttling_error_requests_threshold_warning | Warning regarding acceptable percent of throttling error requests for a storage | string | `50` | no | | throttling_error_requests_threshold_warning | Warning regarding acceptable percent of throttling error requests for a storage | string | `50` | no |
| timeout_error_requests_message | Custom message for Storage timeout monitor | string | `` | no |
| timeout_error_requests_silenced | Groups to mute for Storage timeout monitor | map | `<map>` | no | | timeout_error_requests_silenced | Groups to mute for Storage timeout monitor | map | `<map>` | no |
| timeout_error_requests_threshold_critical | Maximum acceptable percent of timeout error requests for a storage | string | `90` | no | | timeout_error_requests_threshold_critical | Maximum acceptable percent of timeout error requests for a storage | string | `90` | no |
| timeout_error_requests_threshold_warning | Warning regarding acceptable percent of timeout error requests for a storage | string | `50` | no | | timeout_error_requests_threshold_warning | Warning regarding acceptable percent of timeout error requests for a storage | string | `50` | no |

View File

@ -24,13 +24,19 @@ variable "filter_tags_custom" {
default = "*" default = "*"
} }
# Azure Storage specific # Azure Storage specific variables
variable "availability_silenced" { variable "availability_silenced" {
description = "Groups to mute for Storage availability monitor" description = "Groups to mute for Storage availability monitor"
type = "map" type = "map"
default = {} default = {}
} }
variable "availability_message" {
description = "Custom message for Storage availability monitor"
type = "string"
default = ""
}
variable "availability_threshold_critical" { variable "availability_threshold_critical" {
description = "Minimum acceptable percent of availability for a storage" description = "Minimum acceptable percent of availability for a storage"
default = 50 default = 50
@ -47,6 +53,12 @@ variable "successful_requests_silenced" {
default = {} default = {}
} }
variable "successful_requests_message" {
description = "Custom message for Storage sucessful requests monitor"
type = "string"
default = ""
}
variable "successful_requests_threshold_critical" { variable "successful_requests_threshold_critical" {
description = "Minimum acceptable percent of successful requests for a storage" description = "Minimum acceptable percent of successful requests for a storage"
default = 10 default = 10
@ -63,6 +75,12 @@ variable "latency_silenced" {
default = {} default = {}
} }
variable "latency_message" {
description = "Custom message for Storage latency monitor"
type = "string"
default = ""
}
variable "latency_threshold_critical" { variable "latency_threshold_critical" {
description = "Maximum acceptable end to end latency (ms) for a storage" description = "Maximum acceptable end to end latency (ms) for a storage"
default = 2000 default = 2000
@ -79,6 +97,12 @@ variable "timeout_error_requests_silenced" {
default = {} default = {}
} }
variable "timeout_error_requests_message" {
description = "Custom message for Storage timeout monitor"
type = "string"
default = ""
}
variable "timeout_error_requests_threshold_critical" { variable "timeout_error_requests_threshold_critical" {
description = "Maximum acceptable percent of timeout error requests for a storage" description = "Maximum acceptable percent of timeout error requests for a storage"
default = 90 default = 90
@ -95,6 +119,12 @@ variable "network_error_requests_silenced" {
default = {} default = {}
} }
variable "network_error_requests_message" {
description = "Custom message for Storage network errors monitor"
type = "string"
default = ""
}
variable "network_error_requests_threshold_critical" { variable "network_error_requests_threshold_critical" {
description = "Maximum acceptable percent of network error requests for a storage" description = "Maximum acceptable percent of network error requests for a storage"
default = 90 default = 90
@ -111,6 +141,12 @@ variable "throttling_error_requests_silenced" {
default = {} default = {}
} }
variable "throttling_error_requests_message" {
description = "Custom message for Storage throttling error monitor"
type = "string"
default = ""
}
variable "throttling_error_requests_threshold_critical" { variable "throttling_error_requests_threshold_critical" {
description = "Maximum acceptable percent of throttling error requests for a storage" description = "Maximum acceptable percent of throttling error requests for a storage"
default = 90 default = 90
@ -127,6 +163,12 @@ variable "server_other_error_requests_silenced" {
default = {} default = {}
} }
variable "server_other_error_requests_message" {
description = "Custom message for Storage server other errors monitor"
type = "string"
default = ""
}
variable "server_other_error_requests_threshold_critical" { variable "server_other_error_requests_threshold_critical" {
description = "Maximum acceptable percent of server other error requests for a storage" description = "Maximum acceptable percent of server other error requests for a storage"
default = 90 default = 90
@ -143,6 +185,12 @@ variable "client_other_error_requests_silenced" {
default = {} default = {}
} }
variable "client_other_error_requests_message" {
description = "Custom message for Storage other errors monitor"
type = "string"
default = ""
}
variable "client_other_error_requests_threshold_critical" { variable "client_other_error_requests_threshold_critical" {
description = "Maximum acceptable percent of client other error requests for a storage" description = "Maximum acceptable percent of client other error requests for a storage"
default = 90 default = 90
@ -159,6 +207,12 @@ variable "authorization_error_requests_silenced" {
default = {} default = {}
} }
variable "authorization_error_requests_message" {
description = "Custom message for Storage authorization errors monitor"
type = "string"
default = ""
}
variable "authorization_error_requests_threshold_critical" { variable "authorization_error_requests_threshold_critical" {
description = "Maximum acceptable percent of authorization error requests for a storage" description = "Maximum acceptable percent of authorization error requests for a storage"
default = 90 default = 90

View File

@ -8,12 +8,12 @@ data "template_file" "filter" {
resource "datadog_monitor" "availability" { resource "datadog_monitor" "availability" {
name = "[${var.environment}] Azure Storage is down" name = "[${var.environment}] Azure Storage is down"
message = "${var.message}" message = "${coalesce(var.availability_message, var.message)}"
query = <<EOF query = <<EOF
avg(last_5m): ( avg(last_5m): (default(
avg:azure.storage.availability{${data.template_file.filter.rendered},transaction_type:all} by {resource_group,storage_type,name} avg:azure.storage.availability{${data.template_file.filter.rendered},transaction_type:all} by {resource_group,storage_type,name},
) < ${var.availability_threshold_critical} 100)) < ${var.availability_threshold_critical}
EOF EOF
thresholds { thresholds {
@ -26,7 +26,7 @@ EOF
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
timeout_h = 1 timeout_h = 0
include_tags = true include_tags = true
locked = false locked = false
require_full_window = false require_full_window = false
@ -40,12 +40,12 @@ EOF
resource "datadog_monitor" "successful_requests" { resource "datadog_monitor" "successful_requests" {
name = "[${var.environment}] Azure Storage too few successful requests {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)" name = "[${var.environment}] Azure Storage too few successful requests {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)"
message = "${var.message}" message = "${coalesce(var.successful_requests_message, var.message)}"
query = <<EOF query = <<EOF
avg(last_5m): ( avg(last_5m): (default(
avg:azure.storage.percent_success{${data.template_file.filter.rendered},transaction_type:all} by {resource_group,storage_type,name} avg:azure.storage.percent_success{${data.template_file.filter.rendered},transaction_type:all} by {resource_group,storage_type,name},
) < ${var.successful_requests_threshold_critical} 100)) < ${var.successful_requests_threshold_critical}
EOF EOF
thresholds { thresholds {
@ -58,7 +58,7 @@ EOF
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
timeout_h = 1 timeout_h = 0
include_tags = true include_tags = true
locked = false locked = false
require_full_window = false require_full_window = false
@ -72,12 +72,12 @@ EOF
resource "datadog_monitor" "latency" { resource "datadog_monitor" "latency" {
name = "[${var.environment}] Azure Storage too high end to end latency {{comparator}} {{#is_alert}}{{threshold}}ms{{/is_alert}}{{#is_warning}}{{warn_threshold}}ms{{/is_warning}} ({{value}}ms)" name = "[${var.environment}] Azure Storage too high end to end latency {{comparator}} {{#is_alert}}{{threshold}}ms{{/is_alert}}{{#is_warning}}{{warn_threshold}}ms{{/is_warning}} ({{value}}ms)"
message = "${var.message}" message = "${coalesce(var.latency_message, var.message)}"
query = <<EOF query = <<EOF
max(last_5m): ( min(last_5m): (default(
avg:azure.storage.average_e2_e_latency{${data.template_file.filter.rendered},transaction_type:all} by {resource_group,storage_type,name} avg:azure.storage.average_e2_e_latency{${data.template_file.filter.rendered},transaction_type:all} by {resource_group,storage_type,name},
) > ${var.latency_threshold_critical} 0)) > ${var.latency_threshold_critical}
EOF EOF
thresholds { thresholds {
@ -90,7 +90,7 @@ EOF
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
timeout_h = 1 timeout_h = 0
include_tags = true include_tags = true
locked = false locked = false
require_full_window = false require_full_window = false
@ -104,12 +104,12 @@ EOF
resource "datadog_monitor" "timeout_error_requests" { resource "datadog_monitor" "timeout_error_requests" {
name = "[${var.environment}] Azure Storage too many timeout errors {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)" name = "[${var.environment}] Azure Storage too many timeout errors {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)"
message = "${var.message}" message = "${coalesce(var.timeout_error_requests_message, var.message)}"
query = <<EOF query = <<EOF
avg(last_5m): ( avg(last_5m): (default(
avg:azure.storage.percent_timeout_error{${data.template_file.filter.rendered},transaction_type:all} by {resource_group,storage_type,name} avg:azure.storage.percent_timeout_error{${data.template_file.filter.rendered},transaction_type:all} by {resource_group,storage_type,name},
) > ${var.timeout_error_requests_threshold_critical} 0)) > ${var.timeout_error_requests_threshold_critical}
EOF EOF
thresholds { thresholds {
@ -122,7 +122,7 @@ EOF
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
timeout_h = 1 timeout_h = 0
include_tags = true include_tags = true
locked = false locked = false
require_full_window = false require_full_window = false
@ -136,12 +136,12 @@ EOF
resource "datadog_monitor" "network_error_requests" { resource "datadog_monitor" "network_error_requests" {
name = "[${var.environment}] Azure Storage too many network errors {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)" name = "[${var.environment}] Azure Storage too many network errors {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)"
message = "${var.message}" message = "${coalesce(var.network_error_requests_message, var.message)}"
query = <<EOF query = <<EOF
avg(last_5m): ( avg(last_5m): (default(
avg:azure.storage.percent_network_error{${data.template_file.filter.rendered},transaction_type:all} by {resource_group,storage_type,name} avg:azure.storage.percent_network_error{${data.template_file.filter.rendered},transaction_type:all} by {resource_group,storage_type,name},
) > ${var.network_error_requests_threshold_critical} 0)) > ${var.network_error_requests_threshold_critical}
EOF EOF
thresholds { thresholds {
@ -154,7 +154,7 @@ EOF
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
timeout_h = 1 timeout_h = 0
include_tags = true include_tags = true
locked = false locked = false
require_full_window = false require_full_window = false
@ -168,12 +168,12 @@ EOF
resource "datadog_monitor" "throttling_error_requests" { resource "datadog_monitor" "throttling_error_requests" {
name = "[${var.environment}] Azure Storage too many throttling errors {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)" name = "[${var.environment}] Azure Storage too many throttling errors {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)"
message = "${var.message}" message = "${coalesce(var.throttling_error_requests_message, var.message)}"
query = <<EOF query = <<EOF
avg(last_5m): ( avg(last_5m): (default(
avg:azure.storage.percent_throttling_error{${data.template_file.filter.rendered},transaction_type:all} by {resource_group,storage_type,name} avg:azure.storage.percent_throttling_error{${data.template_file.filter.rendered},transaction_type:all} by {resource_group,storage_type,name},
) > ${var.throttling_error_requests_threshold_critical} 0)) > ${var.throttling_error_requests_threshold_critical}
EOF EOF
thresholds { thresholds {
@ -186,7 +186,7 @@ EOF
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
timeout_h = 1 timeout_h = 0
include_tags = true include_tags = true
locked = false locked = false
require_full_window = false require_full_window = false
@ -200,12 +200,12 @@ EOF
resource "datadog_monitor" "server_other_error_requests" { resource "datadog_monitor" "server_other_error_requests" {
name = "[${var.environment}] Azure Storage too many server_other errors {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)" name = "[${var.environment}] Azure Storage too many server_other errors {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)"
message = "${var.message}" message = "${coalesce(var.server_other_error_requests_message, var.message)}"
query = <<EOF query = <<EOF
avg(last_5m): ( avg(last_5m): (default(
avg:azure.storage.percent_server_other_error{${data.template_file.filter.rendered},transaction_type:all} by {resource_group,storage_type,name} avg:azure.storage.percent_server_other_error{${data.template_file.filter.rendered},transaction_type:all} by {resource_group,storage_type,name},
) > ${var.server_other_error_requests_threshold_critical} 0)) > ${var.server_other_error_requests_threshold_critical}
EOF EOF
thresholds { thresholds {
@ -218,7 +218,7 @@ EOF
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
timeout_h = 1 timeout_h = 0
include_tags = true include_tags = true
locked = false locked = false
require_full_window = false require_full_window = false
@ -232,12 +232,12 @@ EOF
resource "datadog_monitor" "client_other_error_requests" { resource "datadog_monitor" "client_other_error_requests" {
name = "[${var.environment}] Azure Storage too many client_other errors {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)" name = "[${var.environment}] Azure Storage too many client_other errors {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)"
message = "${var.message}" message = "${coalesce(var.client_other_error_requests_message, var.message)}"
query = <<EOF query = <<EOF
avg(last_5m): ( avg(last_5m): (default(
avg:azure.storage.percent_client_other_error{${data.template_file.filter.rendered},transaction_type:all} by {resource_group,storage_type,name} avg:azure.storage.percent_client_other_error{${data.template_file.filter.rendered},transaction_type:all} by {resource_group,storage_type,name},
) > ${var.client_other_error_requests_threshold_critical} 0)) > ${var.client_other_error_requests_threshold_critical}
EOF EOF
thresholds { thresholds {
@ -250,7 +250,7 @@ EOF
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
timeout_h = 1 timeout_h = 0
include_tags = true include_tags = true
locked = false locked = false
require_full_window = false require_full_window = false
@ -264,12 +264,12 @@ EOF
resource "datadog_monitor" "authorization_error_requests" { resource "datadog_monitor" "authorization_error_requests" {
name = "[${var.environment}] Azure Storage too many authorization errors {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)" name = "[${var.environment}] Azure Storage too many authorization errors {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)"
message = "${var.message}" message = "${coalesce(var.authorization_error_requests_message, var.message)}"
query = <<EOF query = <<EOF
avg(last_5m): ( avg(last_5m): (default(
avg:azure.storage.percent_authorization_error{${data.template_file.filter.rendered},transaction_type:all} by {resource_group,storage_type,name} avg:azure.storage.percent_authorization_error{${data.template_file.filter.rendered},transaction_type:all} by {resource_group,storage_type,name},
) > ${var.authorization_error_requests_threshold_critical} 0)) > ${var.authorization_error_requests_threshold_critical}
EOF EOF
thresholds { thresholds {
@ -282,7 +282,7 @@ EOF
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
timeout_h = 1 timeout_h = 0
include_tags = true include_tags = true
locked = false locked = false
require_full_window = false require_full_window = false

View File

@ -19,21 +19,26 @@ Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|:----:|:-----:|:-----:| |------|-------------|:----:|:-----:|:-----:|
| conversion_errors_message | Custom message for Stream Analytics conversion errors monitor | string | `` | no |
| conversion_errors_silenced | Groups to mute for Stream Analytics conversion errors monitor | map | `<map>` | no | | conversion_errors_silenced | Groups to mute for Stream Analytics conversion errors monitor | map | `<map>` | no |
| conversion_errors_threshold_critical | Conversion errors limit (critical threshold) | string | `10` | no | | conversion_errors_threshold_critical | Conversion errors limit (critical threshold) | string | `10` | no |
| conversion_errors_threshold_warning | Conversion errors limit (warning threshold) | string | `0` | no | | conversion_errors_threshold_warning | Conversion errors limit (warning threshold) | string | `0` | no |
| delay | Delay in seconds for the metric evaluation | string | `600` | no | | delay | Delay in seconds for the metric evaluation | string | `600` | no |
| environment | Architecture environment | string | - | yes | | environment | Architecture environment | string | - | yes |
| failed_function_requests_message | Custom message for Stream Analytics failed requests monitor | string | `` | no |
| failed_function_requests_silenced | Groups to mute for Stream Analytics failed requests monitor | map | `<map>` | no | | failed_function_requests_silenced | Groups to mute for Stream Analytics failed requests monitor | map | `<map>` | no |
| failed_function_requests_threshold_critical | Failed Function Request rate limit (critical threshold) | string | `10` | no | | failed_function_requests_threshold_critical | Failed Function Request rate limit (critical threshold) | string | `10` | no |
| failed_function_requests_threshold_warning | Failed Function Request rate limit (warning threshold) | string | `0` | no | | failed_function_requests_threshold_warning | Failed Function Request rate limit (warning threshold) | string | `0` | no |
| filter_tags_custom | Tags used for custom filtering when filter_tags_use_defaults is false | string | `*` | no | | filter_tags_custom | Tags used for custom filtering when filter_tags_use_defaults is false | string | `*` | no |
| filter_tags_use_defaults | Use default filter tags convention | string | `true` | no | | filter_tags_use_defaults | Use default filter tags convention | string | `true` | no |
| message | Message sent when a Redis monitor is triggered | string | - | yes | | message | Message sent when a Redis monitor is triggered | string | - | yes |
| runtime_errors_message | Custom message for Stream Analytics runtime errors monitor | string | `` | no |
| runtime_errors_silenced | Groups to mute for Stream Analytics runtime errors monitor | map | `<map>` | no | | runtime_errors_silenced | Groups to mute for Stream Analytics runtime errors monitor | map | `<map>` | no |
| runtime_errors_threshold_critical | Runtime errors limit (critical threshold) | string | `10` | no | | runtime_errors_threshold_critical | Runtime errors limit (critical threshold) | string | `10` | no |
| runtime_errors_threshold_warning | Runtime errors limit (warning threshold) | string | `0` | no | | runtime_errors_threshold_warning | Runtime errors limit (warning threshold) | string | `0` | no |
| status_message | Custom message for Stream Analytics status monitor | string | `` | no |
| status_silenced | Groups to mute for Stream Analytics status monitor | map | `<map>` | no | | status_silenced | Groups to mute for Stream Analytics status monitor | map | `<map>` | no |
| su_utilization_message | Custom message for Stream Analytics utilization monitor | string | `` | no |
| su_utilization_silenced | Groups to mute for Stream Analytics utilization monitor | map | `<map>` | no | | su_utilization_silenced | Groups to mute for Stream Analytics utilization monitor | map | `<map>` | no |
| su_utilization_threshold_critical | Streaming Unit utilization rate limit (critical threshold) | string | `80` | no | | su_utilization_threshold_critical | Streaming Unit utilization rate limit (critical threshold) | string | `80` | no |
| su_utilization_threshold_warning | Streaming Unit utilization rate limit (warning threshold) | string | `60` | no | | su_utilization_threshold_warning | Streaming Unit utilization rate limit (warning threshold) | string | `60` | no |

View File

@ -24,19 +24,31 @@ variable "filter_tags_custom" {
default = "*" default = "*"
} }
# Azure Stream Analytics specific # Azure Stream Analytics specific variables
variable "status_silenced" { variable "status_silenced" {
description = "Groups to mute for Stream Analytics status monitor" description = "Groups to mute for Stream Analytics status monitor"
type = "map" type = "map"
default = {} default = {}
} }
variable "status_message" {
description = "Custom message for Stream Analytics status monitor"
type = "string"
default = ""
}
variable "su_utilization_silenced" { variable "su_utilization_silenced" {
description = "Groups to mute for Stream Analytics utilization monitor" description = "Groups to mute for Stream Analytics utilization monitor"
type = "map" type = "map"
default = {} default = {}
} }
variable "su_utilization_message" {
description = "Custom message for Stream Analytics utilization monitor"
type = "string"
default = ""
}
variable "su_utilization_threshold_warning" { variable "su_utilization_threshold_warning" {
description = "Streaming Unit utilization rate limit (warning threshold)" description = "Streaming Unit utilization rate limit (warning threshold)"
default = 60 default = 60
@ -53,6 +65,12 @@ variable "failed_function_requests_silenced" {
default = {} default = {}
} }
variable "failed_function_requests_message" {
description = "Custom message for Stream Analytics failed requests monitor"
type = "string"
default = ""
}
variable "failed_function_requests_threshold_warning" { variable "failed_function_requests_threshold_warning" {
description = "Failed Function Request rate limit (warning threshold)" description = "Failed Function Request rate limit (warning threshold)"
default = 0 default = 0
@ -69,6 +87,12 @@ variable "conversion_errors_silenced" {
default = {} default = {}
} }
variable "conversion_errors_message" {
description = "Custom message for Stream Analytics conversion errors monitor"
type = "string"
default = ""
}
variable "conversion_errors_threshold_warning" { variable "conversion_errors_threshold_warning" {
description = "Conversion errors limit (warning threshold)" description = "Conversion errors limit (warning threshold)"
default = 0 default = 0
@ -85,6 +109,12 @@ variable "runtime_errors_silenced" {
default = {} default = {}
} }
variable "runtime_errors_message" {
description = "Custom message for Stream Analytics runtime errors monitor"
type = "string"
default = ""
}
variable "runtime_errors_threshold_warning" { variable "runtime_errors_threshold_warning" {
description = "Runtime errors limit (warning threshold)" description = "Runtime errors limit (warning threshold)"
default = 0 default = 0

View File

@ -8,7 +8,7 @@ data "template_file" "filter" {
resource "datadog_monitor" "status" { resource "datadog_monitor" "status" {
name = "[${var.environment}] Stream Analytics is down" name = "[${var.environment}] Stream Analytics is down"
message = "${var.message}" message = "${coalesce(var.status_message, var.message)}"
query = <<EOF query = <<EOF
avg(last_5m):avg:azure.streamanalytics_streamingjobs.status{${data.template_file.filter.rendered}} by {resource_group,region,name} < 1 avg(last_5m):avg:azure.streamanalytics_streamingjobs.status{${data.template_file.filter.rendered}} by {resource_group,region,name} < 1
@ -34,7 +34,7 @@ resource "datadog_monitor" "status" {
resource "datadog_monitor" "su_utilization" { resource "datadog_monitor" "su_utilization" {
name = "[${var.environment}] Stream Analytics streaming units utilization too high {{comparator}} {{#is_alert}}{{threshold}}{{/is_alert}}{{#is_warning}}{{warn_threshold}}{{/is_warning}} ({{value}})" name = "[${var.environment}] Stream Analytics streaming units utilization too high {{comparator}} {{#is_alert}}{{threshold}}{{/is_alert}}{{#is_warning}}{{warn_threshold}}{{/is_warning}} ({{value}})"
message = "${var.message}" message = "${coalesce(var.su_utilization_message, var.message)}"
query = <<EOF query = <<EOF
avg(last_5m): ( avg(last_5m): (
@ -67,7 +67,7 @@ resource "datadog_monitor" "su_utilization" {
resource "datadog_monitor" "failed_function_requests" { resource "datadog_monitor" "failed_function_requests" {
name = "[${var.environment}] Stream Analytics too many failed requests {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)" name = "[${var.environment}] Stream Analytics too many failed requests {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)"
message = "${var.message}" message = "${coalesce(var.failed_function_requests_message, var.message)}"
query = <<EOF query = <<EOF
sum(last_5m): ( sum(last_5m): (
@ -101,7 +101,7 @@ resource "datadog_monitor" "failed_function_requests" {
resource "datadog_monitor" "conversion_errors" { resource "datadog_monitor" "conversion_errors" {
name = "[${var.environment}] Stream Analytics too many conversion errors {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)" name = "[${var.environment}] Stream Analytics too many conversion errors {{comparator}} {{#is_alert}}{{threshold}}%{{/is_alert}}{{#is_warning}}{{warn_threshold}}%{{/is_warning}} ({{value}}%)"
message = "${var.message}" message = "${coalesce(var.conversion_errors_message, var.message)}"
query = <<EOF query = <<EOF
avg(last_5m): ( avg(last_5m): (
@ -134,7 +134,7 @@ resource "datadog_monitor" "conversion_errors" {
resource "datadog_monitor" "runtime_errors" { resource "datadog_monitor" "runtime_errors" {
name = "[${var.environment}] Stream Analytics too many runtime errors {{comparator}} {{#is_alert}}{{threshold}}{{/is_alert}}{{#is_warning}}{{warn_threshold}}{{/is_warning}} ({{value}})" name = "[${var.environment}] Stream Analytics too many runtime errors {{comparator}} {{#is_alert}}{{threshold}}{{/is_alert}}{{#is_warning}}{{warn_threshold}}{{/is_warning}} ({{value}})"
message = "${var.message}" message = "${coalesce(var.runtime_errors_message, var.message)}"
query = <<EOF query = <<EOF
avg(last_5m): ( avg(last_5m): (