add minimal ci for github (#9)

This commit is contained in:
Quentin Manfroi 2021-06-25 18:04:04 +02:00 committed by GitHub
parent 89102fbb1f
commit 7432d41602
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
162 changed files with 4986 additions and 3463 deletions

59
.github/workflows/main.yml vendored Normal file
View File

@ -0,0 +1,59 @@
# This is a basic workflow to help you get started with Actions
name: Monitors
# Controls when the action will run. Triggers the workflow on push or pull request
# events but only for the master branch
on: [push, pull_request]
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
pre_job:
# continue-on-error: true # Uncomment once integration is finished
runs-on: ubuntu-latest
# Map a step output to a job output
outputs:
should_skip: ${{ steps.skip_check.outputs.should_skip }}
steps:
- id: skip_check
name: Skip Duplicate Actions
uses: fkirc/skip-duplicate-actions@v3.4.0
with:
concurrent_skipping: 'same_content'
do_not_skip: '["pull_request", "workflow_dispatch", "schedule"]'
paths: '["modules/**.tf", "modules/**/conf/detector-*.yaml", "scripts/**", "Makefile", ".github/workflows/main.yml"]'
check:
# The type of runner that the job will run on
needs: pre_job
if: ${{ needs.pre_job.outputs.should_skip != 'true' }}
#runs-on: hashicorp/terraform:full
runs-on: ubuntu-latest
container:
image: "claranet/terraform-ci:1.0.1"
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- name: Checkout
uses: actions/checkout@v2
with:
submodules: recursive
- name: Setup Terraform
uses: hashicorp/setup-terraform@v1
with:
terraform_version: 1.0.1
terraform_wrapper: false
- name: Run auto update
run: ./scripts/auto_update.sh
- name: Check git diff
run: ./scripts/auto_update.sh
- name: Run auto update
run: ./scripts/auto_update.sh
- name: Check for changes
run: git diff --exit-code

3
.gitignore vendored
View File

@ -1,4 +1,5 @@
.terraform .terraform
terraform.tfvars terraform.tfvars
/.env.sh /.env.sh
.idea .idea
**/.terraform.lock.hcl

View File

@ -1,44 +0,0 @@
image: alpine:latest
variables:
GIT_SUBMODULE_STRATEGY: recursive
stages:
- test
- build
- deploy
auto_update:
image: claranet/terraform-ci:0.13.1
stage: test
script:
- ./scripts/auto_update.sh
- git status
- git diff --exit-code
tags:
- ops4ops-claranet
deploy_terraform:
stage: deploy
script:
- apk update
- apk add --no-cache curl
- "curl -X POST -F token=${TEMPLATES_GITLAB_TOKEN} -F ref=${TEMPLATES_GITLAB_BRANCH:-master} -F \"variables[SCENARIO]=test\" ${CI_API_V4_URL}/projects/${TEMPLATES_GITLAB_ID}/trigger/pipeline"
only:
- master
tags:
- ops4ops-claranet
build_template:
stage: build
script:
- apk update
- apk add --no-cache curl
- "curl -X POST -F token=${TEMPLATES_GITLAB_TOKEN} -F ref=${TEMPLATES_GITLAB_BRANCH:-master} -F \"variables[SCENARIO]=build\" -F \"variables[TAG]=$CI_COMMIT_TAG\" ${CI_API_V4_URL}/projects/${TEMPLATES_GITLAB_ID}/trigger/pipeline"
only:
- tags
except:
- branches
tags:
- ops4ops-claranet

View File

@ -24,41 +24,60 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.memory_used](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.not_responding](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| environment | Architecture Environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture Environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `15` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| memory\_used\_enabled | Flag to enable Container Memory Usage monitor | `string` | `"false"` | no | | <a name="input_memory_used_enabled"></a> [memory\_used\_enabled](#input\_memory\_used\_enabled) | Flag to enable Container Memory Usage monitor | `string` | `"false"` | no |
| memory\_used\_extra\_tags | Extra tags for Container Memory Usage monitor | `list(string)` | `[]` | no | | <a name="input_memory_used_extra_tags"></a> [memory\_used\_extra\_tags](#input\_memory\_used\_extra\_tags) | Extra tags for Container Memory Usage monitor | `list(string)` | `[]` | no |
| memory\_used\_message | Custom message for the Container Memory Usage monitor | `string` | `""` | no | | <a name="input_memory_used_message"></a> [memory\_used\_message](#input\_memory\_used\_message) | Custom message for the Container Memory Usage monitor | `string` | `""` | no |
| memory\_used\_threshold\_critical | Container Memory Usage critical threshold | `string` | `90` | no | | <a name="input_memory_used_threshold_critical"></a> [memory\_used\_threshold\_critical](#input\_memory\_used\_threshold\_critical) | Container Memory Usage critical threshold | `string` | `90` | no |
| memory\_used\_threshold\_warning | Container Memory Usage warning threshold | `string` | `85` | no | | <a name="input_memory_used_threshold_warning"></a> [memory\_used\_threshold\_warning](#input\_memory\_used\_threshold\_warning) | Container Memory Usage warning threshold | `string` | `85` | no |
| memory\_used\_time\_aggregator | Time aggregator for the Container Memory Usage monitor | `string` | `"min"` | no | | <a name="input_memory_used_time_aggregator"></a> [memory\_used\_time\_aggregator](#input\_memory\_used\_time\_aggregator) | Time aggregator for the Container Memory Usage monitor | `string` | `"min"` | no |
| memory\_used\_timeframe | Timeframe for the Container Memory Usage monitor | `string` | `"last_5m"` | no | | <a name="input_memory_used_timeframe"></a> [memory\_used\_timeframe](#input\_memory\_used\_timeframe) | Timeframe for the Container Memory Usage monitor | `string` | `"last_5m"` | no |
| message | Message sent when an alert is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| not\_responding\_enabled | Flag to enable Docker does not respond monitor | `string` | `"true"` | no | | <a name="input_not_responding_enabled"></a> [not\_responding\_enabled](#input\_not\_responding\_enabled) | Flag to enable Docker does not respond monitor | `string` | `"true"` | no |
| not\_responding\_extra\_tags | Extra tags for Docker does not respond monitor | `list(string)` | `[]` | no | | <a name="input_not_responding_extra_tags"></a> [not\_responding\_extra\_tags](#input\_not\_responding\_extra\_tags) | Extra tags for Docker does not respond monitor | `list(string)` | `[]` | no |
| not\_responding\_message | Custom message for Docker does not respond monitor | `string` | `""` | no | | <a name="input_not_responding_message"></a> [not\_responding\_message](#input\_not\_responding\_message) | Custom message for Docker does not respond monitor | `string` | `""` | no |
| not\_responding\_no\_data\_timeframe | Docker does not respond monitor no data timeframe | `string` | `10` | no | | <a name="input_not_responding_no_data_timeframe"></a> [not\_responding\_no\_data\_timeframe](#input\_not\_responding\_no\_data\_timeframe) | Docker does not respond monitor no data timeframe | `string` | `10` | no |
| not\_responding\_threshold\_warning | Docker does not respond monitor (warning threshold) | `string` | `3` | no | | <a name="input_not_responding_threshold_warning"></a> [not\_responding\_threshold\_warning](#input\_not\_responding\_threshold\_warning) | Docker does not respond monitor (warning threshold) | `string` | `3` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| memory\_used\_id | id for monitor memory\_used | | <a name="output_memory_used_id"></a> [memory\_used\_id](#output\_memory\_used\_id) | id for monitor memory\_used |
| not\_responding\_id | id for monitor not\_responding | | <a name="output_not_responding_id"></a> [not\_responding\_id](#output\_not\_responding\_id) | id for monitor not\_responding |
## Related documentation ## Related documentation
* [Datadog Docker integration](https://docs.datadoghq.com/integrations/docker_daemon/) * [Datadog Docker integration](https://docs.datadoghq.com/integrations/docker_daemon/)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -23,33 +23,51 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.ark_schedules_monitor](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| ark\_schedules\_enabled | Flag to enable Ark schedules monitor | `string` | `"true"` | no | | <a name="input_ark_schedules_enabled"></a> [ark\_schedules\_enabled](#input\_ark\_schedules\_enabled) | Flag to enable Ark schedules monitor | `string` | `"true"` | no |
| ark\_schedules\_extra\_tags | Extra tags for Ark schedules monitor | `list(string)` | `[]` | no | | <a name="input_ark_schedules_extra_tags"></a> [ark\_schedules\_extra\_tags](#input\_ark\_schedules\_extra\_tags) | Extra tags for Ark schedules monitor | `list(string)` | `[]` | no |
| ark\_schedules\_monitor\_message | Custom message for Ark schedules monitor | `string` | `""` | no | | <a name="input_ark_schedules_monitor_message"></a> [ark\_schedules\_monitor\_message](#input\_ark\_schedules\_monitor\_message) | Custom message for Ark schedules monitor | `string` | `""` | no |
| ark\_schedules\_monitor\_no\_data\_timeframe | No data timeframe in minutes | `number` | `2880` | no | | <a name="input_ark_schedules_monitor_no_data_timeframe"></a> [ark\_schedules\_monitor\_no\_data\_timeframe](#input\_ark\_schedules\_monitor\_no\_data\_timeframe) | No data timeframe in minutes | `number` | `2880` | no |
| ark\_schedules\_monitor\_timeframe | Monitor timeframe for Ark schedules monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_1d"` | no | | <a name="input_ark_schedules_monitor_timeframe"></a> [ark\_schedules\_monitor\_timeframe](#input\_ark\_schedules\_monitor\_timeframe) | Monitor timeframe for Ark schedules monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_1d"` | no |
| environment | Architecture environment | `any` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture environment | `any` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `15` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| message | Message sent when a monitor is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| ark\_schedules\_monitor\_id | id for monitor ark\_schedules\_monitor | | <a name="output_ark_schedules_monitor_id"></a> [ark\_schedules\_monitor\_id](#output\_ark\_schedules\_monitor\_id) | id for monitor ark\_schedules\_monitor |
## Related documentation ## Related documentation
DataDog blog: https://www.datadoghq.com/blog/monitor-prometheus-metrics DataDog blog: https://www.datadoghq.com/blog/monitor-prometheus-metrics

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -23,33 +23,51 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.apiserver](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| apiserver\_enabled | Flag to enable API server monitor | `string` | `"true"` | no | | <a name="input_apiserver_enabled"></a> [apiserver\_enabled](#input\_apiserver\_enabled) | Flag to enable API server monitor | `string` | `"true"` | no |
| apiserver\_extra\_tags | Extra tags for API server monitor | `list(string)` | `[]` | no | | <a name="input_apiserver_extra_tags"></a> [apiserver\_extra\_tags](#input\_apiserver\_extra\_tags) | Extra tags for API server monitor | `list(string)` | `[]` | no |
| apiserver\_message | Custom message for API server monitor | `string` | `""` | no | | <a name="input_apiserver_message"></a> [apiserver\_message](#input\_apiserver\_message) | Custom message for API server monitor | `string` | `""` | no |
| apiserver\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | | <a name="input_apiserver_no_data_timeframe"></a> [apiserver\_no\_data\_timeframe](#input\_apiserver\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no |
| apiserver\_threshold\_warning | API server monitor (warning threshold) | `string` | `3` | no | | <a name="input_apiserver_threshold_warning"></a> [apiserver\_threshold\_warning](#input\_apiserver\_threshold\_warning) | API server monitor (warning threshold) | `string` | `3` | no |
| environment | Architecture environment | `any` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture environment | `any` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `15` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| message | Message sent when a monitor is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| apiserver\_id | id for monitor apiserver | | <a name="output_apiserver_id"></a> [apiserver\_id](#output\_apiserver\_id) | id for monitor apiserver |
## Related documentation ## Related documentation
* [Datadog metrics](https://docs.datadoghq.com/agent/kubernetes/metrics/) * [Datadog metrics](https://docs.datadoghq.com/agent/kubernetes/metrics/)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -24,44 +24,65 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../../common/filter-tags | n/a |
| <a name="module_filter-tags-4xx"></a> [filter-tags-4xx](#module\_filter-tags-4xx) | ../../../../common/filter-tags | n/a |
| <a name="module_filter-tags-5xx"></a> [filter-tags-5xx](#module\_filter-tags-5xx) | ../../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.nginx_ingress_too_many_4xx](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.nginx_ingress_too_many_5xx](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| artificial\_requests\_count | Number of false requests used to mitigate false positive in case of low trafic | `number` | `5` | no | | <a name="input_artificial_requests_count"></a> [artificial\_requests\_count](#input\_artificial\_requests\_count) | Number of false requests used to mitigate false positive in case of low trafic | `number` | `5` | no |
| environment | Architecture Environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture Environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `15` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| ingress\_4xx\_enabled | Flag to enable Ingress 4xx errors monitor | `string` | `"true"` | no | | <a name="input_ingress_4xx_enabled"></a> [ingress\_4xx\_enabled](#input\_ingress\_4xx\_enabled) | Flag to enable Ingress 4xx errors monitor | `string` | `"true"` | no |
| ingress\_4xx\_extra\_tags | Extra tags for Ingress 4xx errors monitor | `list(string)` | `[]` | no | | <a name="input_ingress_4xx_extra_tags"></a> [ingress\_4xx\_extra\_tags](#input\_ingress\_4xx\_extra\_tags) | Extra tags for Ingress 4xx errors monitor | `list(string)` | `[]` | no |
| ingress\_4xx\_message | Message sent when an alert is triggered | `string` | `""` | no | | <a name="input_ingress_4xx_message"></a> [ingress\_4xx\_message](#input\_ingress\_4xx\_message) | Message sent when an alert is triggered | `string` | `""` | no |
| ingress\_4xx\_threshold\_critical | 4xx critical threshold in percentage | `string` | `"40"` | no | | <a name="input_ingress_4xx_threshold_critical"></a> [ingress\_4xx\_threshold\_critical](#input\_ingress\_4xx\_threshold\_critical) | 4xx critical threshold in percentage | `string` | `"40"` | no |
| ingress\_4xx\_threshold\_warning | 4xx warning threshold in percentage | `string` | `"20"` | no | | <a name="input_ingress_4xx_threshold_warning"></a> [ingress\_4xx\_threshold\_warning](#input\_ingress\_4xx\_threshold\_warning) | 4xx warning threshold in percentage | `string` | `"20"` | no |
| ingress\_4xx\_time\_aggregator | Monitor aggregator for Ingress 4xx errors [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_ingress_4xx_time_aggregator"></a> [ingress\_4xx\_time\_aggregator](#input\_ingress\_4xx\_time\_aggregator) | Monitor aggregator for Ingress 4xx errors [available values: min, max or avg] | `string` | `"min"` | no |
| ingress\_4xx\_timeframe | Monitor timeframe for Ingress 4xx errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_ingress_4xx_timeframe"></a> [ingress\_4xx\_timeframe](#input\_ingress\_4xx\_timeframe) | Monitor timeframe for Ingress 4xx errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| ingress\_5xx\_enabled | Flag to enable Ingress 5xx errors monitor | `string` | `"true"` | no | | <a name="input_ingress_5xx_enabled"></a> [ingress\_5xx\_enabled](#input\_ingress\_5xx\_enabled) | Flag to enable Ingress 5xx errors monitor | `string` | `"true"` | no |
| ingress\_5xx\_extra\_tags | Extra tags for Ingress 5xx errors monitor | `list(string)` | `[]` | no | | <a name="input_ingress_5xx_extra_tags"></a> [ingress\_5xx\_extra\_tags](#input\_ingress\_5xx\_extra\_tags) | Extra tags for Ingress 5xx errors monitor | `list(string)` | `[]` | no |
| ingress\_5xx\_message | Message sent when an alert is triggered | `string` | `""` | no | | <a name="input_ingress_5xx_message"></a> [ingress\_5xx\_message](#input\_ingress\_5xx\_message) | Message sent when an alert is triggered | `string` | `""` | no |
| ingress\_5xx\_threshold\_critical | 5xx critical threshold in percentage | `string` | `"20"` | no | | <a name="input_ingress_5xx_threshold_critical"></a> [ingress\_5xx\_threshold\_critical](#input\_ingress\_5xx\_threshold\_critical) | 5xx critical threshold in percentage | `string` | `"20"` | no |
| ingress\_5xx\_threshold\_warning | 5xx warning threshold in percentage | `string` | `"10"` | no | | <a name="input_ingress_5xx_threshold_warning"></a> [ingress\_5xx\_threshold\_warning](#input\_ingress\_5xx\_threshold\_warning) | 5xx warning threshold in percentage | `string` | `"10"` | no |
| ingress\_5xx\_time\_aggregator | Monitor aggregator for Ingress 5xx errors [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_ingress_5xx_time_aggregator"></a> [ingress\_5xx\_time\_aggregator](#input\_ingress\_5xx\_time\_aggregator) | Monitor aggregator for Ingress 5xx errors [available values: min, max or avg] | `string` | `"min"` | no |
| ingress\_5xx\_timeframe | Monitor timeframe for Ingress 5xx errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_ingress_5xx_timeframe"></a> [ingress\_5xx\_timeframe](#input\_ingress\_5xx\_timeframe) | Monitor timeframe for Ingress 5xx errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| message | Message sent when an alert is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| nginx\_ingress\_too\_many\_4xx\_id | id for monitor nginx\_ingress\_too\_many\_4xx | | <a name="output_nginx_ingress_too_many_4xx_id"></a> [nginx\_ingress\_too\_many\_4xx\_id](#output\_nginx\_ingress\_too\_many\_4xx\_id) | id for monitor nginx\_ingress\_too\_many\_4xx |
| nginx\_ingress\_too\_many\_5xx\_id | id for monitor nginx\_ingress\_too\_many\_5xx | | <a name="output_nginx_ingress_too_many_5xx_id"></a> [nginx\_ingress\_too\_many\_5xx\_id](#output\_nginx\_ingress\_too\_many\_5xx\_id) | id for monitor nginx\_ingress\_too\_many\_5xx |
## Related documentation ## Related documentation
DataDog blog: https://www.datadoghq.com/blog/monitor-prometheus-metrics DataDog blog: https://www.datadoghq.com/blog/monitor-prometheus-metrics

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -32,87 +32,115 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a |
| <a name="module_filter-tags-unschedulable"></a> [filter-tags-unschedulable](#module\_filter-tags-unschedulable) | ../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.disk_out](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.disk_pressure](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.kubelet_ping](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.kubelet_syncloop](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.memory_pressure](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.node_unschedulable](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.ready](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.unregister_net_device](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.volume_inodes](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.volume_space](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| disk\_out\_enabled | Flag to enable Out of disk monitor | `string` | `"true"` | no | | <a name="input_disk_out_enabled"></a> [disk\_out\_enabled](#input\_disk\_out\_enabled) | Flag to enable Out of disk monitor | `string` | `"true"` | no |
| disk\_out\_extra\_tags | Extra tags for Out of disk monitor | `list(string)` | `[]` | no | | <a name="input_disk_out_extra_tags"></a> [disk\_out\_extra\_tags](#input\_disk\_out\_extra\_tags) | Extra tags for Out of disk monitor | `list(string)` | `[]` | no |
| disk\_out\_message | Custom message for Out of disk monitor | `string` | `""` | no | | <a name="input_disk_out_message"></a> [disk\_out\_message](#input\_disk\_out\_message) | Custom message for Out of disk monitor | `string` | `""` | no |
| disk\_out\_threshold\_warning | Out of disk monitor (warning threshold) | `string` | `3` | no | | <a name="input_disk_out_threshold_warning"></a> [disk\_out\_threshold\_warning](#input\_disk\_out\_threshold\_warning) | Out of disk monitor (warning threshold) | `string` | `3` | no |
| disk\_pressure\_enabled | Flag to enable Disk pressure monitor | `string` | `"true"` | no | | <a name="input_disk_pressure_enabled"></a> [disk\_pressure\_enabled](#input\_disk\_pressure\_enabled) | Flag to enable Disk pressure monitor | `string` | `"true"` | no |
| disk\_pressure\_extra\_tags | Extra tags for Disk pressure monitor | `list(string)` | `[]` | no | | <a name="input_disk_pressure_extra_tags"></a> [disk\_pressure\_extra\_tags](#input\_disk\_pressure\_extra\_tags) | Extra tags for Disk pressure monitor | `list(string)` | `[]` | no |
| disk\_pressure\_message | Custom message for Disk pressure monitor | `string` | `""` | no | | <a name="input_disk_pressure_message"></a> [disk\_pressure\_message](#input\_disk\_pressure\_message) | Custom message for Disk pressure monitor | `string` | `""` | no |
| disk\_pressure\_threshold\_warning | Disk pressure monitor (warning threshold) | `string` | `3` | no | | <a name="input_disk_pressure_threshold_warning"></a> [disk\_pressure\_threshold\_warning](#input\_disk\_pressure\_threshold\_warning) | Disk pressure monitor (warning threshold) | `string` | `3` | no |
| environment | Architecture environment | `any` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture environment | `any` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `15` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| kubelet\_ping\_enabled | Flag to enable Kubelet ping monitor | `string` | `"true"` | no | | <a name="input_kubelet_ping_enabled"></a> [kubelet\_ping\_enabled](#input\_kubelet\_ping\_enabled) | Flag to enable Kubelet ping monitor | `string` | `"true"` | no |
| kubelet\_ping\_extra\_tags | Extra tags for Kubelet ping monitor | `list(string)` | `[]` | no | | <a name="input_kubelet_ping_extra_tags"></a> [kubelet\_ping\_extra\_tags](#input\_kubelet\_ping\_extra\_tags) | Extra tags for Kubelet ping monitor | `list(string)` | `[]` | no |
| kubelet\_ping\_message | Custom message for Kubelet ping monitor | `string` | `""` | no | | <a name="input_kubelet_ping_message"></a> [kubelet\_ping\_message](#input\_kubelet\_ping\_message) | Custom message for Kubelet ping monitor | `string` | `""` | no |
| kubelet\_ping\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | | <a name="input_kubelet_ping_no_data_timeframe"></a> [kubelet\_ping\_no\_data\_timeframe](#input\_kubelet\_ping\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no |
| kubelet\_ping\_threshold\_warning | Kubelet ping monitor (warning threshold) | `string` | `3` | no | | <a name="input_kubelet_ping_threshold_warning"></a> [kubelet\_ping\_threshold\_warning](#input\_kubelet\_ping\_threshold\_warning) | Kubelet ping monitor (warning threshold) | `string` | `3` | no |
| kubelet\_syncloop\_enabled | Flag to enable Kubelet sync loop monitor | `string` | `"true"` | no | | <a name="input_kubelet_syncloop_enabled"></a> [kubelet\_syncloop\_enabled](#input\_kubelet\_syncloop\_enabled) | Flag to enable Kubelet sync loop monitor | `string` | `"true"` | no |
| kubelet\_syncloop\_extra\_tags | Extra tags for Kubelet sync loop monitor | `list(string)` | `[]` | no | | <a name="input_kubelet_syncloop_extra_tags"></a> [kubelet\_syncloop\_extra\_tags](#input\_kubelet\_syncloop\_extra\_tags) | Extra tags for Kubelet sync loop monitor | `list(string)` | `[]` | no |
| kubelet\_syncloop\_message | Custom message for Kubelet sync loop monitor | `string` | `""` | no | | <a name="input_kubelet_syncloop_message"></a> [kubelet\_syncloop\_message](#input\_kubelet\_syncloop\_message) | Custom message for Kubelet sync loop monitor | `string` | `""` | no |
| kubelet\_syncloop\_threshold\_warning | Kubelet sync loop monitor (warning threshold) | `string` | `3` | no | | <a name="input_kubelet_syncloop_threshold_warning"></a> [kubelet\_syncloop\_threshold\_warning](#input\_kubelet\_syncloop\_threshold\_warning) | Kubelet sync loop monitor (warning threshold) | `string` | `3` | no |
| memory\_pressure\_enabled | Flag to enable Memory pressure monitor | `string` | `"true"` | no | | <a name="input_memory_pressure_enabled"></a> [memory\_pressure\_enabled](#input\_memory\_pressure\_enabled) | Flag to enable Memory pressure monitor | `string` | `"true"` | no |
| memory\_pressure\_extra\_tags | Extra tags for Memory pressure monitor | `list(string)` | `[]` | no | | <a name="input_memory_pressure_extra_tags"></a> [memory\_pressure\_extra\_tags](#input\_memory\_pressure\_extra\_tags) | Extra tags for Memory pressure monitor | `list(string)` | `[]` | no |
| memory\_pressure\_message | Custom message for Memory pressure monitor | `string` | `""` | no | | <a name="input_memory_pressure_message"></a> [memory\_pressure\_message](#input\_memory\_pressure\_message) | Custom message for Memory pressure monitor | `string` | `""` | no |
| memory\_pressure\_threshold\_warning | Memory pressure monitor (warning threshold) | `string` | `3` | no | | <a name="input_memory_pressure_threshold_warning"></a> [memory\_pressure\_threshold\_warning](#input\_memory\_pressure\_threshold\_warning) | Memory pressure monitor (warning threshold) | `string` | `3` | no |
| message | Message sent when a monitor is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| node\_unschedulable\_enabled | Flag to enable node unschedulable monitor | `string` | `"true"` | no | | <a name="input_node_unschedulable_enabled"></a> [node\_unschedulable\_enabled](#input\_node\_unschedulable\_enabled) | Flag to enable node unschedulable monitor | `string` | `"true"` | no |
| node\_unschedulable\_extra\_tags | Extra tags for node unschedulable monitor | `list(string)` | `[]` | no | | <a name="input_node_unschedulable_extra_tags"></a> [node\_unschedulable\_extra\_tags](#input\_node\_unschedulable\_extra\_tags) | Extra tags for node unschedulable monitor | `list(string)` | `[]` | no |
| node\_unschedulable\_message | Custom message for node unschedulable monitor | `string` | `""` | no | | <a name="input_node_unschedulable_message"></a> [node\_unschedulable\_message](#input\_node\_unschedulable\_message) | Custom message for node unschedulable monitor | `string` | `""` | no |
| node\_unschedulable\_time\_aggregator | Monitor aggregator for node unschedulable [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_node_unschedulable_time_aggregator"></a> [node\_unschedulable\_time\_aggregator](#input\_node\_unschedulable\_time\_aggregator) | Monitor aggregator for node unschedulable [available values: min, max or avg] | `string` | `"min"` | no |
| node\_unschedulable\_timeframe | Monitor timeframe for node unschedulable [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_1h"` | no | | <a name="input_node_unschedulable_timeframe"></a> [node\_unschedulable\_timeframe](#input\_node\_unschedulable\_timeframe) | Monitor timeframe for node unschedulable [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_1h"` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
| ready\_enabled | Flag to enable Node ready monitor | `string` | `"true"` | no | | <a name="input_ready_enabled"></a> [ready\_enabled](#input\_ready\_enabled) | Flag to enable Node ready monitor | `string` | `"true"` | no |
| ready\_extra\_tags | Extra tags for Node ready monitor | `list(string)` | `[]` | no | | <a name="input_ready_extra_tags"></a> [ready\_extra\_tags](#input\_ready\_extra\_tags) | Extra tags for Node ready monitor | `list(string)` | `[]` | no |
| ready\_message | Custom message for Node ready monitor | `string` | `""` | no | | <a name="input_ready_message"></a> [ready\_message](#input\_ready\_message) | Custom message for Node ready monitor | `string` | `""` | no |
| ready\_threshold\_warning | Node ready monitor (warning threshold) | `string` | `3` | no | | <a name="input_ready_threshold_warning"></a> [ready\_threshold\_warning](#input\_ready\_threshold\_warning) | Node ready monitor (warning threshold) | `string` | `3` | no |
| unregister\_net\_device\_enabled | Flag to enable Unregister net device monitor | `string` | `"true"` | no | | <a name="input_unregister_net_device_enabled"></a> [unregister\_net\_device\_enabled](#input\_unregister\_net\_device\_enabled) | Flag to enable Unregister net device monitor | `string` | `"true"` | no |
| unregister\_net\_device\_extra\_tags | Extra tags for Unregister net device monitor | `list(string)` | `[]` | no | | <a name="input_unregister_net_device_extra_tags"></a> [unregister\_net\_device\_extra\_tags](#input\_unregister\_net\_device\_extra\_tags) | Extra tags for Unregister net device monitor | `list(string)` | `[]` | no |
| unregister\_net\_device\_message | Custom message for Unregister net device monitor | `string` | `""` | no | | <a name="input_unregister_net_device_message"></a> [unregister\_net\_device\_message](#input\_unregister\_net\_device\_message) | Custom message for Unregister net device monitor | `string` | `""` | no |
| unregister\_net\_device\_threshold\_critical | Unregister net device critical threshold | `number` | `3` | no | | <a name="input_unregister_net_device_threshold_critical"></a> [unregister\_net\_device\_threshold\_critical](#input\_unregister\_net\_device\_threshold\_critical) | Unregister net device critical threshold | `number` | `3` | no |
| unregister\_net\_device\_time\_aggregator | Monitor aggregator for Unregister net device [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_unregister_net_device_time_aggregator"></a> [unregister\_net\_device\_time\_aggregator](#input\_unregister\_net\_device\_time\_aggregator) | Monitor aggregator for Unregister net device [available values: min, max or avg] | `string` | `"min"` | no |
| unregister\_net\_device\_timeframe | Monitor timeframe for Unregister net device [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"15m"` | no | | <a name="input_unregister_net_device_timeframe"></a> [unregister\_net\_device\_timeframe](#input\_unregister\_net\_device\_timeframe) | Monitor timeframe for Unregister net device [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"15m"` | no |
| volume\_inodes\_enabled | Flag to enable Volume inodes monitor | `string` | `"true"` | no | | <a name="input_volume_inodes_enabled"></a> [volume\_inodes\_enabled](#input\_volume\_inodes\_enabled) | Flag to enable Volume inodes monitor | `string` | `"true"` | no |
| volume\_inodes\_extra\_tags | Extra tags for Volume inodes monitor | `list(string)` | `[]` | no | | <a name="input_volume_inodes_extra_tags"></a> [volume\_inodes\_extra\_tags](#input\_volume\_inodes\_extra\_tags) | Extra tags for Volume inodes monitor | `list(string)` | `[]` | no |
| volume\_inodes\_message | Custom message for Volume inodes monitor | `string` | `""` | no | | <a name="input_volume_inodes_message"></a> [volume\_inodes\_message](#input\_volume\_inodes\_message) | Custom message for Volume inodes monitor | `string` | `""` | no |
| volume\_inodes\_threshold\_critical | Volume inodes critical threshold | `number` | `95` | no | | <a name="input_volume_inodes_threshold_critical"></a> [volume\_inodes\_threshold\_critical](#input\_volume\_inodes\_threshold\_critical) | Volume inodes critical threshold | `number` | `95` | no |
| volume\_inodes\_threshold\_warning | Volume inodes warning threshold | `number` | `90` | no | | <a name="input_volume_inodes_threshold_warning"></a> [volume\_inodes\_threshold\_warning](#input\_volume\_inodes\_threshold\_warning) | Volume inodes warning threshold | `number` | `90` | no |
| volume\_inodes\_time\_aggregator | Monitor aggregator for Volume inodes [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_volume_inodes_time_aggregator"></a> [volume\_inodes\_time\_aggregator](#input\_volume\_inodes\_time\_aggregator) | Monitor aggregator for Volume inodes [available values: min, max or avg] | `string` | `"min"` | no |
| volume\_inodes\_timeframe | Monitor timeframe for Volume inodes [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_volume_inodes_timeframe"></a> [volume\_inodes\_timeframe](#input\_volume\_inodes\_timeframe) | Monitor timeframe for Volume inodes [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| volume\_space\_enabled | Flag to enable Volume space monitor | `string` | `"true"` | no | | <a name="input_volume_space_enabled"></a> [volume\_space\_enabled](#input\_volume\_space\_enabled) | Flag to enable Volume space monitor | `string` | `"true"` | no |
| volume\_space\_extra\_tags | Extra tags for Volume space monitor | `list(string)` | `[]` | no | | <a name="input_volume_space_extra_tags"></a> [volume\_space\_extra\_tags](#input\_volume\_space\_extra\_tags) | Extra tags for Volume space monitor | `list(string)` | `[]` | no |
| volume\_space\_message | Custom message for Volume space monitor | `string` | `""` | no | | <a name="input_volume_space_message"></a> [volume\_space\_message](#input\_volume\_space\_message) | Custom message for Volume space monitor | `string` | `""` | no |
| volume\_space\_threshold\_critical | Volume space critical threshold | `number` | `95` | no | | <a name="input_volume_space_threshold_critical"></a> [volume\_space\_threshold\_critical](#input\_volume\_space\_threshold\_critical) | Volume space critical threshold | `number` | `95` | no |
| volume\_space\_threshold\_warning | Volume space warning threshold | `number` | `90` | no | | <a name="input_volume_space_threshold_warning"></a> [volume\_space\_threshold\_warning](#input\_volume\_space\_threshold\_warning) | Volume space warning threshold | `number` | `90` | no |
| volume\_space\_time\_aggregator | Monitor aggregator for Volume space [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_volume_space_time_aggregator"></a> [volume\_space\_time\_aggregator](#input\_volume\_space\_time\_aggregator) | Monitor aggregator for Volume space [available values: min, max or avg] | `string` | `"min"` | no |
| volume\_space\_timeframe | Monitor timeframe for Volume space [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_volume_space_timeframe"></a> [volume\_space\_timeframe](#input\_volume\_space\_timeframe) | Monitor timeframe for Volume space [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| disk\_out\_id | id for monitor disk\_out | | <a name="output_disk_out_id"></a> [disk\_out\_id](#output\_disk\_out\_id) | id for monitor disk\_out |
| disk\_pressure\_id | id for monitor disk\_pressure | | <a name="output_disk_pressure_id"></a> [disk\_pressure\_id](#output\_disk\_pressure\_id) | id for monitor disk\_pressure |
| kubelet\_ping\_id | id for monitor kubelet\_ping | | <a name="output_kubelet_ping_id"></a> [kubelet\_ping\_id](#output\_kubelet\_ping\_id) | id for monitor kubelet\_ping |
| kubelet\_syncloop\_id | id for monitor kubelet\_syncloop | | <a name="output_kubelet_syncloop_id"></a> [kubelet\_syncloop\_id](#output\_kubelet\_syncloop\_id) | id for monitor kubelet\_syncloop |
| memory\_pressure\_id | id for monitor memory\_pressure | | <a name="output_memory_pressure_id"></a> [memory\_pressure\_id](#output\_memory\_pressure\_id) | id for monitor memory\_pressure |
| node\_unschedulable\_id | id for monitor node\_unschedulable | | <a name="output_node_unschedulable_id"></a> [node\_unschedulable\_id](#output\_node\_unschedulable\_id) | id for monitor node\_unschedulable |
| ready\_id | id for monitor ready | | <a name="output_ready_id"></a> [ready\_id](#output\_ready\_id) | id for monitor ready |
| unregister\_net\_device\_id | id for monitor unregister\_net\_device | | <a name="output_unregister_net_device_id"></a> [unregister\_net\_device\_id](#output\_unregister\_net\_device\_id) | id for monitor unregister\_net\_device |
| volume\_inodes\_id | id for monitor volume\_inodes | | <a name="output_volume_inodes_id"></a> [volume\_inodes\_id](#output\_volume\_inodes\_id) | id for monitor volume\_inodes |
| volume\_space\_id | id for monitor volume\_space | | <a name="output_volume_space_id"></a> [volume\_space\_id](#output\_volume\_space\_id) | id for monitor volume\_space |
## Related documentation ## Related documentation
* [Datadog metrics](https://docs.datadoghq.com/agent/kubernetes/metrics/) * [Datadog metrics](https://docs.datadoghq.com/agent/kubernetes/metrics/)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -25,49 +25,71 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a |
| <a name="module_filter-tags-nocontainercreating"></a> [filter-tags-nocontainercreating](#module\_filter-tags-nocontainercreating) | ../../../common/filter-tags | n/a |
| <a name="module_filter-tags-phase"></a> [filter-tags-phase](#module\_filter-tags-phase) | ../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.error](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.pod_phase_status](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.terminated](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| environment | Architecture environment | `any` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture environment | `any` | n/a | yes |
| error\_enabled | Flag to enable Pod errors monitor | `string` | `"true"` | no | | <a name="input_error_enabled"></a> [error\_enabled](#input\_error\_enabled) | Flag to enable Pod errors monitor | `string` | `"true"` | no |
| error\_extra\_tags | Extra tags for Pod errors monitor | `list(string)` | `[]` | no | | <a name="input_error_extra_tags"></a> [error\_extra\_tags](#input\_error\_extra\_tags) | Extra tags for Pod errors monitor | `list(string)` | `[]` | no |
| error\_message | Custom message for Pod errors monitor | `string` | `""` | no | | <a name="input_error_message"></a> [error\_message](#input\_error\_message) | Custom message for Pod errors monitor | `string` | `""` | no |
| error\_threshold\_critical | error critical threshold | `number` | `0.5` | no | | <a name="input_error_threshold_critical"></a> [error\_threshold\_critical](#input\_error\_threshold\_critical) | error critical threshold | `number` | `0.5` | no |
| error\_threshold\_warning | error warning threshold | `number` | `0` | no | | <a name="input_error_threshold_warning"></a> [error\_threshold\_warning](#input\_error\_threshold\_warning) | error warning threshold | `number` | `0` | no |
| error\_time\_aggregator | Monitor aggregator for Pod errors [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_error_time_aggregator"></a> [error\_time\_aggregator](#input\_error\_time\_aggregator) | Monitor aggregator for Pod errors [available values: min, max or avg] | `string` | `"min"` | no |
| error\_timeframe | Monitor timeframe for Pod errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | | <a name="input_error_timeframe"></a> [error\_timeframe](#input\_error\_timeframe) | Monitor timeframe for Pod errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `15` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| message | Message sent when a monitor is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| pod\_phase\_status\_enabled | Flag to enable Pod phase status monitor | `string` | `"true"` | no | | <a name="input_pod_phase_status_enabled"></a> [pod\_phase\_status\_enabled](#input\_pod\_phase\_status\_enabled) | Flag to enable Pod phase status monitor | `string` | `"true"` | no |
| pod\_phase\_status\_extra\_tags | Extra tags for Pod phase status monitor | `list(string)` | `[]` | no | | <a name="input_pod_phase_status_extra_tags"></a> [pod\_phase\_status\_extra\_tags](#input\_pod\_phase\_status\_extra\_tags) | Extra tags for Pod phase status monitor | `list(string)` | `[]` | no |
| pod\_phase\_status\_message | Custom message for Pod phase status monitor | `string` | `""` | no | | <a name="input_pod_phase_status_message"></a> [pod\_phase\_status\_message](#input\_pod\_phase\_status\_message) | Custom message for Pod phase status monitor | `string` | `""` | no |
| pod\_phase\_status\_time\_aggregator | Monitor aggregator for Pod phase status [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_pod_phase_status_time_aggregator"></a> [pod\_phase\_status\_time\_aggregator](#input\_pod\_phase\_status\_time\_aggregator) | Monitor aggregator for Pod phase status [available values: min, max or avg] | `string` | `"max"` | no |
| pod\_phase\_status\_timeframe | Monitor timeframe for Pod phase status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_pod_phase_status_timeframe"></a> [pod\_phase\_status\_timeframe](#input\_pod\_phase\_status\_timeframe) | Monitor timeframe for Pod phase status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
| terminated\_enabled | Flag to enable Pod terminated monitor | `string` | `"true"` | no | | <a name="input_terminated_enabled"></a> [terminated\_enabled](#input\_terminated\_enabled) | Flag to enable Pod terminated monitor | `string` | `"true"` | no |
| terminated\_extra\_tags | Extra tags for Pod terminated monitor | `list(string)` | `[]` | no | | <a name="input_terminated_extra_tags"></a> [terminated\_extra\_tags](#input\_terminated\_extra\_tags) | Extra tags for Pod terminated monitor | `list(string)` | `[]` | no |
| terminated\_message | Custom message for Pod terminated monitor | `string` | `""` | no | | <a name="input_terminated_message"></a> [terminated\_message](#input\_terminated\_message) | Custom message for Pod terminated monitor | `string` | `""` | no |
| terminated\_threshold\_critical | terminated critical threshold | `number` | `0.5` | no | | <a name="input_terminated_threshold_critical"></a> [terminated\_threshold\_critical](#input\_terminated\_threshold\_critical) | terminated critical threshold | `number` | `0.5` | no |
| terminated\_threshold\_warning | terminated warning threshold | `number` | `0` | no | | <a name="input_terminated_threshold_warning"></a> [terminated\_threshold\_warning](#input\_terminated\_threshold\_warning) | terminated warning threshold | `number` | `0` | no |
| terminated\_time\_aggregator | Monitor aggregator for Pod terminated [available values: min, max or avg] | `string` | `"sum"` | no | | <a name="input_terminated_time_aggregator"></a> [terminated\_time\_aggregator](#input\_terminated\_time\_aggregator) | Monitor aggregator for Pod terminated [available values: min, max or avg] | `string` | `"sum"` | no |
| terminated\_timeframe | Monitor timeframe for Pod terminated [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_10m"` | no | | <a name="input_terminated_timeframe"></a> [terminated\_timeframe](#input\_terminated\_timeframe) | Monitor timeframe for Pod terminated [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_10m"` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| error\_id | id for monitor error | | <a name="output_error_id"></a> [error\_id](#output\_error\_id) | id for monitor error |
| pod\_phase\_status\_id | id for monitor pod\_phase\_status | | <a name="output_pod_phase_status_id"></a> [pod\_phase\_status\_id](#output\_pod\_phase\_status\_id) | id for monitor pod\_phase\_status |
| terminated\_id | id for monitor terminated | | <a name="output_terminated_id"></a> [terminated\_id](#output\_terminated\_id) | id for monitor terminated |
## Related documentation ## Related documentation
* [Datadog metrics](https://docs.datadoghq.com/agent/kubernetes/metrics/) * [Datadog metrics](https://docs.datadoghq.com/agent/kubernetes/metrics/)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -27,53 +27,76 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a |
| <a name="module_filter-tags-scheduled-backup"></a> [filter-tags-scheduled-backup](#module\_filter-tags-scheduled-backup) | ../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.velero_backup_deletion_failure](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.velero_backup_failure](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.velero_backup_partial_failure](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.velero_scheduled_backup_missing](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.velero_volume_snapshot_failure](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| environment | Architecture environment | `any` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture environment | `any` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `15` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| message | Message sent when a monitor is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
| velero\_backup\_deletion\_failure\_enabled | Flag to enable Velero backup deletion failure monitor | `string` | `"true"` | no | | <a name="input_velero_backup_deletion_failure_enabled"></a> [velero\_backup\_deletion\_failure\_enabled](#input\_velero\_backup\_deletion\_failure\_enabled) | Flag to enable Velero backup deletion failure monitor | `string` | `"true"` | no |
| velero\_backup\_deletion\_failure\_extra\_tags | Extra tags for Velero backup deletion failure monitor | `list(string)` | `[]` | no | | <a name="input_velero_backup_deletion_failure_extra_tags"></a> [velero\_backup\_deletion\_failure\_extra\_tags](#input\_velero\_backup\_deletion\_failure\_extra\_tags) | Extra tags for Velero backup deletion failure monitor | `list(string)` | `[]` | no |
| velero\_backup\_deletion\_failure\_monitor\_message | Custom message for Velero backup deletion failure monitor | `string` | `""` | no | | <a name="input_velero_backup_deletion_failure_monitor_message"></a> [velero\_backup\_deletion\_failure\_monitor\_message](#input\_velero\_backup\_deletion\_failure\_monitor\_message) | Custom message for Velero backup deletion failure monitor | `string` | `""` | no |
| velero\_backup\_deletion\_failure\_monitor\_timeframe | Monitor timeframe for Velero backup deletion failure monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_1d"` | no | | <a name="input_velero_backup_deletion_failure_monitor_timeframe"></a> [velero\_backup\_deletion\_failure\_monitor\_timeframe](#input\_velero\_backup\_deletion\_failure\_monitor\_timeframe) | Monitor timeframe for Velero backup deletion failure monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_1d"` | no |
| velero\_backup\_failure\_enabled | Flag to enable Velero backup failure monitor | `string` | `"true"` | no | | <a name="input_velero_backup_failure_enabled"></a> [velero\_backup\_failure\_enabled](#input\_velero\_backup\_failure\_enabled) | Flag to enable Velero backup failure monitor | `string` | `"true"` | no |
| velero\_backup\_failure\_extra\_tags | Extra tags for Velero backup failure monitor | `list(string)` | `[]` | no | | <a name="input_velero_backup_failure_extra_tags"></a> [velero\_backup\_failure\_extra\_tags](#input\_velero\_backup\_failure\_extra\_tags) | Extra tags for Velero backup failure monitor | `list(string)` | `[]` | no |
| velero\_backup\_failure\_monitor\_message | Custom message for Velero backup failure monitor | `string` | `""` | no | | <a name="input_velero_backup_failure_monitor_message"></a> [velero\_backup\_failure\_monitor\_message](#input\_velero\_backup\_failure\_monitor\_message) | Custom message for Velero backup failure monitor | `string` | `""` | no |
| velero\_backup\_failure\_monitor\_timeframe | Monitor timeframe for Velero backup failure monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_1d"` | no | | <a name="input_velero_backup_failure_monitor_timeframe"></a> [velero\_backup\_failure\_monitor\_timeframe](#input\_velero\_backup\_failure\_monitor\_timeframe) | Monitor timeframe for Velero backup failure monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_1d"` | no |
| velero\_backup\_partial\_failure\_enabled | Flag to enable Velero backup partial failure monitor | `string` | `"true"` | no | | <a name="input_velero_backup_partial_failure_enabled"></a> [velero\_backup\_partial\_failure\_enabled](#input\_velero\_backup\_partial\_failure\_enabled) | Flag to enable Velero backup partial failure monitor | `string` | `"true"` | no |
| velero\_backup\_partial\_failure\_extra\_tags | Extra tags for Velero backup partial failure monitor | `list(string)` | `[]` | no | | <a name="input_velero_backup_partial_failure_extra_tags"></a> [velero\_backup\_partial\_failure\_extra\_tags](#input\_velero\_backup\_partial\_failure\_extra\_tags) | Extra tags for Velero backup partial failure monitor | `list(string)` | `[]` | no |
| velero\_backup\_partial\_failure\_monitor\_message | Custom message for Velero backup partial failure monitor | `string` | `""` | no | | <a name="input_velero_backup_partial_failure_monitor_message"></a> [velero\_backup\_partial\_failure\_monitor\_message](#input\_velero\_backup\_partial\_failure\_monitor\_message) | Custom message for Velero backup partial failure monitor | `string` | `""` | no |
| velero\_backup\_partial\_failure\_monitor\_timeframe | Monitor timeframe for Velero backup partial failure monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_1d"` | no | | <a name="input_velero_backup_partial_failure_monitor_timeframe"></a> [velero\_backup\_partial\_failure\_monitor\_timeframe](#input\_velero\_backup\_partial\_failure\_monitor\_timeframe) | Monitor timeframe for Velero backup partial failure monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_1d"` | no |
| velero\_scheduled\_backup\_missing\_enabled | Flag to enable Velero scheduled backup missing monitor | `string` | `"true"` | no | | <a name="input_velero_scheduled_backup_missing_enabled"></a> [velero\_scheduled\_backup\_missing\_enabled](#input\_velero\_scheduled\_backup\_missing\_enabled) | Flag to enable Velero scheduled backup missing monitor | `string` | `"true"` | no |
| velero\_scheduled\_backup\_missing\_extra\_tags | Extra tags for Velero scheduled backup missing monitor | `list(string)` | `[]` | no | | <a name="input_velero_scheduled_backup_missing_extra_tags"></a> [velero\_scheduled\_backup\_missing\_extra\_tags](#input\_velero\_scheduled\_backup\_missing\_extra\_tags) | Extra tags for Velero scheduled backup missing monitor | `list(string)` | `[]` | no |
| velero\_scheduled\_backup\_missing\_monitor\_message | Custom message for Velero scheduled backup missing monitor | `string` | `""` | no | | <a name="input_velero_scheduled_backup_missing_monitor_message"></a> [velero\_scheduled\_backup\_missing\_monitor\_message](#input\_velero\_scheduled\_backup\_missing\_monitor\_message) | Custom message for Velero scheduled backup missing monitor | `string` | `""` | no |
| velero\_scheduled\_backup\_missing\_monitor\_no\_data\_timeframe | No data timeframe in minutes | `number` | `2880` | no | | <a name="input_velero_scheduled_backup_missing_monitor_no_data_timeframe"></a> [velero\_scheduled\_backup\_missing\_monitor\_no\_data\_timeframe](#input\_velero\_scheduled\_backup\_missing\_monitor\_no\_data\_timeframe) | No data timeframe in minutes | `number` | `2880` | no |
| velero\_scheduled\_backup\_missing\_monitor\_timeframe | Monitor timeframe for Velero scheduled backup missing monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_1d"` | no | | <a name="input_velero_scheduled_backup_missing_monitor_timeframe"></a> [velero\_scheduled\_backup\_missing\_monitor\_timeframe](#input\_velero\_scheduled\_backup\_missing\_monitor\_timeframe) | Monitor timeframe for Velero scheduled backup missing monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_1d"` | no |
| velero\_volume\_snapshot\_failure\_enabled | Flag to enable Velero volume snapshot failure monitor | `string` | `"true"` | no | | <a name="input_velero_volume_snapshot_failure_enabled"></a> [velero\_volume\_snapshot\_failure\_enabled](#input\_velero\_volume\_snapshot\_failure\_enabled) | Flag to enable Velero volume snapshot failure monitor | `string` | `"true"` | no |
| velero\_volume\_snapshot\_failure\_extra\_tags | Extra tags for Velero volume snapshot failure monitor | `list(string)` | `[]` | no | | <a name="input_velero_volume_snapshot_failure_extra_tags"></a> [velero\_volume\_snapshot\_failure\_extra\_tags](#input\_velero\_volume\_snapshot\_failure\_extra\_tags) | Extra tags for Velero volume snapshot failure monitor | `list(string)` | `[]` | no |
| velero\_volume\_snapshot\_failure\_monitor\_message | Custom message for Velero volume snapshot failure monitor | `string` | `""` | no | | <a name="input_velero_volume_snapshot_failure_monitor_message"></a> [velero\_volume\_snapshot\_failure\_monitor\_message](#input\_velero\_volume\_snapshot\_failure\_monitor\_message) | Custom message for Velero volume snapshot failure monitor | `string` | `""` | no |
| velero\_volume\_snapshot\_failure\_monitor\_timeframe | Monitor timeframe for Velero volume snapshot failure monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_1d"` | no | | <a name="input_velero_volume_snapshot_failure_monitor_timeframe"></a> [velero\_volume\_snapshot\_failure\_monitor\_timeframe](#input\_velero\_volume\_snapshot\_failure\_monitor\_timeframe) | Monitor timeframe for Velero volume snapshot failure monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_1d"` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| velero\_backup\_deletion\_failure\_id | id for monitor velero\_backup\_deletion\_failure | | <a name="output_velero_backup_deletion_failure_id"></a> [velero\_backup\_deletion\_failure\_id](#output\_velero\_backup\_deletion\_failure\_id) | id for monitor velero\_backup\_deletion\_failure |
| velero\_backup\_failure\_id | id for monitor velero\_backup\_failure | | <a name="output_velero_backup_failure_id"></a> [velero\_backup\_failure\_id](#output\_velero\_backup\_failure\_id) | id for monitor velero\_backup\_failure |
| velero\_backup\_partial\_failure\_id | id for monitor velero\_backup\_partial\_failure | | <a name="output_velero_backup_partial_failure_id"></a> [velero\_backup\_partial\_failure\_id](#output\_velero\_backup\_partial\_failure\_id) | id for monitor velero\_backup\_partial\_failure |
| velero\_scheduled\_backup\_missing\_id | id for monitor velero\_scheduled\_backup\_missing | | <a name="output_velero_scheduled_backup_missing_id"></a> [velero\_scheduled\_backup\_missing\_id](#output\_velero\_scheduled\_backup\_missing\_id) | id for monitor velero\_scheduled\_backup\_missing |
| velero\_volume\_snapshot\_failure\_id | id for monitor velero\_volume\_snapshot\_failure | | <a name="output_velero_volume_snapshot_failure_id"></a> [velero\_volume\_snapshot\_failure\_id](#output\_velero\_volume\_snapshot\_failure\_id) | id for monitor velero\_volume\_snapshot\_failure |
## Related documentation ## Related documentation
Documentation for Datadog prometheus intergration: https://docs.datadoghq.com/integrations/prometheus/ Documentation for Datadog prometheus intergration: https://docs.datadoghq.com/integrations/prometheus/

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -27,58 +27,80 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.cronjob](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.job](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.replica_available](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.replica_current](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.replica_ready](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| cronjob\_enabled | Flag to enable Cronjob monitor | `string` | `"true"` | no | | <a name="input_cronjob_enabled"></a> [cronjob\_enabled](#input\_cronjob\_enabled) | Flag to enable Cronjob monitor | `string` | `"true"` | no |
| cronjob\_extra\_tags | Extra tags for Cronjob monitor | `list(string)` | `[]` | no | | <a name="input_cronjob_extra_tags"></a> [cronjob\_extra\_tags](#input\_cronjob\_extra\_tags) | Extra tags for Cronjob monitor | `list(string)` | `[]` | no |
| cronjob\_message | Custom message for Cronjob monitor | `string` | `""` | no | | <a name="input_cronjob_message"></a> [cronjob\_message](#input\_cronjob\_message) | Custom message for Cronjob monitor | `string` | `""` | no |
| cronjob\_threshold\_warning | Cronjob monitor (warning threshold) | `string` | `3` | no | | <a name="input_cronjob_threshold_warning"></a> [cronjob\_threshold\_warning](#input\_cronjob\_threshold\_warning) | Cronjob monitor (warning threshold) | `string` | `3` | no |
| environment | Architecture environment | `any` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture environment | `any` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `15` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| job\_enabled | Flag to enable Job monitor | `string` | `"true"` | no | | <a name="input_job_enabled"></a> [job\_enabled](#input\_job\_enabled) | Flag to enable Job monitor | `string` | `"true"` | no |
| job\_extra\_tags | Extra tags for Job monitor | `list(string)` | `[]` | no | | <a name="input_job_extra_tags"></a> [job\_extra\_tags](#input\_job\_extra\_tags) | Extra tags for Job monitor | `list(string)` | `[]` | no |
| job\_message | Custom message for Job monitor | `string` | `""` | no | | <a name="input_job_message"></a> [job\_message](#input\_job\_message) | Custom message for Job monitor | `string` | `""` | no |
| job\_threshold\_warning | Job monitor (warning threshold) | `string` | `3` | no | | <a name="input_job_threshold_warning"></a> [job\_threshold\_warning](#input\_job\_threshold\_warning) | Job monitor (warning threshold) | `string` | `3` | no |
| message | Message sent when a monitor is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
| replica\_available\_enabled | Flag to enable Available replica monitor | `string` | `"true"` | no | | <a name="input_replica_available_enabled"></a> [replica\_available\_enabled](#input\_replica\_available\_enabled) | Flag to enable Available replica monitor | `string` | `"true"` | no |
| replica\_available\_extra\_tags | Extra tags for Available replicamonitor | `list(string)` | `[]` | no | | <a name="input_replica_available_extra_tags"></a> [replica\_available\_extra\_tags](#input\_replica\_available\_extra\_tags) | Extra tags for Available replicamonitor | `list(string)` | `[]` | no |
| replica\_available\_message | Custom message for Available replica monitor | `string` | `""` | no | | <a name="input_replica_available_message"></a> [replica\_available\_message](#input\_replica\_available\_message) | Custom message for Available replica monitor | `string` | `""` | no |
| replica\_available\_threshold\_critical | Available replica critical threshold | `number` | `1` | no | | <a name="input_replica_available_threshold_critical"></a> [replica\_available\_threshold\_critical](#input\_replica\_available\_threshold\_critical) | Available replica critical threshold | `number` | `1` | no |
| replica\_available\_time\_aggregator | Monitor aggregator for Available replica [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_replica_available_time_aggregator"></a> [replica\_available\_time\_aggregator](#input\_replica\_available\_time\_aggregator) | Monitor aggregator for Available replica [available values: min, max or avg] | `string` | `"max"` | no |
| replica\_available\_timeframe | Monitor timeframe for Available replica [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | | <a name="input_replica_available_timeframe"></a> [replica\_available\_timeframe](#input\_replica\_available\_timeframe) | Monitor timeframe for Available replica [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no |
| replica\_current\_enabled | Flag to enable Current replica monitor | `string` | `"true"` | no | | <a name="input_replica_current_enabled"></a> [replica\_current\_enabled](#input\_replica\_current\_enabled) | Flag to enable Current replica monitor | `string` | `"true"` | no |
| replica\_current\_extra\_tags | Extra tags for Current replica monitor | `list(string)` | `[]` | no | | <a name="input_replica_current_extra_tags"></a> [replica\_current\_extra\_tags](#input\_replica\_current\_extra\_tags) | Extra tags for Current replica monitor | `list(string)` | `[]` | no |
| replica\_current\_message | Custom message for Current replica monitor | `string` | `""` | no | | <a name="input_replica_current_message"></a> [replica\_current\_message](#input\_replica\_current\_message) | Custom message for Current replica monitor | `string` | `""` | no |
| replica\_current\_threshold\_critical | Current replica critical threshold | `number` | `1` | no | | <a name="input_replica_current_threshold_critical"></a> [replica\_current\_threshold\_critical](#input\_replica\_current\_threshold\_critical) | Current replica critical threshold | `number` | `1` | no |
| replica\_current\_time\_aggregator | Monitor aggregator for Current replica [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_replica_current_time_aggregator"></a> [replica\_current\_time\_aggregator](#input\_replica\_current\_time\_aggregator) | Monitor aggregator for Current replica [available values: min, max or avg] | `string` | `"max"` | no |
| replica\_current\_timeframe | Monitor timeframe for Current replica [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | | <a name="input_replica_current_timeframe"></a> [replica\_current\_timeframe](#input\_replica\_current\_timeframe) | Monitor timeframe for Current replica [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no |
| replica\_ready\_enabled | Flag to enable Ready replica monitor | `string` | `"true"` | no | | <a name="input_replica_ready_enabled"></a> [replica\_ready\_enabled](#input\_replica\_ready\_enabled) | Flag to enable Ready replica monitor | `string` | `"true"` | no |
| replica\_ready\_extra\_tags | Extra tags for Ready replica monitor | `list(string)` | `[]` | no | | <a name="input_replica_ready_extra_tags"></a> [replica\_ready\_extra\_tags](#input\_replica\_ready\_extra\_tags) | Extra tags for Ready replica monitor | `list(string)` | `[]` | no |
| replica\_ready\_message | Custom message for Ready replica monitor | `string` | `""` | no | | <a name="input_replica_ready_message"></a> [replica\_ready\_message](#input\_replica\_ready\_message) | Custom message for Ready replica monitor | `string` | `""` | no |
| replica\_ready\_threshold\_critical | Ready replica critical threshold | `number` | `1` | no | | <a name="input_replica_ready_threshold_critical"></a> [replica\_ready\_threshold\_critical](#input\_replica\_ready\_threshold\_critical) | Ready replica critical threshold | `number` | `1` | no |
| replica\_ready\_time\_aggregator | Monitor aggregator for Ready replica [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_replica_ready_time_aggregator"></a> [replica\_ready\_time\_aggregator](#input\_replica\_ready\_time\_aggregator) | Monitor aggregator for Ready replica [available values: min, max or avg] | `string` | `"max"` | no |
| replica\_ready\_timeframe | Monitor timeframe for Ready replica [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_replica_ready_timeframe"></a> [replica\_ready\_timeframe](#input\_replica\_ready\_timeframe) | Monitor timeframe for Ready replica [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| cronjob\_id | id for monitor cronjob | | <a name="output_cronjob_id"></a> [cronjob\_id](#output\_cronjob\_id) | id for monitor cronjob |
| job\_id | id for monitor job | | <a name="output_job_id"></a> [job\_id](#output\_job\_id) | id for monitor job |
| replica\_available\_id | id for monitor replica\_available | | <a name="output_replica_available_id"></a> [replica\_available\_id](#output\_replica\_available\_id) | id for monitor replica\_available |
| replica\_current\_id | id for monitor replica\_current | | <a name="output_replica_current_id"></a> [replica\_current\_id](#output\_replica\_current\_id) | id for monitor replica\_current |
| replica\_ready\_id | id for monitor replica\_ready | | <a name="output_replica_ready_id"></a> [replica\_ready\_id](#output\_replica\_ready\_id) | id for monitor replica\_ready |
## Related documentation ## Related documentation
* [Datadog metrics](https://docs.datadoghq.com/agent/kubernetes/metrics/) * [Datadog metrics](https://docs.datadoghq.com/agent/kubernetes/metrics/)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -28,76 +28,99 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.ALB_httpcode_4xx](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.ALB_httpcode_5xx](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.ALB_httpcode_target_4xx](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.ALB_httpcode_target_5xx](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.ALB_latency](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.ALB_no_healthy_instances](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| alb\_no\_healthy\_instances\_enabled | Flag to enable ALB no healthy instances monitor | `string` | `"true"` | no | | <a name="input_alb_no_healthy_instances_enabled"></a> [alb\_no\_healthy\_instances\_enabled](#input\_alb\_no\_healthy\_instances\_enabled) | Flag to enable ALB no healthy instances monitor | `string` | `"true"` | no |
| alb\_no\_healthy\_instances\_extra\_tags | Extra tags for ALB no healthy instances monitor | `list(string)` | `[]` | no | | <a name="input_alb_no_healthy_instances_extra_tags"></a> [alb\_no\_healthy\_instances\_extra\_tags](#input\_alb\_no\_healthy\_instances\_extra\_tags) | Extra tags for ALB no healthy instances monitor | `list(string)` | `[]` | no |
| alb\_no\_healthy\_instances\_message | Custom message for ALB no healthy instances monitor | `string` | `""` | no | | <a name="input_alb_no_healthy_instances_message"></a> [alb\_no\_healthy\_instances\_message](#input\_alb\_no\_healthy\_instances\_message) | Custom message for ALB no healthy instances monitor | `string` | `""` | no |
| alb\_no\_healthy\_instances\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | | <a name="input_alb_no_healthy_instances_no_data_timeframe"></a> [alb\_no\_healthy\_instances\_no\_data\_timeframe](#input\_alb\_no\_healthy\_instances\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no |
| alb\_no\_healthy\_instances\_threshold\_warning | ALB no healthy instances warning threshold in percentage | `number` | `100` | no | | <a name="input_alb_no_healthy_instances_threshold_warning"></a> [alb\_no\_healthy\_instances\_threshold\_warning](#input\_alb\_no\_healthy\_instances\_threshold\_warning) | ALB no healthy instances warning threshold in percentage | `number` | `100` | no |
| alb\_no\_healthy\_instances\_time\_aggregator | Monitor aggregator for ALB no healthy instances [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_alb_no_healthy_instances_time_aggregator"></a> [alb\_no\_healthy\_instances\_time\_aggregator](#input\_alb\_no\_healthy\_instances\_time\_aggregator) | Monitor aggregator for ALB no healthy instances [available values: min, max or avg] | `string` | `"min"` | no |
| alb\_no\_healthy\_instances\_timeframe | Monitor timeframe for ALB no healthy instances [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_alb_no_healthy_instances_timeframe"></a> [alb\_no\_healthy\_instances\_timeframe](#input\_alb\_no\_healthy\_instances\_timeframe) | Monitor timeframe for ALB no healthy instances [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| artificial\_requests\_count | Number of false requests used to mitigate false positive in case of low trafic | `number` | `5` | no | | <a name="input_artificial_requests_count"></a> [artificial\_requests\_count](#input\_artificial\_requests\_count) | Number of false requests used to mitigate false positive in case of low trafic | `number` | `5` | no |
| environment | Architecture environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| httpcode\_alb\_4xx\_enabled | Flag to enable ALB httpcode 4xx monitor | `string` | `"true"` | no | | <a name="input_httpcode_alb_4xx_enabled"></a> [httpcode\_alb\_4xx\_enabled](#input\_httpcode\_alb\_4xx\_enabled) | Flag to enable ALB httpcode 4xx monitor | `string` | `"true"` | no |
| httpcode\_alb\_4xx\_extra\_tags | Extra tags for ALB httpcode 4xx monitor | `list(string)` | `[]` | no | | <a name="input_httpcode_alb_4xx_extra_tags"></a> [httpcode\_alb\_4xx\_extra\_tags](#input\_httpcode\_alb\_4xx\_extra\_tags) | Extra tags for ALB httpcode 4xx monitor | `list(string)` | `[]` | no |
| httpcode\_alb\_4xx\_message | Custom message for ALB httpcode 4xx monitor | `string` | `""` | no | | <a name="input_httpcode_alb_4xx_message"></a> [httpcode\_alb\_4xx\_message](#input\_httpcode\_alb\_4xx\_message) | Custom message for ALB httpcode 4xx monitor | `string` | `""` | no |
| httpcode\_alb\_4xx\_threshold\_critical | loadbalancer 4xx critical threshold in percentage | `number` | `80` | no | | <a name="input_httpcode_alb_4xx_threshold_critical"></a> [httpcode\_alb\_4xx\_threshold\_critical](#input\_httpcode\_alb\_4xx\_threshold\_critical) | loadbalancer 4xx critical threshold in percentage | `number` | `80` | no |
| httpcode\_alb\_4xx\_threshold\_warning | loadbalancer 4xx warning threshold in percentage | `number` | `60` | no | | <a name="input_httpcode_alb_4xx_threshold_warning"></a> [httpcode\_alb\_4xx\_threshold\_warning](#input\_httpcode\_alb\_4xx\_threshold\_warning) | loadbalancer 4xx warning threshold in percentage | `number` | `60` | no |
| httpcode\_alb\_4xx\_time\_aggregator | Monitor aggregator for ALB httpcode 4xx [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_httpcode_alb_4xx_time_aggregator"></a> [httpcode\_alb\_4xx\_time\_aggregator](#input\_httpcode\_alb\_4xx\_time\_aggregator) | Monitor aggregator for ALB httpcode 4xx [available values: min, max or avg] | `string` | `"min"` | no |
| httpcode\_alb\_4xx\_timeframe | Monitor timeframe for ALB httpcode 4xx [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_httpcode_alb_4xx_timeframe"></a> [httpcode\_alb\_4xx\_timeframe](#input\_httpcode\_alb\_4xx\_timeframe) | Monitor timeframe for ALB httpcode 4xx [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| httpcode\_alb\_5xx\_enabled | Flag to enable ALB httpcode 5xx monitor | `string` | `"true"` | no | | <a name="input_httpcode_alb_5xx_enabled"></a> [httpcode\_alb\_5xx\_enabled](#input\_httpcode\_alb\_5xx\_enabled) | Flag to enable ALB httpcode 5xx monitor | `string` | `"true"` | no |
| httpcode\_alb\_5xx\_extra\_tags | Extra tags for ALB httpcode 5xx monitor | `list(string)` | `[]` | no | | <a name="input_httpcode_alb_5xx_extra_tags"></a> [httpcode\_alb\_5xx\_extra\_tags](#input\_httpcode\_alb\_5xx\_extra\_tags) | Extra tags for ALB httpcode 5xx monitor | `list(string)` | `[]` | no |
| httpcode\_alb\_5xx\_message | Custom message for ALB httpcode 5xx monitor | `string` | `""` | no | | <a name="input_httpcode_alb_5xx_message"></a> [httpcode\_alb\_5xx\_message](#input\_httpcode\_alb\_5xx\_message) | Custom message for ALB httpcode 5xx monitor | `string` | `""` | no |
| httpcode\_alb\_5xx\_threshold\_critical | loadbalancer 5xx critical threshold in percentage | `number` | `80` | no | | <a name="input_httpcode_alb_5xx_threshold_critical"></a> [httpcode\_alb\_5xx\_threshold\_critical](#input\_httpcode\_alb\_5xx\_threshold\_critical) | loadbalancer 5xx critical threshold in percentage | `number` | `80` | no |
| httpcode\_alb\_5xx\_threshold\_warning | loadbalancer 5xx warning threshold in percentage | `number` | `60` | no | | <a name="input_httpcode_alb_5xx_threshold_warning"></a> [httpcode\_alb\_5xx\_threshold\_warning](#input\_httpcode\_alb\_5xx\_threshold\_warning) | loadbalancer 5xx warning threshold in percentage | `number` | `60` | no |
| httpcode\_alb\_5xx\_time\_aggregator | Monitor aggregator for ALB httpcode 5xx [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_httpcode_alb_5xx_time_aggregator"></a> [httpcode\_alb\_5xx\_time\_aggregator](#input\_httpcode\_alb\_5xx\_time\_aggregator) | Monitor aggregator for ALB httpcode 5xx [available values: min, max or avg] | `string` | `"min"` | no |
| httpcode\_alb\_5xx\_timeframe | Monitor timeframe for ALB httpcode 5xx [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_httpcode_alb_5xx_timeframe"></a> [httpcode\_alb\_5xx\_timeframe](#input\_httpcode\_alb\_5xx\_timeframe) | Monitor timeframe for ALB httpcode 5xx [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| httpcode\_target\_4xx\_enabled | Flag to enable ALB target httpcode 4xx monitor | `string` | `"true"` | no | | <a name="input_httpcode_target_4xx_enabled"></a> [httpcode\_target\_4xx\_enabled](#input\_httpcode\_target\_4xx\_enabled) | Flag to enable ALB target httpcode 4xx monitor | `string` | `"true"` | no |
| httpcode\_target\_4xx\_extra\_tags | Extra tags for ALB target httpcode 4xx monitor | `list(string)` | `[]` | no | | <a name="input_httpcode_target_4xx_extra_tags"></a> [httpcode\_target\_4xx\_extra\_tags](#input\_httpcode\_target\_4xx\_extra\_tags) | Extra tags for ALB target httpcode 4xx monitor | `list(string)` | `[]` | no |
| httpcode\_target\_4xx\_message | Custom message for ALB target httpcode 4xx monitor | `string` | `""` | no | | <a name="input_httpcode_target_4xx_message"></a> [httpcode\_target\_4xx\_message](#input\_httpcode\_target\_4xx\_message) | Custom message for ALB target httpcode 4xx monitor | `string` | `""` | no |
| httpcode\_target\_4xx\_threshold\_critical | target 4xx critical threshold in percentage | `number` | `80` | no | | <a name="input_httpcode_target_4xx_threshold_critical"></a> [httpcode\_target\_4xx\_threshold\_critical](#input\_httpcode\_target\_4xx\_threshold\_critical) | target 4xx critical threshold in percentage | `number` | `80` | no |
| httpcode\_target\_4xx\_threshold\_warning | target 4xx warning threshold in percentage | `number` | `60` | no | | <a name="input_httpcode_target_4xx_threshold_warning"></a> [httpcode\_target\_4xx\_threshold\_warning](#input\_httpcode\_target\_4xx\_threshold\_warning) | target 4xx warning threshold in percentage | `number` | `60` | no |
| httpcode\_target\_4xx\_time\_aggregator | Monitor aggregator for ALB target httpcode 4xx [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_httpcode_target_4xx_time_aggregator"></a> [httpcode\_target\_4xx\_time\_aggregator](#input\_httpcode\_target\_4xx\_time\_aggregator) | Monitor aggregator for ALB target httpcode 4xx [available values: min, max or avg] | `string` | `"min"` | no |
| httpcode\_target\_4xx\_timeframe | Monitor timeframe for ALB target httpcode 4xx [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_httpcode_target_4xx_timeframe"></a> [httpcode\_target\_4xx\_timeframe](#input\_httpcode\_target\_4xx\_timeframe) | Monitor timeframe for ALB target httpcode 4xx [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| httpcode\_target\_5xx\_enabled | Flag to enable ALB target httpcode 5xx monitor | `string` | `"true"` | no | | <a name="input_httpcode_target_5xx_enabled"></a> [httpcode\_target\_5xx\_enabled](#input\_httpcode\_target\_5xx\_enabled) | Flag to enable ALB target httpcode 5xx monitor | `string` | `"true"` | no |
| httpcode\_target\_5xx\_extra\_tags | Extra tags for ALB target httpcode 5xx monitor | `list(string)` | `[]` | no | | <a name="input_httpcode_target_5xx_extra_tags"></a> [httpcode\_target\_5xx\_extra\_tags](#input\_httpcode\_target\_5xx\_extra\_tags) | Extra tags for ALB target httpcode 5xx monitor | `list(string)` | `[]` | no |
| httpcode\_target\_5xx\_message | Custom message for ALB target httpcode 5xx monitor | `string` | `""` | no | | <a name="input_httpcode_target_5xx_message"></a> [httpcode\_target\_5xx\_message](#input\_httpcode\_target\_5xx\_message) | Custom message for ALB target httpcode 5xx monitor | `string` | `""` | no |
| httpcode\_target\_5xx\_threshold\_critical | target 5xx critical threshold in percentage | `number` | `80` | no | | <a name="input_httpcode_target_5xx_threshold_critical"></a> [httpcode\_target\_5xx\_threshold\_critical](#input\_httpcode\_target\_5xx\_threshold\_critical) | target 5xx critical threshold in percentage | `number` | `80` | no |
| httpcode\_target\_5xx\_threshold\_warning | target 5xx warning threshold in percentage | `number` | `60` | no | | <a name="input_httpcode_target_5xx_threshold_warning"></a> [httpcode\_target\_5xx\_threshold\_warning](#input\_httpcode\_target\_5xx\_threshold\_warning) | target 5xx warning threshold in percentage | `number` | `60` | no |
| httpcode\_target\_5xx\_time\_aggregator | Monitor aggregator for ALB target httpcode 5xx [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_httpcode_target_5xx_time_aggregator"></a> [httpcode\_target\_5xx\_time\_aggregator](#input\_httpcode\_target\_5xx\_time\_aggregator) | Monitor aggregator for ALB target httpcode 5xx [available values: min, max or avg] | `string` | `"min"` | no |
| httpcode\_target\_5xx\_timeframe | Monitor timeframe for ALB target httpcode 5xx [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_httpcode_target_5xx_timeframe"></a> [httpcode\_target\_5xx\_timeframe](#input\_httpcode\_target\_5xx\_timeframe) | Monitor timeframe for ALB target httpcode 5xx [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| latency\_enabled | Flag to enable ALB latency monitor | `string` | `"true"` | no | | <a name="input_latency_enabled"></a> [latency\_enabled](#input\_latency\_enabled) | Flag to enable ALB latency monitor | `string` | `"true"` | no |
| latency\_extra\_tags | Extra tags for ALB latency monitor | `list(string)` | `[]` | no | | <a name="input_latency_extra_tags"></a> [latency\_extra\_tags](#input\_latency\_extra\_tags) | Extra tags for ALB latency monitor | `list(string)` | `[]` | no |
| latency\_message | Custom message for ALB latency monitor | `string` | `""` | no | | <a name="input_latency_message"></a> [latency\_message](#input\_latency\_message) | Custom message for ALB latency monitor | `string` | `""` | no |
| latency\_threshold\_critical | latency critical threshold in seconds | `number` | `3` | no | | <a name="input_latency_threshold_critical"></a> [latency\_threshold\_critical](#input\_latency\_threshold\_critical) | latency critical threshold in seconds | `number` | `3` | no |
| latency\_threshold\_warning | latency warning threshold in seconds | `number` | `1` | no | | <a name="input_latency_threshold_warning"></a> [latency\_threshold\_warning](#input\_latency\_threshold\_warning) | latency warning threshold in seconds | `number` | `1` | no |
| latency\_time\_aggregator | Monitor aggregator for ALB latency [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_latency_time_aggregator"></a> [latency\_time\_aggregator](#input\_latency\_time\_aggregator) | Monitor aggregator for ALB latency [available values: min, max or avg] | `string` | `"min"` | no |
| latency\_timeframe | Monitor timeframe for ALB latency [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_latency_timeframe"></a> [latency\_timeframe](#input\_latency\_timeframe) | Monitor timeframe for ALB latency [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| message | Message sent when a monitor is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| ALB\_httpcode\_4xx\_id | id for monitor ALB\_httpcode\_4xx | | <a name="output_ALB_httpcode_4xx_id"></a> [ALB\_httpcode\_4xx\_id](#output\_ALB\_httpcode\_4xx\_id) | id for monitor ALB\_httpcode\_4xx |
| ALB\_httpcode\_5xx\_id | id for monitor ALB\_httpcode\_5xx | | <a name="output_ALB_httpcode_5xx_id"></a> [ALB\_httpcode\_5xx\_id](#output\_ALB\_httpcode\_5xx\_id) | id for monitor ALB\_httpcode\_5xx |
| ALB\_httpcode\_target\_4xx\_id | id for monitor ALB\_httpcode\_target\_4xx | | <a name="output_ALB_httpcode_target_4xx_id"></a> [ALB\_httpcode\_target\_4xx\_id](#output\_ALB\_httpcode\_target\_4xx\_id) | id for monitor ALB\_httpcode\_target\_4xx |
| ALB\_httpcode\_target\_5xx\_id | id for monitor ALB\_httpcode\_target\_5xx | | <a name="output_ALB_httpcode_target_5xx_id"></a> [ALB\_httpcode\_target\_5xx\_id](#output\_ALB\_httpcode\_target\_5xx\_id) | id for monitor ALB\_httpcode\_target\_5xx |
| ALB\_latency\_id | id for monitor ALB\_latency | | <a name="output_ALB_latency_id"></a> [ALB\_latency\_id](#output\_ALB\_latency\_id) | id for monitor ALB\_latency |
| ALB\_no\_healthy\_instances\_id | id for monitor ALB\_no\_healthy\_instances | | <a name="output_ALB_no_healthy_instances_id"></a> [ALB\_no\_healthy\_instances\_id](#output\_ALB\_no\_healthy\_instances\_id) | id for monitor ALB\_no\_healthy\_instances |
## Related documentation ## Related documentation
DataDog blog: [https://www.datadoghq.com/blog/monitor-application-load-balancer/](https://www.datadoghq.com/blog/monitor-application-load-balancer/) DataDog blog: [https://www.datadoghq.com/blog/monitor-application-load-balancer/](https://www.datadoghq.com/blog/monitor-application-load-balancer/)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -25,50 +25,68 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
No modules.
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.API_Gateway_latency](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.API_http_4xx_errors_count](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.API_http_5xx_errors_count](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| artificial\_requests\_count | Number of false requests used to mitigate false positive in case of low trafic | `number` | `5` | no | | <a name="input_artificial_requests_count"></a> [artificial\_requests\_count](#input\_artificial\_requests\_count) | Number of false requests used to mitigate false positive in case of low trafic | `number` | `5` | no |
| environment | Environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| filter\_tags | Tags used for filtering | `string` | `"*"` | no | | <a name="input_filter_tags"></a> [filter\_tags](#input\_filter\_tags) | Tags used for filtering | `string` | `"*"` | no |
| http\_4xx\_requests\_enabled | Flag to enable API Gateway HTTP 4xx requests monitor | `string` | `"true"` | no | | <a name="input_http_4xx_requests_enabled"></a> [http\_4xx\_requests\_enabled](#input\_http\_4xx\_requests\_enabled) | Flag to enable API Gateway HTTP 4xx requests monitor | `string` | `"true"` | no |
| http\_4xx\_requests\_extra\_tags | Extra tags for API Gateway HTTP 4xx requests monitor | `list(string)` | `[]` | no | | <a name="input_http_4xx_requests_extra_tags"></a> [http\_4xx\_requests\_extra\_tags](#input\_http\_4xx\_requests\_extra\_tags) | Extra tags for API Gateway HTTP 4xx requests monitor | `list(string)` | `[]` | no |
| http\_4xx\_requests\_message | Custom message for API Gateway HTTP 4xx requests monitor | `string` | `""` | no | | <a name="input_http_4xx_requests_message"></a> [http\_4xx\_requests\_message](#input\_http\_4xx\_requests\_message) | Custom message for API Gateway HTTP 4xx requests monitor | `string` | `""` | no |
| http\_4xx\_requests\_threshold\_critical | Maximum critical acceptable percent of 4xx errors | `number` | `30` | no | | <a name="input_http_4xx_requests_threshold_critical"></a> [http\_4xx\_requests\_threshold\_critical](#input\_http\_4xx\_requests\_threshold\_critical) | Maximum critical acceptable percent of 4xx errors | `number` | `30` | no |
| http\_4xx\_requests\_threshold\_warning | Maximum warning acceptable percent of 4xx errors | `number` | `15` | no | | <a name="input_http_4xx_requests_threshold_warning"></a> [http\_4xx\_requests\_threshold\_warning](#input\_http\_4xx\_requests\_threshold\_warning) | Maximum warning acceptable percent of 4xx errors | `number` | `15` | no |
| http\_4xx\_requests\_time\_aggregator | Monitor aggregator for API HTTP 4xx requests [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_http_4xx_requests_time_aggregator"></a> [http\_4xx\_requests\_time\_aggregator](#input\_http\_4xx\_requests\_time\_aggregator) | Monitor aggregator for API HTTP 4xx requests [available values: min, max or avg] | `string` | `"min"` | no |
| http\_4xx\_requests\_timeframe | Monitor timeframe for API HTTP 4xx requests [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_http_4xx_requests_timeframe"></a> [http\_4xx\_requests\_timeframe](#input\_http\_4xx\_requests\_timeframe) | Monitor timeframe for API HTTP 4xx requests [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| http\_5xx\_requests\_enabled | Flag to enable API Gateway HTTP 5xx requests monitor | `string` | `"true"` | no | | <a name="input_http_5xx_requests_enabled"></a> [http\_5xx\_requests\_enabled](#input\_http\_5xx\_requests\_enabled) | Flag to enable API Gateway HTTP 5xx requests monitor | `string` | `"true"` | no |
| http\_5xx\_requests\_extra\_tags | Extra tags for API Gateway HTTP 5xx requests monitor | `list(string)` | `[]` | no | | <a name="input_http_5xx_requests_extra_tags"></a> [http\_5xx\_requests\_extra\_tags](#input\_http\_5xx\_requests\_extra\_tags) | Extra tags for API Gateway HTTP 5xx requests monitor | `list(string)` | `[]` | no |
| http\_5xx\_requests\_message | Custom message for API Gateway HTTP 5xx requests monitor | `string` | `""` | no | | <a name="input_http_5xx_requests_message"></a> [http\_5xx\_requests\_message](#input\_http\_5xx\_requests\_message) | Custom message for API Gateway HTTP 5xx requests monitor | `string` | `""` | no |
| http\_5xx\_requests\_threshold\_critical | Maximum critical acceptable percent of 5xx errors | `number` | `20` | no | | <a name="input_http_5xx_requests_threshold_critical"></a> [http\_5xx\_requests\_threshold\_critical](#input\_http\_5xx\_requests\_threshold\_critical) | Maximum critical acceptable percent of 5xx errors | `number` | `20` | no |
| http\_5xx\_requests\_threshold\_warning | Maximum warning acceptable percent of 5xx errors | `number` | `10` | no | | <a name="input_http_5xx_requests_threshold_warning"></a> [http\_5xx\_requests\_threshold\_warning](#input\_http\_5xx\_requests\_threshold\_warning) | Maximum warning acceptable percent of 5xx errors | `number` | `10` | no |
| http\_5xx\_requests\_time\_aggregator | Monitor aggregator for API HTTP 5xx requests [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_http_5xx_requests_time_aggregator"></a> [http\_5xx\_requests\_time\_aggregator](#input\_http\_5xx\_requests\_time\_aggregator) | Monitor aggregator for API HTTP 5xx requests [available values: min, max or avg] | `string` | `"min"` | no |
| http\_5xx\_requests\_timeframe | Monitor timeframe for API HTTP 5xx requests [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_http_5xx_requests_timeframe"></a> [http\_5xx\_requests\_timeframe](#input\_http\_5xx\_requests\_timeframe) | Monitor timeframe for API HTTP 5xx requests [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| latency\_enabled | Flag to enable API Gateway latency monitor | `string` | `"true"` | no | | <a name="input_latency_enabled"></a> [latency\_enabled](#input\_latency\_enabled) | Flag to enable API Gateway latency monitor | `string` | `"true"` | no |
| latency\_extra\_tags | Extra tags for API Gateway latency monitor | `list(string)` | `[]` | no | | <a name="input_latency_extra_tags"></a> [latency\_extra\_tags](#input\_latency\_extra\_tags) | Extra tags for API Gateway latency monitor | `list(string)` | `[]` | no |
| latency\_message | Custom message for API Gateway latency monitor | `string` | `""` | no | | <a name="input_latency_message"></a> [latency\_message](#input\_latency\_message) | Custom message for API Gateway latency monitor | `string` | `""` | no |
| latency\_threshold\_critical | Alerting threshold in milliseconds | `number` | `3000` | no | | <a name="input_latency_threshold_critical"></a> [latency\_threshold\_critical](#input\_latency\_threshold\_critical) | Alerting threshold in milliseconds | `number` | `3000` | no |
| latency\_threshold\_warning | Warning threshold in milliseconds | `number` | `1000` | no | | <a name="input_latency_threshold_warning"></a> [latency\_threshold\_warning](#input\_latency\_threshold\_warning) | Warning threshold in milliseconds | `number` | `1000` | no |
| latency\_time\_aggregator | Monitor aggregator for API Gateway latency [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_latency_time_aggregator"></a> [latency\_time\_aggregator](#input\_latency\_time\_aggregator) | Monitor aggregator for API Gateway latency [available values: min, max or avg] | `string` | `"min"` | no |
| latency\_timeframe | Monitor timeframe for API latency [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_latency_timeframe"></a> [latency\_timeframe](#input\_latency\_timeframe) | Monitor timeframe for API latency [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| message | Message sent when a monitor is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| API\_Gateway\_latency\_id | id for monitor API\_Gateway\_latency | | <a name="output_API_Gateway_latency_id"></a> [API\_Gateway\_latency\_id](#output\_API\_Gateway\_latency\_id) | id for monitor API\_Gateway\_latency |
| API\_http\_4xx\_errors\_count\_id | id for monitor API\_http\_4xx\_errors\_count | | <a name="output_API_http_4xx_errors_count_id"></a> [API\_http\_4xx\_errors\_count\_id](#output\_API\_http\_4xx\_errors\_count\_id) | id for monitor API\_http\_4xx\_errors\_count |
| API\_http\_5xx\_errors\_count\_id | id for monitor API\_http\_5xx\_errors\_count | | <a name="output_API_http_5xx_errors_count_id"></a> [API\_http\_5xx\_errors\_count\_id](#output\_API\_http\_5xx\_errors\_count\_id) | id for monitor API\_http\_5xx\_errors\_count |
## Related documentation ## Related documentation
DataDog documentation: [https://docs.datadoghq.com/integrations/amazon_api_gateway/](https://docs.datadoghq.com/integrations/amazon_api_gateway/) DataDog documentation: [https://docs.datadoghq.com/integrations/amazon_api_gateway/](https://docs.datadoghq.com/integrations/amazon_api_gateway/)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -26,61 +26,83 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a |
| <a name="module_filter-tags-no-host"></a> [filter-tags-no-host](#module\_filter-tags-no-host) | ../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.application_5xx_error_rate](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.application_latency_p90](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.health](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.root_filesystem_usage](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| application\_5xx\_error\_rate\_enabled | Flag to enable Beanstalk application 5xx error ratemonitor | `string` | `"true"` | no | | <a name="input_application_5xx_error_rate_enabled"></a> [application\_5xx\_error\_rate\_enabled](#input\_application\_5xx\_error\_rate\_enabled) | Flag to enable Beanstalk application 5xx error ratemonitor | `string` | `"true"` | no |
| application\_5xx\_error\_rate\_extra\_tags | Extra tags for application 5xx error rate monitor | `list(string)` | `[]` | no | | <a name="input_application_5xx_error_rate_extra_tags"></a> [application\_5xx\_error\_rate\_extra\_tags](#input\_application\_5xx\_error\_rate\_extra\_tags) | Extra tags for application 5xx error rate monitor | `list(string)` | `[]` | no |
| application\_5xx\_error\_rate\_message | Custom message for application 5xx error rate | `string` | `""` | no | | <a name="input_application_5xx_error_rate_message"></a> [application\_5xx\_error\_rate\_message](#input\_application\_5xx\_error\_rate\_message) | Custom message for application 5xx error rate | `string` | `""` | no |
| application\_5xx\_error\_rate\_threshold\_critical | 5xx Error rate critical threshold in percent | `number` | `5` | no | | <a name="input_application_5xx_error_rate_threshold_critical"></a> [application\_5xx\_error\_rate\_threshold\_critical](#input\_application\_5xx\_error\_rate\_threshold\_critical) | 5xx Error rate critical threshold in percent | `number` | `5` | no |
| application\_5xx\_error\_rate\_threshold\_warning | 5xx Error rate warning threshold in percent | `string` | `3` | no | | <a name="input_application_5xx_error_rate_threshold_warning"></a> [application\_5xx\_error\_rate\_threshold\_warning](#input\_application\_5xx\_error\_rate\_threshold\_warning) | 5xx Error rate warning threshold in percent | `string` | `3` | no |
| application\_5xx\_error\_rate\_time\_aggregator | Monitor aggregator for beanstalk application 5xx error rate [available values: min, max or avg] | `string` | `"sum"` | no | | <a name="input_application_5xx_error_rate_time_aggregator"></a> [application\_5xx\_error\_rate\_time\_aggregator](#input\_application\_5xx\_error\_rate\_time\_aggregator) | Monitor aggregator for beanstalk application 5xx error rate [available values: min, max or avg] | `string` | `"sum"` | no |
| application\_5xx\_error\_rate\_timeframe | Monitor timeframe for beanstalk application 5xx error rate [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | | <a name="input_application_5xx_error_rate_timeframe"></a> [application\_5xx\_error\_rate\_timeframe](#input\_application\_5xx\_error\_rate\_timeframe) | Monitor timeframe for beanstalk application 5xx error rate [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no |
| application\_latency\_p90\_enabled | Flag to enable Beanstalk application latency P90 monitor | `string` | `"true"` | no | | <a name="input_application_latency_p90_enabled"></a> [application\_latency\_p90\_enabled](#input\_application\_latency\_p90\_enabled) | Flag to enable Beanstalk application latency P90 monitor | `string` | `"true"` | no |
| application\_latency\_p90\_extra\_tags | Extra tags for application latency P90 monitor | `list(string)` | `[]` | no | | <a name="input_application_latency_p90_extra_tags"></a> [application\_latency\_p90\_extra\_tags](#input\_application\_latency\_p90\_extra\_tags) | Extra tags for application latency P90 monitor | `list(string)` | `[]` | no |
| application\_latency\_p90\_message | Custom message for application latency P90 monitor | `string` | `""` | no | | <a name="input_application_latency_p90_message"></a> [application\_latency\_p90\_message](#input\_application\_latency\_p90\_message) | Custom message for application latency P90 monitor | `string` | `""` | no |
| application\_latency\_p90\_threshold\_critical | P90 Latency critical threshold in seconds | `number` | `0.5` | no | | <a name="input_application_latency_p90_threshold_critical"></a> [application\_latency\_p90\_threshold\_critical](#input\_application\_latency\_p90\_threshold\_critical) | P90 Latency critical threshold in seconds | `number` | `0.5` | no |
| application\_latency\_p90\_threshold\_warning | P90 Latency warning threshold in seconds | `string` | `0.3` | no | | <a name="input_application_latency_p90_threshold_warning"></a> [application\_latency\_p90\_threshold\_warning](#input\_application\_latency\_p90\_threshold\_warning) | P90 Latency warning threshold in seconds | `string` | `0.3` | no |
| application\_latency\_p90\_time\_aggregator | Monitor aggregator for beanstalk application latency P90 [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_application_latency_p90_time_aggregator"></a> [application\_latency\_p90\_time\_aggregator](#input\_application\_latency\_p90\_time\_aggregator) | Monitor aggregator for beanstalk application latency P90 [available values: min, max or avg] | `string` | `"min"` | no |
| application\_latency\_p90\_timeframe | Monitor timeframe for beanstalk application latency P90 [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | | <a name="input_application_latency_p90_timeframe"></a> [application\_latency\_p90\_timeframe](#input\_application\_latency\_p90\_timeframe) | Monitor timeframe for beanstalk application latency P90 [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no |
| environment | Architecture Environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture Environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| health\_enabled | Flag to enable Beanstalk Health monitor | `string` | `"true"` | no | | <a name="input_health_enabled"></a> [health\_enabled](#input\_health\_enabled) | Flag to enable Beanstalk Health monitor | `string` | `"true"` | no |
| health\_extra\_tags | Extra tags for health monitor | `list(string)` | `[]` | no | | <a name="input_health_extra_tags"></a> [health\_extra\_tags](#input\_health\_extra\_tags) | Extra tags for health monitor | `list(string)` | `[]` | no |
| health\_message | Custom message for health monitor | `string` | `""` | no | | <a name="input_health_message"></a> [health\_message](#input\_health\_message) | Custom message for health monitor | `string` | `""` | no |
| health\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `20` | no | | <a name="input_health_no_data_timeframe"></a> [health\_no\_data\_timeframe](#input\_health\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `20` | no |
| health\_threshold\_critical | Health critical threshold (see the `aws.elasticbeanstalk.environment_health` values in the Datadog documentation) | `number` | `20` | no | | <a name="input_health_threshold_critical"></a> [health\_threshold\_critical](#input\_health\_threshold\_critical) | Health critical threshold (see the `aws.elasticbeanstalk.environment_health` values in the Datadog documentation) | `number` | `20` | no |
| health\_threshold\_warning | Health critical threshold (see the `aws.elasticbeanstalk.environment_health` values in the Datadog documentation) | `number` | `15` | no | | <a name="input_health_threshold_warning"></a> [health\_threshold\_warning](#input\_health\_threshold\_warning) | Health critical threshold (see the `aws.elasticbeanstalk.environment_health` values in the Datadog documentation) | `number` | `15` | no |
| health\_time\_aggregator | Monitor aggregator for beanstalk health [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_health_time_aggregator"></a> [health\_time\_aggregator](#input\_health\_time\_aggregator) | Monitor aggregator for beanstalk health [available values: min, max or avg] | `string` | `"min"` | no |
| health\_timeframe | Monitor timeframe for beanstalk health [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_10m"` | no | | <a name="input_health_timeframe"></a> [health\_timeframe](#input\_health\_timeframe) | Monitor timeframe for beanstalk health [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_10m"` | no |
| message | Message sent when an alert is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
| root\_filesystem\_usage\_aggregator | Monitor aggregator for beanstalk instance file system usage [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_root_filesystem_usage_aggregator"></a> [root\_filesystem\_usage\_aggregator](#input\_root\_filesystem\_usage\_aggregator) | Monitor aggregator for beanstalk instance file system usage [available values: min, max or avg] | `string` | `"max"` | no |
| root\_filesystem\_usage\_enabled | Flag to enable Beanstalk instance file system usage monitor | `string` | `"true"` | no | | <a name="input_root_filesystem_usage_enabled"></a> [root\_filesystem\_usage\_enabled](#input\_root\_filesystem\_usage\_enabled) | Flag to enable Beanstalk instance file system usage monitor | `string` | `"true"` | no |
| root\_filesystem\_usage\_extra\_tags | Extra tags for file system usage monitor | `list(string)` | `[]` | no | | <a name="input_root_filesystem_usage_extra_tags"></a> [root\_filesystem\_usage\_extra\_tags](#input\_root\_filesystem\_usage\_extra\_tags) | Extra tags for file system usage monitor | `list(string)` | `[]` | no |
| root\_filesystem\_usage\_message | Custom message for application file system usage | `string` | `""` | no | | <a name="input_root_filesystem_usage_message"></a> [root\_filesystem\_usage\_message](#input\_root\_filesystem\_usage\_message) | Custom message for application file system usage | `string` | `""` | no |
| root\_filesystem\_usage\_threshold\_critical | File system usage critical threshold in percent | `string` | `90` | no | | <a name="input_root_filesystem_usage_threshold_critical"></a> [root\_filesystem\_usage\_threshold\_critical](#input\_root\_filesystem\_usage\_threshold\_critical) | File system usage critical threshold in percent | `string` | `90` | no |
| root\_filesystem\_usage\_threshold\_warning | File system usage warning threshold in percent | `string` | `80` | no | | <a name="input_root_filesystem_usage_threshold_warning"></a> [root\_filesystem\_usage\_threshold\_warning](#input\_root\_filesystem\_usage\_threshold\_warning) | File system usage warning threshold in percent | `string` | `80` | no |
| root\_filesystem\_usage\_timeframe | Monitor timeframe for beanstalk instance file system usage [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_root_filesystem_usage_timeframe"></a> [root\_filesystem\_usage\_timeframe](#input\_root\_filesystem\_usage\_timeframe) | Monitor timeframe for beanstalk instance file system usage [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| root\_filesystem\_usage\_timeout\_h | File system usage auto-resolving state (in hours) | `number` | `0` | no | | <a name="input_root_filesystem_usage_timeout_h"></a> [root\_filesystem\_usage\_timeout\_h](#input\_root\_filesystem\_usage\_timeout\_h) | File system usage auto-resolving state (in hours) | `number` | `0` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| application\_5xx\_error\_rate\_id | id for monitor application\_5xx\_error\_rate | | <a name="output_application_5xx_error_rate_id"></a> [application\_5xx\_error\_rate\_id](#output\_application\_5xx\_error\_rate\_id) | id for monitor application\_5xx\_error\_rate |
| application\_latency\_p90\_id | id for monitor application\_latency\_p90 | | <a name="output_application_latency_p90_id"></a> [application\_latency\_p90\_id](#output\_application\_latency\_p90\_id) | id for monitor application\_latency\_p90 |
| health\_id | id for monitor health | | <a name="output_health_id"></a> [health\_id](#output\_health\_id) | id for monitor health |
| root\_filesystem\_usage\_id | id for monitor root\_filesystem\_usage | | <a name="output_root_filesystem_usage_id"></a> [root\_filesystem\_usage\_id](#output\_root\_filesystem\_usage\_id) | id for monitor root\_filesystem\_usage |
## Related documentation ## Related documentation
Datadog documentation: [https://docs.datadoghq.com/integrations/amazon_elasticbeanstalk/](https://docs.datadoghq.com/integrations/amazon_elasticbeanstalk/) Datadog documentation: [https://docs.datadoghq.com/integrations/amazon_elasticbeanstalk/](https://docs.datadoghq.com/integrations/amazon_elasticbeanstalk/)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -25,51 +25,71 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.service_cpu_utilization](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.service_memory_utilization](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.service_missing_tasks](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| environment | Architecture environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| filter\_tags | Tags used for filtering | `string` | `"*"` | no | | <a name="input_filter_tags"></a> [filter\_tags](#input\_filter\_tags) | Tags used for filtering | `string` | `"*"` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| message | Message sent when a monitor is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
| service\_cpu\_utilization\_enabled | Flag to enable Service CPU Utilization monitor | `string` | `"false"` | no | | <a name="input_service_cpu_utilization_enabled"></a> [service\_cpu\_utilization\_enabled](#input\_service\_cpu\_utilization\_enabled) | Flag to enable Service CPU Utilization monitor | `string` | `"false"` | no |
| service\_cpu\_utilization\_extra\_tags | Extra tags for Service CPU Utilization monitor | `list(string)` | `[]` | no | | <a name="input_service_cpu_utilization_extra_tags"></a> [service\_cpu\_utilization\_extra\_tags](#input\_service\_cpu\_utilization\_extra\_tags) | Extra tags for Service CPU Utilization monitor | `list(string)` | `[]` | no |
| service\_cpu\_utilization\_message | Custom message for the Service CPU Utilization monitor | `string` | `""` | no | | <a name="input_service_cpu_utilization_message"></a> [service\_cpu\_utilization\_message](#input\_service\_cpu\_utilization\_message) | Custom message for the Service CPU Utilization monitor | `string` | `""` | no |
| service\_cpu\_utilization\_threshold\_critical | Critical threshold for the Service CPU Utilization monitor | `string` | `"90"` | no | | <a name="input_service_cpu_utilization_threshold_critical"></a> [service\_cpu\_utilization\_threshold\_critical](#input\_service\_cpu\_utilization\_threshold\_critical) | Critical threshold for the Service CPU Utilization monitor | `string` | `"90"` | no |
| service\_cpu\_utilization\_threshold\_warning | Warning threshold for the Service CPU Utilization monitor | `string` | `"80"` | no | | <a name="input_service_cpu_utilization_threshold_warning"></a> [service\_cpu\_utilization\_threshold\_warning](#input\_service\_cpu\_utilization\_threshold\_warning) | Warning threshold for the Service CPU Utilization monitor | `string` | `"80"` | no |
| service\_cpu\_utilization\_time\_aggregator | Monitor aggregator for Service CPU Utilization [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_service_cpu_utilization_time_aggregator"></a> [service\_cpu\_utilization\_time\_aggregator](#input\_service\_cpu\_utilization\_time\_aggregator) | Monitor aggregator for Service CPU Utilization [available values: min, max or avg] | `string` | `"min"` | no |
| service\_cpu\_utilization\_timeframe | Timeframe for the Service CPU Utilization monitor | `string` | `"last_5m"` | no | | <a name="input_service_cpu_utilization_timeframe"></a> [service\_cpu\_utilization\_timeframe](#input\_service\_cpu\_utilization\_timeframe) | Timeframe for the Service CPU Utilization monitor | `string` | `"last_5m"` | no |
| service\_memory\_utilization\_enabled | Flag to enable Service Memory Utilization monitor | `string` | `"false"` | no | | <a name="input_service_memory_utilization_enabled"></a> [service\_memory\_utilization\_enabled](#input\_service\_memory\_utilization\_enabled) | Flag to enable Service Memory Utilization monitor | `string` | `"false"` | no |
| service\_memory\_utilization\_extra\_tags | Extra tags for Service Memory Utilization monitor | `list(string)` | `[]` | no | | <a name="input_service_memory_utilization_extra_tags"></a> [service\_memory\_utilization\_extra\_tags](#input\_service\_memory\_utilization\_extra\_tags) | Extra tags for Service Memory Utilization monitor | `list(string)` | `[]` | no |
| service\_memory\_utilization\_message | Custom message for the Service Memory Utilization monitor | `string` | `""` | no | | <a name="input_service_memory_utilization_message"></a> [service\_memory\_utilization\_message](#input\_service\_memory\_utilization\_message) | Custom message for the Service Memory Utilization monitor | `string` | `""` | no |
| service\_memory\_utilization\_threshold\_critical | Critical threshold for the Service Memory Utilization monitor | `string` | `90` | no | | <a name="input_service_memory_utilization_threshold_critical"></a> [service\_memory\_utilization\_threshold\_critical](#input\_service\_memory\_utilization\_threshold\_critical) | Critical threshold for the Service Memory Utilization monitor | `string` | `90` | no |
| service\_memory\_utilization\_threshold\_warning | Warning threshold for the Service Memory Utilization monitor | `string` | `85` | no | | <a name="input_service_memory_utilization_threshold_warning"></a> [service\_memory\_utilization\_threshold\_warning](#input\_service\_memory\_utilization\_threshold\_warning) | Warning threshold for the Service Memory Utilization monitor | `string` | `85` | no |
| service\_memory\_utilization\_time\_aggregator | Monitor aggregator for Service Memory Utilization [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_service_memory_utilization_time_aggregator"></a> [service\_memory\_utilization\_time\_aggregator](#input\_service\_memory\_utilization\_time\_aggregator) | Monitor aggregator for Service Memory Utilization [available values: min, max or avg] | `string` | `"min"` | no |
| service\_memory\_utilization\_timeframe | Timeframe for the Service Memory Utilization monitor | `string` | `"last_5m"` | no | | <a name="input_service_memory_utilization_timeframe"></a> [service\_memory\_utilization\_timeframe](#input\_service\_memory\_utilization\_timeframe) | Timeframe for the Service Memory Utilization monitor | `string` | `"last_5m"` | no |
| service\_missing\_tasks\_enabled | Flag to enable Service Missing Tasks monitor | `string` | `"true"` | no | | <a name="input_service_missing_tasks_enabled"></a> [service\_missing\_tasks\_enabled](#input\_service\_missing\_tasks\_enabled) | Flag to enable Service Missing Tasks monitor | `string` | `"true"` | no |
| service\_missing\_tasks\_extra\_tags | Extra tags for Service Missing Tasks monitor | `list(string)` | `[]` | no | | <a name="input_service_missing_tasks_extra_tags"></a> [service\_missing\_tasks\_extra\_tags](#input\_service\_missing\_tasks\_extra\_tags) | Extra tags for Service Missing Tasks monitor | `list(string)` | `[]` | no |
| service\_missing\_tasks\_message | Custom message for the Service Missing Tasks monitor | `string` | `""` | no | | <a name="input_service_missing_tasks_message"></a> [service\_missing\_tasks\_message](#input\_service\_missing\_tasks\_message) | Custom message for the Service Missing Tasks monitor | `string` | `""` | no |
| service\_missing\_tasks\_threshold\_critical | Critical threshold for the Service Missing Tasks monitor | `string` | `60` | no | | <a name="input_service_missing_tasks_threshold_critical"></a> [service\_missing\_tasks\_threshold\_critical](#input\_service\_missing\_tasks\_threshold\_critical) | Critical threshold for the Service Missing Tasks monitor | `string` | `60` | no |
| service\_missing\_tasks\_threshold\_warning | Warning threshold for the Service Missing Tasks monitor | `string` | `80` | no | | <a name="input_service_missing_tasks_threshold_warning"></a> [service\_missing\_tasks\_threshold\_warning](#input\_service\_missing\_tasks\_threshold\_warning) | Warning threshold for the Service Missing Tasks monitor | `string` | `80` | no |
| service\_missing\_tasks\_time\_aggregator | Monitor aggregator for Service Missing Tasks [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_service_missing_tasks_time_aggregator"></a> [service\_missing\_tasks\_time\_aggregator](#input\_service\_missing\_tasks\_time\_aggregator) | Monitor aggregator for Service Missing Tasks [available values: min, max or avg] | `string` | `"min"` | no |
| service\_missing\_tasks\_timeframe | Timeframe for the Service Missing Tasks monitor | `string` | `"last_5m"` | no | | <a name="input_service_missing_tasks_timeframe"></a> [service\_missing\_tasks\_timeframe](#input\_service\_missing\_tasks\_timeframe) | Timeframe for the Service Missing Tasks monitor | `string` | `"last_5m"` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| service\_cpu\_utilization\_id | id for monitor service\_cpu\_utilization | | <a name="output_service_cpu_utilization_id"></a> [service\_cpu\_utilization\_id](#output\_service\_cpu\_utilization\_id) | id for monitor service\_cpu\_utilization |
| service\_memory\_utilization\_id | id for monitor service\_memory\_utilization | | <a name="output_service_memory_utilization_id"></a> [service\_memory\_utilization\_id](#output\_service\_memory\_utilization\_id) | id for monitor service\_memory\_utilization |
| service\_missing\_tasks\_id | id for monitor service\_missing\_tasks | | <a name="output_service_missing_tasks_id"></a> [service\_missing\_tasks\_id](#output\_service\_missing\_tasks\_id) | id for monitor service\_missing\_tasks |
## Related documentation ## Related documentation

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -25,48 +25,68 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.cluster_cpu_utilization](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.cluster_memory_reservation](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.ecs_agent_status](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| agent\_status\_enabled | Flag to enable Agent Status monitor | `string` | `"true"` | no | | <a name="input_agent_status_enabled"></a> [agent\_status\_enabled](#input\_agent\_status\_enabled) | Flag to enable Agent Status monitor | `string` | `"true"` | no |
| agent\_status\_extra\_tags | Extra tags for Agent Status monitor | `list(string)` | `[]` | no | | <a name="input_agent_status_extra_tags"></a> [agent\_status\_extra\_tags](#input\_agent\_status\_extra\_tags) | Extra tags for Agent Status monitor | `list(string)` | `[]` | no |
| agent\_status\_message | Custom message for the Agent Status monitor | `string` | `""` | no | | <a name="input_agent_status_message"></a> [agent\_status\_message](#input\_agent\_status\_message) | Custom message for the Agent Status monitor | `string` | `""` | no |
| agent\_status\_no\_data\_timeframe | Agent status does not respond monitor no data timeframe | `string` | `10` | no | | <a name="input_agent_status_no_data_timeframe"></a> [agent\_status\_no\_data\_timeframe](#input\_agent\_status\_no\_data\_timeframe) | Agent status does not respond monitor no data timeframe | `string` | `10` | no |
| agent\_status\_threshold\_warning | Warning threshold for the Agent Status monitor | `string` | `3` | no | | <a name="input_agent_status_threshold_warning"></a> [agent\_status\_threshold\_warning](#input\_agent\_status\_threshold\_warning) | Warning threshold for the Agent Status monitor | `string` | `3` | no |
| cluster\_cpu\_utilization\_enabled | Flag to enable Cluster CPU utilization monitor | `string` | `"false"` | no | | <a name="input_cluster_cpu_utilization_enabled"></a> [cluster\_cpu\_utilization\_enabled](#input\_cluster\_cpu\_utilization\_enabled) | Flag to enable Cluster CPU utilization monitor | `string` | `"false"` | no |
| cluster\_cpu\_utilization\_extra\_tags | Extra tags for Cluster CPU utilization monitor | `list(string)` | `[]` | no | | <a name="input_cluster_cpu_utilization_extra_tags"></a> [cluster\_cpu\_utilization\_extra\_tags](#input\_cluster\_cpu\_utilization\_extra\_tags) | Extra tags for Cluster CPU utilization monitor | `list(string)` | `[]` | no |
| cluster\_cpu\_utilization\_message | Custom message for the Cluster CPU Utilization monitor | `string` | `""` | no | | <a name="input_cluster_cpu_utilization_message"></a> [cluster\_cpu\_utilization\_message](#input\_cluster\_cpu\_utilization\_message) | Custom message for the Cluster CPU Utilization monitor | `string` | `""` | no |
| cluster\_cpu\_utilization\_threshold\_critical | Critical threshold for the Cluster CPU Utilization monitor | `string` | `90` | no | | <a name="input_cluster_cpu_utilization_threshold_critical"></a> [cluster\_cpu\_utilization\_threshold\_critical](#input\_cluster\_cpu\_utilization\_threshold\_critical) | Critical threshold for the Cluster CPU Utilization monitor | `string` | `90` | no |
| cluster\_cpu\_utilization\_threshold\_warning | Warning threshold for the Cluster CPU Utilization monitor | `string` | `85` | no | | <a name="input_cluster_cpu_utilization_threshold_warning"></a> [cluster\_cpu\_utilization\_threshold\_warning](#input\_cluster\_cpu\_utilization\_threshold\_warning) | Warning threshold for the Cluster CPU Utilization monitor | `string` | `85` | no |
| cluster\_cpu\_utilization\_time\_aggregator | Monitor aggregator for Cluster CPU Utilization [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_cluster_cpu_utilization_time_aggregator"></a> [cluster\_cpu\_utilization\_time\_aggregator](#input\_cluster\_cpu\_utilization\_time\_aggregator) | Monitor aggregator for Cluster CPU Utilization [available values: min, max or avg] | `string` | `"min"` | no |
| cluster\_cpu\_utilization\_timeframe | Timeframe for the Cluster CPU Utilization monitor | `string` | `"last_5m"` | no | | <a name="input_cluster_cpu_utilization_timeframe"></a> [cluster\_cpu\_utilization\_timeframe](#input\_cluster\_cpu\_utilization\_timeframe) | Timeframe for the Cluster CPU Utilization monitor | `string` | `"last_5m"` | no |
| cluster\_memory\_reservation\_enabled | Flag to enable Cluster memory reservation monitor | `string` | `"false"` | no | | <a name="input_cluster_memory_reservation_enabled"></a> [cluster\_memory\_reservation\_enabled](#input\_cluster\_memory\_reservation\_enabled) | Flag to enable Cluster memory reservation monitor | `string` | `"false"` | no |
| cluster\_memory\_reservation\_extra\_tags | Extra tags for Cluster Memory Reservation monitor | `list(string)` | `[]` | no | | <a name="input_cluster_memory_reservation_extra_tags"></a> [cluster\_memory\_reservation\_extra\_tags](#input\_cluster\_memory\_reservation\_extra\_tags) | Extra tags for Cluster Memory Reservation monitor | `list(string)` | `[]` | no |
| cluster\_memory\_reservation\_message | Custom message for the Cluster Memory Reservation monitor | `string` | `""` | no | | <a name="input_cluster_memory_reservation_message"></a> [cluster\_memory\_reservation\_message](#input\_cluster\_memory\_reservation\_message) | Custom message for the Cluster Memory Reservation monitor | `string` | `""` | no |
| cluster\_memory\_reservation\_threshold\_critical | Critical threshold for the Cluster Memory Reservation monitor | `string` | `90` | no | | <a name="input_cluster_memory_reservation_threshold_critical"></a> [cluster\_memory\_reservation\_threshold\_critical](#input\_cluster\_memory\_reservation\_threshold\_critical) | Critical threshold for the Cluster Memory Reservation monitor | `string` | `90` | no |
| cluster\_memory\_reservation\_threshold\_warning | Warning threshold for the Cluster Memory Reservation monitor | `string` | `85` | no | | <a name="input_cluster_memory_reservation_threshold_warning"></a> [cluster\_memory\_reservation\_threshold\_warning](#input\_cluster\_memory\_reservation\_threshold\_warning) | Warning threshold for the Cluster Memory Reservation monitor | `string` | `85` | no |
| cluster\_memory\_reservation\_time\_aggregator | Monitor aggregator for Cluster Memory Reservation [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_cluster_memory_reservation_time_aggregator"></a> [cluster\_memory\_reservation\_time\_aggregator](#input\_cluster\_memory\_reservation\_time\_aggregator) | Monitor aggregator for Cluster Memory Reservation [available values: min, max or avg] | `string` | `"min"` | no |
| cluster\_memory\_reservation\_timeframe | Timeframe for the Cluster Memory Reservation monitor | `string` | `"last_5m"` | no | | <a name="input_cluster_memory_reservation_timeframe"></a> [cluster\_memory\_reservation\_timeframe](#input\_cluster\_memory\_reservation\_timeframe) | Timeframe for the Cluster Memory Reservation monitor | `string` | `"last_5m"` | no |
| environment | Architecture environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| message | Message sent when a monitor is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| cluster\_cpu\_utilization\_id | id for monitor cluster\_cpu\_utilization | | <a name="output_cluster_cpu_utilization_id"></a> [cluster\_cpu\_utilization\_id](#output\_cluster\_cpu\_utilization\_id) | id for monitor cluster\_cpu\_utilization |
| cluster\_memory\_reservation\_id | id for monitor cluster\_memory\_reservation | | <a name="output_cluster_memory_reservation_id"></a> [cluster\_memory\_reservation\_id](#output\_cluster\_memory\_reservation\_id) | id for monitor cluster\_memory\_reservation |
| ecs\_agent\_status\_id | id for monitor ecs\_agent\_status | | <a name="output_ecs_agent_status_id"></a> [ecs\_agent\_status\_id](#output\_ecs\_agent\_status\_id) | id for monitor ecs\_agent\_status |
## Related documentation ## Related documentation

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -25,49 +25,69 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.cpu_utilization](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.memory_utilization](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.service_check](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| cpu\_utilization\_enabled | Flag to enable monitor | `string` | `"false"` | no | | <a name="input_cpu_utilization_enabled"></a> [cpu\_utilization\_enabled](#input\_cpu\_utilization\_enabled) | Flag to enable monitor | `string` | `"false"` | no |
| cpu\_utilization\_extra\_tags | Extra tags for the monitor | `list(string)` | `[]` | no | | <a name="input_cpu_utilization_extra_tags"></a> [cpu\_utilization\_extra\_tags](#input\_cpu\_utilization\_extra\_tags) | Extra tags for the monitor | `list(string)` | `[]` | no |
| cpu\_utilization\_message | Custom message for the monitor | `string` | `""` | no | | <a name="input_cpu_utilization_message"></a> [cpu\_utilization\_message](#input\_cpu\_utilization\_message) | Custom message for the monitor | `string` | `""` | no |
| cpu\_utilization\_threshold\_critical | Critical threshold for the monitor | `string` | `90` | no | | <a name="input_cpu_utilization_threshold_critical"></a> [cpu\_utilization\_threshold\_critical](#input\_cpu\_utilization\_threshold\_critical) | Critical threshold for the monitor | `string` | `90` | no |
| cpu\_utilization\_threshold\_warning | Warning threshold for the monitor | `string` | `85` | no | | <a name="input_cpu_utilization_threshold_warning"></a> [cpu\_utilization\_threshold\_warning](#input\_cpu\_utilization\_threshold\_warning) | Warning threshold for the monitor | `string` | `85` | no |
| cpu\_utilization\_time\_aggregator | Monitor aggregator (min, max or avg) | `string` | `"min"` | no | | <a name="input_cpu_utilization_time_aggregator"></a> [cpu\_utilization\_time\_aggregator](#input\_cpu\_utilization\_time\_aggregator) | Monitor aggregator (min, max or avg) | `string` | `"min"` | no |
| cpu\_utilization\_timeframe | Timeframe for the monitor | `string` | `"last_5m"` | no | | <a name="input_cpu_utilization_timeframe"></a> [cpu\_utilization\_timeframe](#input\_cpu\_utilization\_timeframe) | Timeframe for the monitor | `string` | `"last_5m"` | no |
| environment | Architecture environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `15` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `bool` | `true` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `bool` | `true` | no |
| memory\_utilization\_enabled | Flag to enable Fargate Memory utilization monitor | `string` | `"false"` | no | | <a name="input_memory_utilization_enabled"></a> [memory\_utilization\_enabled](#input\_memory\_utilization\_enabled) | Flag to enable Fargate Memory utilization monitor | `string` | `"false"` | no |
| memory\_utilization\_extra\_tags | Extra tags for Fargate Memory utilization monitor | `list(string)` | `[]` | no | | <a name="input_memory_utilization_extra_tags"></a> [memory\_utilization\_extra\_tags](#input\_memory\_utilization\_extra\_tags) | Extra tags for Fargate Memory utilization monitor | `list(string)` | `[]` | no |
| memory\_utilization\_message | Custom message for the Fargate Memory Utilization monitor | `string` | `""` | no | | <a name="input_memory_utilization_message"></a> [memory\_utilization\_message](#input\_memory\_utilization\_message) | Custom message for the Fargate Memory Utilization monitor | `string` | `""` | no |
| memory\_utilization\_threshold\_critical | Critical threshold for the Fargate Memory Utilization monitor | `string` | `90` | no | | <a name="input_memory_utilization_threshold_critical"></a> [memory\_utilization\_threshold\_critical](#input\_memory\_utilization\_threshold\_critical) | Critical threshold for the Fargate Memory Utilization monitor | `string` | `90` | no |
| memory\_utilization\_threshold\_warning | Warning threshold for the Fargate Memory Utilization monitor | `string` | `85` | no | | <a name="input_memory_utilization_threshold_warning"></a> [memory\_utilization\_threshold\_warning](#input\_memory\_utilization\_threshold\_warning) | Warning threshold for the Fargate Memory Utilization monitor | `string` | `85` | no |
| memory\_utilization\_time\_aggregator | Monitor aggregator for Fargate Memory Utilization [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_memory_utilization_time_aggregator"></a> [memory\_utilization\_time\_aggregator](#input\_memory\_utilization\_time\_aggregator) | Monitor aggregator for Fargate Memory Utilization [available values: min, max or avg] | `string` | `"min"` | no |
| memory\_utilization\_timeframe | Timeframe for the Fargate Memory Utilization monitor | `string` | `"last_5m"` | no | | <a name="input_memory_utilization_timeframe"></a> [memory\_utilization\_timeframe](#input\_memory\_utilization\_timeframe) | Timeframe for the Fargate Memory Utilization monitor | `string` | `"last_5m"` | no |
| message | Message sent when a monitor is triggered | `string` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when a monitor is triggered | `string` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
| service\_check\_enabled | Flag to enable monitor | `bool` | `true` | no | | <a name="input_service_check_enabled"></a> [service\_check\_enabled](#input\_service\_check\_enabled) | Flag to enable monitor | `bool` | `true` | no |
| service\_check\_extra\_tags | Extra tags for the monitor | `list(string)` | `[]` | no | | <a name="input_service_check_extra_tags"></a> [service\_check\_extra\_tags](#input\_service\_check\_extra\_tags) | Extra tags for the monitor | `list(string)` | `[]` | no |
| service\_check\_message | Custom message for the monitor | `string` | `""` | no | | <a name="input_service_check_message"></a> [service\_check\_message](#input\_service\_check\_message) | Custom message for the monitor | `string` | `""` | no |
| service\_check\_no\_data\_timeframe | No data timeframe in minutes | `number` | `10` | no | | <a name="input_service_check_no_data_timeframe"></a> [service\_check\_no\_data\_timeframe](#input\_service\_check\_no\_data\_timeframe) | No data timeframe in minutes | `number` | `10` | no |
| service\_check\_threshold\_warning | Warning threshold | `number` | `3` | no | | <a name="input_service_check_threshold_warning"></a> [service\_check\_threshold\_warning](#input\_service\_check\_threshold\_warning) | Warning threshold | `number` | `3` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| cpu\_utilization\_id | id for monitor cpu\_utilization | | <a name="output_cpu_utilization_id"></a> [cpu\_utilization\_id](#output\_cpu\_utilization\_id) | id for monitor cpu\_utilization |
| memory\_utilization\_id | id for monitor memory\_utilization | | <a name="output_memory_utilization_id"></a> [memory\_utilization\_id](#output\_memory\_utilization\_id) | id for monitor memory\_utilization |
| service\_check\_id | id for monitor service\_check | | <a name="output_service_check_id"></a> [service\_check\_id](#output\_service\_check\_id) | id for monitor service\_check |
## Related documentation ## Related documentation
[Official DataDog documentation on ECS Fargate](https://docs.datadoghq.com/integrations/ecs_fargate/) [Official DataDog documentation on ECS Fargate](https://docs.datadoghq.com/integrations/ecs_fargate/)

View File

@ -27,7 +27,7 @@ EOQ
include_tags = true include_tags = true
tags = concat(["env:${var.environment}", "type:cloud", "provider:aws", "resource:ecs_fargate", "team:claranet", "created-by:terraform", "category:service"], var.service_check_extra_tags) tags = concat(["env:${var.environment}", "type:cloud", "provider:aws", "resource:ecs_fargate", "team:claranet", "created-by:terraform", "category:service"], var.service_check_extra_tags)
} }
resource "datadog_monitor" "cpu_utilization" { resource "datadog_monitor" "cpu_utilization" {

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -28,71 +28,94 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.elasticache_eviction](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.elasticache_eviction_growing](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.elasticache_free_memory](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.elasticache_max_connection](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.elasticache_no_connection](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.elasticache_swap](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| elasticache\_max\_connection\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | | <a name="input_elasticache_max_connection_no_data_timeframe"></a> [elasticache\_max\_connection\_no\_data\_timeframe](#input\_elasticache\_max\_connection\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no |
| environment | Infrastructure Environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Infrastructure Environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| eviction\_enabled | Flag to enable Elasticache eviction monitor | `string` | `"true"` | no | | <a name="input_eviction_enabled"></a> [eviction\_enabled](#input\_eviction\_enabled) | Flag to enable Elasticache eviction monitor | `string` | `"true"` | no |
| eviction\_extra\_tags | Extra tags for Elasticache eviction monitor | `list(string)` | `[]` | no | | <a name="input_eviction_extra_tags"></a> [eviction\_extra\_tags](#input\_eviction\_extra\_tags) | Extra tags for Elasticache eviction monitor | `list(string)` | `[]` | no |
| eviction\_growing\_condition\_timeframe | Monitor condition timeframe for Elasticache eviction growing [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_eviction_growing_condition_timeframe"></a> [eviction\_growing\_condition\_timeframe](#input\_eviction\_growing\_condition\_timeframe) | Monitor condition timeframe for Elasticache eviction growing [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| eviction\_growing\_enabled | Flag to enable Elasticache eviction growing monitor | `string` | `"true"` | no | | <a name="input_eviction_growing_enabled"></a> [eviction\_growing\_enabled](#input\_eviction\_growing\_enabled) | Flag to enable Elasticache eviction growing monitor | `string` | `"true"` | no |
| eviction\_growing\_extra\_tags | Extra tags for Elasticache eviction growing monitor | `list(string)` | `[]` | no | | <a name="input_eviction_growing_extra_tags"></a> [eviction\_growing\_extra\_tags](#input\_eviction\_growing\_extra\_tags) | Extra tags for Elasticache eviction growing monitor | `list(string)` | `[]` | no |
| eviction\_growing\_message | Custom message for Elasticache eviction growing monitor | `string` | `""` | no | | <a name="input_eviction_growing_message"></a> [eviction\_growing\_message](#input\_eviction\_growing\_message) | Custom message for Elasticache eviction growing monitor | `string` | `""` | no |
| eviction\_growing\_threshold\_critical | Elasticache eviction growing critical threshold in percentage | `string` | `30` | no | | <a name="input_eviction_growing_threshold_critical"></a> [eviction\_growing\_threshold\_critical](#input\_eviction\_growing\_threshold\_critical) | Elasticache eviction growing critical threshold in percentage | `string` | `30` | no |
| eviction\_growing\_threshold\_warning | Elasticache eviction growing warning threshold in percentage | `string` | `10` | no | | <a name="input_eviction_growing_threshold_warning"></a> [eviction\_growing\_threshold\_warning](#input\_eviction\_growing\_threshold\_warning) | Elasticache eviction growing warning threshold in percentage | `string` | `10` | no |
| eviction\_growing\_timeframe | Monitor timeframe for Elasticache eviction growing [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_eviction_growing_timeframe"></a> [eviction\_growing\_timeframe](#input\_eviction\_growing\_timeframe) | Monitor timeframe for Elasticache eviction growing [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| eviction\_message | Custom message for Elasticache eviction monitor | `string` | `""` | no | | <a name="input_eviction_message"></a> [eviction\_message](#input\_eviction\_message) | Custom message for Elasticache eviction monitor | `string` | `""` | no |
| eviction\_threshold\_critical | Elasticache free memory critical threshold in percentage | `string` | `30` | no | | <a name="input_eviction_threshold_critical"></a> [eviction\_threshold\_critical](#input\_eviction\_threshold\_critical) | Elasticache free memory critical threshold in percentage | `string` | `30` | no |
| eviction\_threshold\_warning | Elasticache free memory warning threshold in percentage | `string` | `0` | no | | <a name="input_eviction_threshold_warning"></a> [eviction\_threshold\_warning](#input\_eviction\_threshold\_warning) | Elasticache free memory warning threshold in percentage | `string` | `0` | no |
| eviction\_timeframe | Monitor timeframe for Elasticache eviction [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | | <a name="input_eviction_timeframe"></a> [eviction\_timeframe](#input\_eviction\_timeframe) | Monitor timeframe for Elasticache eviction [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| free\_memory\_condition\_timeframe | Monitor condition timeframe for Elasticache free memory [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | | <a name="input_free_memory_condition_timeframe"></a> [free\_memory\_condition\_timeframe](#input\_free\_memory\_condition\_timeframe) | Monitor condition timeframe for Elasticache free memory [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no |
| free\_memory\_enabled | Flag to enable Elasticache free memory monitor | `string` | `"true"` | no | | <a name="input_free_memory_enabled"></a> [free\_memory\_enabled](#input\_free\_memory\_enabled) | Flag to enable Elasticache free memory monitor | `string` | `"true"` | no |
| free\_memory\_extra\_tags | Extra tags for Elasticache free memory monitor | `list(string)` | `[]` | no | | <a name="input_free_memory_extra_tags"></a> [free\_memory\_extra\_tags](#input\_free\_memory\_extra\_tags) | Extra tags for Elasticache free memory monitor | `list(string)` | `[]` | no |
| free\_memory\_message | Custom message for Elasticache free memory monitor | `string` | `""` | no | | <a name="input_free_memory_message"></a> [free\_memory\_message](#input\_free\_memory\_message) | Custom message for Elasticache free memory monitor | `string` | `""` | no |
| free\_memory\_threshold\_critical | Elasticache free memory critical threshold in percentage | `string` | `-70` | no | | <a name="input_free_memory_threshold_critical"></a> [free\_memory\_threshold\_critical](#input\_free\_memory\_threshold\_critical) | Elasticache free memory critical threshold in percentage | `string` | `-70` | no |
| free\_memory\_threshold\_warning | Elasticache free memory warning threshold in percentage | `string` | `-50` | no | | <a name="input_free_memory_threshold_warning"></a> [free\_memory\_threshold\_warning](#input\_free\_memory\_threshold\_warning) | Elasticache free memory warning threshold in percentage | `string` | `-50` | no |
| free\_memory\_timeframe | Monitor timeframe for Elasticache free memory [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | | <a name="input_free_memory_timeframe"></a> [free\_memory\_timeframe](#input\_free\_memory\_timeframe) | Monitor timeframe for Elasticache free memory [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no |
| max\_connection\_enabled | Flag to enable Elasticache max connection monitor | `string` | `"true"` | no | | <a name="input_max_connection_enabled"></a> [max\_connection\_enabled](#input\_max\_connection\_enabled) | Flag to enable Elasticache max connection monitor | `string` | `"true"` | no |
| max\_connection\_extra\_tags | Extra tags for Elasticache max connection monitor | `list(string)` | `[]` | no | | <a name="input_max_connection_extra_tags"></a> [max\_connection\_extra\_tags](#input\_max\_connection\_extra\_tags) | Extra tags for Elasticache max connection monitor | `list(string)` | `[]` | no |
| max\_connection\_message | Custom message for Elasticache max connection monitor | `string` | `""` | no | | <a name="input_max_connection_message"></a> [max\_connection\_message](#input\_max\_connection\_message) | Custom message for Elasticache max connection monitor | `string` | `""` | no |
| max\_connection\_time\_aggregator | Monitor aggregator for Elasticache max connection [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_max_connection_time_aggregator"></a> [max\_connection\_time\_aggregator](#input\_max\_connection\_time\_aggregator) | Monitor aggregator for Elasticache max connection [available values: min, max or avg] | `string` | `"max"` | no |
| max\_connection\_timeframe | Monitor timeframe for Elasticache max connection [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_max_connection_timeframe"></a> [max\_connection\_timeframe](#input\_max\_connection\_timeframe) | Monitor timeframe for Elasticache max connection [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| message | Message sent when an alert is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| no\_connection\_enabled | Flag to enable Elasticache no connection monitor | `string` | `"true"` | no | | <a name="input_no_connection_enabled"></a> [no\_connection\_enabled](#input\_no\_connection\_enabled) | Flag to enable Elasticache no connection monitor | `string` | `"true"` | no |
| no\_connection\_extra\_tags | Extra tags for Elasticache no connection monitor | `list(string)` | `[]` | no | | <a name="input_no_connection_extra_tags"></a> [no\_connection\_extra\_tags](#input\_no\_connection\_extra\_tags) | Extra tags for Elasticache no connection monitor | `list(string)` | `[]` | no |
| no\_connection\_message | Custom message for Elasticache no connection monitor | `string` | `""` | no | | <a name="input_no_connection_message"></a> [no\_connection\_message](#input\_no\_connection\_message) | Custom message for Elasticache no connection monitor | `string` | `""` | no |
| no\_connection\_time\_aggregator | Monitor aggregator for Elasticache no connection [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_no_connection_time_aggregator"></a> [no\_connection\_time\_aggregator](#input\_no\_connection\_time\_aggregator) | Monitor aggregator for Elasticache no connection [available values: min, max or avg] | `string` | `"min"` | no |
| no\_connection\_timeframe | Monitor timeframe for Elasticache no connection [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_no_connection_timeframe"></a> [no\_connection\_timeframe](#input\_no\_connection\_timeframe) | Monitor timeframe for Elasticache no connection [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
| swap\_enabled | Flag to enable Elasticache swap monitor | `string` | `"true"` | no | | <a name="input_swap_enabled"></a> [swap\_enabled](#input\_swap\_enabled) | Flag to enable Elasticache swap monitor | `string` | `"true"` | no |
| swap\_extra\_tags | Extra tags for Elasticache swap monitor | `list(string)` | `[]` | no | | <a name="input_swap_extra_tags"></a> [swap\_extra\_tags](#input\_swap\_extra\_tags) | Extra tags for Elasticache swap monitor | `list(string)` | `[]` | no |
| swap\_message | Custom message for Elasticache swap monitor | `string` | `""` | no | | <a name="input_swap_message"></a> [swap\_message](#input\_swap\_message) | Custom message for Elasticache swap monitor | `string` | `""` | no |
| swap\_threshold\_critical | Elasticache swap critical threshold in bytes | `string` | `50000000` | no | | <a name="input_swap_threshold_critical"></a> [swap\_threshold\_critical](#input\_swap\_threshold\_critical) | Elasticache swap critical threshold in bytes | `string` | `50000000` | no |
| swap\_threshold\_warning | Elasticache swap warning threshold in bytes | `string` | `0` | no | | <a name="input_swap_threshold_warning"></a> [swap\_threshold\_warning](#input\_swap\_threshold\_warning) | Elasticache swap warning threshold in bytes | `string` | `0` | no |
| swap\_time\_aggregator | Monitor aggregator for Elasticache memcached swap [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_swap_time_aggregator"></a> [swap\_time\_aggregator](#input\_swap\_time\_aggregator) | Monitor aggregator for Elasticache memcached swap [available values: min, max or avg] | `string` | `"min"` | no |
| swap\_timeframe | Monitor timeframe for Elasticache swap [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_swap_timeframe"></a> [swap\_timeframe](#input\_swap\_timeframe) | Monitor timeframe for Elasticache swap [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| elasticache\_eviction\_growing\_id | id for monitor elasticache\_eviction\_growing | | <a name="output_elasticache_eviction_growing_id"></a> [elasticache\_eviction\_growing\_id](#output\_elasticache\_eviction\_growing\_id) | id for monitor elasticache\_eviction\_growing |
| elasticache\_eviction\_id | id for monitor elasticache\_eviction | | <a name="output_elasticache_eviction_id"></a> [elasticache\_eviction\_id](#output\_elasticache\_eviction\_id) | id for monitor elasticache\_eviction |
| elasticache\_free\_memory\_id | id for monitor elasticache\_free\_memory | | <a name="output_elasticache_free_memory_id"></a> [elasticache\_free\_memory\_id](#output\_elasticache\_free\_memory\_id) | id for monitor elasticache\_free\_memory |
| elasticache\_max\_connection\_id | id for monitor elasticache\_max\_connection | | <a name="output_elasticache_max_connection_id"></a> [elasticache\_max\_connection\_id](#output\_elasticache\_max\_connection\_id) | id for monitor elasticache\_max\_connection |
| elasticache\_no\_connection\_id | id for monitor elasticache\_no\_connection | | <a name="output_elasticache_no_connection_id"></a> [elasticache\_no\_connection\_id](#output\_elasticache\_no\_connection\_id) | id for monitor elasticache\_no\_connection |
| elasticache\_swap\_id | id for monitor elasticache\_swap | | <a name="output_elasticache_swap_id"></a> [elasticache\_swap\_id](#output\_elasticache\_swap\_id) | id for monitor elasticache\_swap |
## Related documentation ## Related documentation
DataDog documentation: [https://docs.datadoghq.com/integrations/amazon_elasticache/](https://docs.datadoghq.com/integrations/amazon_elasticache/) DataDog documentation: [https://docs.datadoghq.com/integrations/amazon_elasticache/](https://docs.datadoghq.com/integrations/amazon_elasticache/)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -24,44 +24,63 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.memcached_cpu_high](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.memcached_get_hits](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| cpu\_high\_enabled | Flag to enable Elasticache memcached cpu high monitor | `string` | `"true"` | no | | <a name="input_cpu_high_enabled"></a> [cpu\_high\_enabled](#input\_cpu\_high\_enabled) | Flag to enable Elasticache memcached cpu high monitor | `string` | `"true"` | no |
| cpu\_high\_extra\_tags | Extra tags for Elasticache memcached cpu high monitor | `list(string)` | `[]` | no | | <a name="input_cpu_high_extra_tags"></a> [cpu\_high\_extra\_tags](#input\_cpu\_high\_extra\_tags) | Extra tags for Elasticache memcached cpu high monitor | `list(string)` | `[]` | no |
| cpu\_high\_message | Custom message for Elasticache memcached cpu high monitor | `string` | `""` | no | | <a name="input_cpu_high_message"></a> [cpu\_high\_message](#input\_cpu\_high\_message) | Custom message for Elasticache memcached cpu high monitor | `string` | `""` | no |
| cpu\_high\_threshold\_critical | Elasticache memcached cpu high critical threshold in percentage | `string` | `90` | no | | <a name="input_cpu_high_threshold_critical"></a> [cpu\_high\_threshold\_critical](#input\_cpu\_high\_threshold\_critical) | Elasticache memcached cpu high critical threshold in percentage | `string` | `90` | no |
| cpu\_high\_threshold\_warning | Elasticache memcached cpu high warning threshold in percentage | `string` | `75` | no | | <a name="input_cpu_high_threshold_warning"></a> [cpu\_high\_threshold\_warning](#input\_cpu\_high\_threshold\_warning) | Elasticache memcached cpu high warning threshold in percentage | `string` | `75` | no |
| cpu\_high\_time\_aggregator | Monitor aggregator for Elasticache memcached cpu high [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_cpu_high_time_aggregator"></a> [cpu\_high\_time\_aggregator](#input\_cpu\_high\_time\_aggregator) | Monitor aggregator for Elasticache memcached cpu high [available values: min, max or avg] | `string` | `"min"` | no |
| cpu\_high\_timeframe | Monitor timeframe for Elasticache memcached cpu high [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | | <a name="input_cpu_high_timeframe"></a> [cpu\_high\_timeframe](#input\_cpu\_high\_timeframe) | Monitor timeframe for Elasticache memcached cpu high [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no |
| environment | Infrastructure Environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Infrastructure Environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| get\_hits\_enabled | Flag to enable Elasticache memcached get hits monitor | `string` | `"true"` | no | | <a name="input_get_hits_enabled"></a> [get\_hits\_enabled](#input\_get\_hits\_enabled) | Flag to enable Elasticache memcached get hits monitor | `string` | `"true"` | no |
| get\_hits\_extra\_tags | Extra tags for Elasticache memcached get hits monitor | `list(string)` | `[]` | no | | <a name="input_get_hits_extra_tags"></a> [get\_hits\_extra\_tags](#input\_get\_hits\_extra\_tags) | Extra tags for Elasticache memcached get hits monitor | `list(string)` | `[]` | no |
| get\_hits\_message | Custom message for Elasticache memcached get hits monitor | `string` | `""` | no | | <a name="input_get_hits_message"></a> [get\_hits\_message](#input\_get\_hits\_message) | Custom message for Elasticache memcached get hits monitor | `string` | `""` | no |
| get\_hits\_threshold\_critical | Elasticache memcached get hits critical threshold in percentage | `string` | `60` | no | | <a name="input_get_hits_threshold_critical"></a> [get\_hits\_threshold\_critical](#input\_get\_hits\_threshold\_critical) | Elasticache memcached get hits critical threshold in percentage | `string` | `60` | no |
| get\_hits\_threshold\_warning | Elasticache memcached get hits warning threshold in percentage | `string` | `80` | no | | <a name="input_get_hits_threshold_warning"></a> [get\_hits\_threshold\_warning](#input\_get\_hits\_threshold\_warning) | Elasticache memcached get hits warning threshold in percentage | `string` | `80` | no |
| get\_hits\_time\_aggregator | Monitor aggregator for Elasticache memcached get hits [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_get_hits_time_aggregator"></a> [get\_hits\_time\_aggregator](#input\_get\_hits\_time\_aggregator) | Monitor aggregator for Elasticache memcached get hits [available values: min, max or avg] | `string` | `"max"` | no |
| get\_hits\_timeframe | Monitor timeframe for Elasticache memcached get hits [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | | <a name="input_get_hits_timeframe"></a> [get\_hits\_timeframe](#input\_get\_hits\_timeframe) | Monitor timeframe for Elasticache memcached get hits [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no |
| memcached\_cpu\_high\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `30` | no | | <a name="input_memcached_cpu_high_no_data_timeframe"></a> [memcached\_cpu\_high\_no\_data\_timeframe](#input\_memcached\_cpu\_high\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `30` | no |
| message | Message sent when an alert is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| memcached\_cpu\_high\_id | id for monitor memcached\_cpu\_high | | <a name="output_memcached_cpu_high_id"></a> [memcached\_cpu\_high\_id](#output\_memcached\_cpu\_high\_id) | id for monitor memcached\_cpu\_high |
| memcached\_get\_hits\_id | id for monitor memcached\_get\_hits | | <a name="output_memcached_get_hits_id"></a> [memcached\_get\_hits\_id](#output\_memcached\_get\_hits\_id) | id for monitor memcached\_get\_hits |
## Related documentation ## Related documentation
DataDog documentation: DataDog documentation:

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -26,57 +26,78 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.redis_cache_hits](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.redis_commands](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.redis_cpu_high](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.redis_replication_lag](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| cache\_hits\_enabled | Flag to enable Elasticache redis cache hits monitor | `string` | `"true"` | no | | <a name="input_cache_hits_enabled"></a> [cache\_hits\_enabled](#input\_cache\_hits\_enabled) | Flag to enable Elasticache redis cache hits monitor | `string` | `"true"` | no |
| cache\_hits\_extra\_tags | Extra tags for Elasticache redis cache hits monitor | `list(string)` | `[]` | no | | <a name="input_cache_hits_extra_tags"></a> [cache\_hits\_extra\_tags](#input\_cache\_hits\_extra\_tags) | Extra tags for Elasticache redis cache hits monitor | `list(string)` | `[]` | no |
| cache\_hits\_message | Custom message for Elasticache redis cache hits monitor | `string` | `""` | no | | <a name="input_cache_hits_message"></a> [cache\_hits\_message](#input\_cache\_hits\_message) | Custom message for Elasticache redis cache hits monitor | `string` | `""` | no |
| cache\_hits\_threshold\_critical | Elasticache redis cache hits critical threshold in percentage | `string` | `60` | no | | <a name="input_cache_hits_threshold_critical"></a> [cache\_hits\_threshold\_critical](#input\_cache\_hits\_threshold\_critical) | Elasticache redis cache hits critical threshold in percentage | `string` | `60` | no |
| cache\_hits\_threshold\_warning | Elasticache redis cache hits warning threshold in percentage | `string` | `80` | no | | <a name="input_cache_hits_threshold_warning"></a> [cache\_hits\_threshold\_warning](#input\_cache\_hits\_threshold\_warning) | Elasticache redis cache hits warning threshold in percentage | `string` | `80` | no |
| cache\_hits\_time\_aggregator | Monitor aggregator for Elasticache redis cache hits [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_cache_hits_time_aggregator"></a> [cache\_hits\_time\_aggregator](#input\_cache\_hits\_time\_aggregator) | Monitor aggregator for Elasticache redis cache hits [available values: min, max or avg] | `string` | `"max"` | no |
| cache\_hits\_timeframe | Monitor timeframe for Elasticache redis cache hits [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | | <a name="input_cache_hits_timeframe"></a> [cache\_hits\_timeframe](#input\_cache\_hits\_timeframe) | Monitor timeframe for Elasticache redis cache hits [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no |
| commands\_enabled | Flag to enable Elasticache redis commands monitor | `string` | `"true"` | no | | <a name="input_commands_enabled"></a> [commands\_enabled](#input\_commands\_enabled) | Flag to enable Elasticache redis commands monitor | `string` | `"true"` | no |
| commands\_extra\_tags | Extra tags for Elasticache redis commands monitor | `list(string)` | `[]` | no | | <a name="input_commands_extra_tags"></a> [commands\_extra\_tags](#input\_commands\_extra\_tags) | Extra tags for Elasticache redis commands monitor | `list(string)` | `[]` | no |
| commands\_message | Custom message for Elasticache redis commands monitor | `string` | `""` | no | | <a name="input_commands_message"></a> [commands\_message](#input\_commands\_message) | Custom message for Elasticache redis commands monitor | `string` | `""` | no |
| commands\_timeframe | Monitor timeframe for Elasticache redis commands [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_commands_timeframe"></a> [commands\_timeframe](#input\_commands\_timeframe) | Monitor timeframe for Elasticache redis commands [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| cpu\_high\_enabled | Flag to enable Elasticache redis cpu high monitor | `string` | `"true"` | no | | <a name="input_cpu_high_enabled"></a> [cpu\_high\_enabled](#input\_cpu\_high\_enabled) | Flag to enable Elasticache redis cpu high monitor | `string` | `"true"` | no |
| cpu\_high\_extra\_tags | Extra tags for Elasticache redis cpu high monitor | `list(string)` | `[]` | no | | <a name="input_cpu_high_extra_tags"></a> [cpu\_high\_extra\_tags](#input\_cpu\_high\_extra\_tags) | Extra tags for Elasticache redis cpu high monitor | `list(string)` | `[]` | no |
| cpu\_high\_message | Custom message for Elasticache redis cpu high monitor | `string` | `""` | no | | <a name="input_cpu_high_message"></a> [cpu\_high\_message](#input\_cpu\_high\_message) | Custom message for Elasticache redis cpu high monitor | `string` | `""` | no |
| cpu\_high\_threshold\_critical | Elasticache redis cpu high critical threshold in percentage | `string` | `90` | no | | <a name="input_cpu_high_threshold_critical"></a> [cpu\_high\_threshold\_critical](#input\_cpu\_high\_threshold\_critical) | Elasticache redis cpu high critical threshold in percentage | `string` | `90` | no |
| cpu\_high\_threshold\_warning | Elasticache redis cpu high warning threshold in percentage | `string` | `75` | no | | <a name="input_cpu_high_threshold_warning"></a> [cpu\_high\_threshold\_warning](#input\_cpu\_high\_threshold\_warning) | Elasticache redis cpu high warning threshold in percentage | `string` | `75` | no |
| cpu\_high\_time\_aggregator | Monitor aggregator for Elasticache redis cpu high [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_cpu_high_time_aggregator"></a> [cpu\_high\_time\_aggregator](#input\_cpu\_high\_time\_aggregator) | Monitor aggregator for Elasticache redis cpu high [available values: min, max or avg] | `string` | `"min"` | no |
| cpu\_high\_timeframe | Monitor timeframe for Elasticache redis cpu high [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | | <a name="input_cpu_high_timeframe"></a> [cpu\_high\_timeframe](#input\_cpu\_high\_timeframe) | Monitor timeframe for Elasticache redis cpu high [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no |
| environment | Infrastructure Environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Infrastructure Environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| message | Message sent when an alert is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
| redis\_cpu\_high\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `30` | no | | <a name="input_redis_cpu_high_no_data_timeframe"></a> [redis\_cpu\_high\_no\_data\_timeframe](#input\_redis\_cpu\_high\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `30` | no |
| replication\_lag\_enabled | Flag to enable Elasticache redis replication lag monitor | `string` | `"true"` | no | | <a name="input_replication_lag_enabled"></a> [replication\_lag\_enabled](#input\_replication\_lag\_enabled) | Flag to enable Elasticache redis replication lag monitor | `string` | `"true"` | no |
| replication\_lag\_extra\_tags | Extra tags for Elasticache redis replication lag monitor | `list(string)` | `[]` | no | | <a name="input_replication_lag_extra_tags"></a> [replication\_lag\_extra\_tags](#input\_replication\_lag\_extra\_tags) | Extra tags for Elasticache redis replication lag monitor | `list(string)` | `[]` | no |
| replication\_lag\_message | Custom message for Elasticache redis replication lag monitor | `string` | `""` | no | | <a name="input_replication_lag_message"></a> [replication\_lag\_message](#input\_replication\_lag\_message) | Custom message for Elasticache redis replication lag monitor | `string` | `""` | no |
| replication\_lag\_threshold\_critical | Elasticache redis replication lag critical threshold in seconds | `string` | `180` | no | | <a name="input_replication_lag_threshold_critical"></a> [replication\_lag\_threshold\_critical](#input\_replication\_lag\_threshold\_critical) | Elasticache redis replication lag critical threshold in seconds | `string` | `180` | no |
| replication\_lag\_threshold\_warning | Elasticache redis replication lag warning threshold in seconds | `string` | `90` | no | | <a name="input_replication_lag_threshold_warning"></a> [replication\_lag\_threshold\_warning](#input\_replication\_lag\_threshold\_warning) | Elasticache redis replication lag warning threshold in seconds | `string` | `90` | no |
| replication\_lag\_time\_aggregator | Monitor aggregator for Elasticache redis replication lag [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_replication_lag_time_aggregator"></a> [replication\_lag\_time\_aggregator](#input\_replication\_lag\_time\_aggregator) | Monitor aggregator for Elasticache redis replication lag [available values: min, max or avg] | `string` | `"min"` | no |
| replication\_lag\_timeframe | Monitor timeframe for Elasticache redis replication lag [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_10m"` | no | | <a name="input_replication_lag_timeframe"></a> [replication\_lag\_timeframe](#input\_replication\_lag\_timeframe) | Monitor timeframe for Elasticache redis replication lag [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_10m"` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| redis\_cache\_hits\_id | id for monitor redis\_cache\_hits | | <a name="output_redis_cache_hits_id"></a> [redis\_cache\_hits\_id](#output\_redis\_cache\_hits\_id) | id for monitor redis\_cache\_hits |
| redis\_commands\_id | id for monitor redis\_commands | | <a name="output_redis_commands_id"></a> [redis\_commands\_id](#output\_redis\_commands\_id) | id for monitor redis\_commands |
| redis\_cpu\_high\_id | id for monitor redis\_cpu\_high | | <a name="output_redis_cpu_high_id"></a> [redis\_cpu\_high\_id](#output\_redis\_cpu\_high\_id) | id for monitor redis\_cpu\_high |
| redis\_replication\_lag\_id | id for monitor redis\_replication\_lag | | <a name="output_redis_replication_lag_id"></a> [redis\_replication\_lag\_id](#output\_redis\_replication\_lag\_id) | id for monitor redis\_replication\_lag |
## Related documentation ## Related documentation
* [https://docs.datadoghq.com/integrations/amazon_elasticache/](https://docs.datadoghq.com/integrations/amazon_elasticache/) * [https://docs.datadoghq.com/integrations/amazon_elasticache/](https://docs.datadoghq.com/integrations/amazon_elasticache/)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -27,50 +27,70 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.es_cluster_status](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.es_cpu_90_15min](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.es_free_space_low](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| cpu\_enabled | Flag to enable ES cluster cpu monitor | `string` | `"true"` | no | | <a name="input_cpu_enabled"></a> [cpu\_enabled](#input\_cpu\_enabled) | Flag to enable ES cluster cpu monitor | `string` | `"true"` | no |
| cpu\_extra\_tags | Extra tags for ES cluster cpu monitor | `list(string)` | `[]` | no | | <a name="input_cpu_extra_tags"></a> [cpu\_extra\_tags](#input\_cpu\_extra\_tags) | Extra tags for ES cluster cpu monitor | `list(string)` | `[]` | no |
| cpu\_message | Custom message for ES cluster cpu monitor | `string` | `""` | no | | <a name="input_cpu_message"></a> [cpu\_message](#input\_cpu\_message) | Custom message for ES cluster cpu monitor | `string` | `""` | no |
| cpu\_threshold\_critical | CPU usage in percent (critical threshold) | `string` | `"90"` | no | | <a name="input_cpu_threshold_critical"></a> [cpu\_threshold\_critical](#input\_cpu\_threshold\_critical) | CPU usage in percent (critical threshold) | `string` | `"90"` | no |
| cpu\_threshold\_warning | CPU usage in percent (warning threshold) | `string` | `"80"` | no | | <a name="input_cpu_threshold_warning"></a> [cpu\_threshold\_warning](#input\_cpu\_threshold\_warning) | CPU usage in percent (warning threshold) | `string` | `"80"` | no |
| cpu\_time\_aggregator | Monitor aggregator for ES cluster cpu [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_cpu_time_aggregator"></a> [cpu\_time\_aggregator](#input\_cpu\_time\_aggregator) | Monitor aggregator for ES cluster cpu [available values: min, max or avg] | `string` | `"min"` | no |
| cpu\_timeframe | Monitor timeframe for ES cluster cpu [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | | <a name="input_cpu_timeframe"></a> [cpu\_timeframe](#input\_cpu\_timeframe) | Monitor timeframe for ES cluster cpu [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no |
| diskspace\_enabled | Flag to enable ES cluster diskspace monitor | `string` | `"true"` | no | | <a name="input_diskspace_enabled"></a> [diskspace\_enabled](#input\_diskspace\_enabled) | Flag to enable ES cluster diskspace monitor | `string` | `"true"` | no |
| diskspace\_extra\_tags | Extra tags for ES cluster diskspace monitor | `list(string)` | `[]` | no | | <a name="input_diskspace_extra_tags"></a> [diskspace\_extra\_tags](#input\_diskspace\_extra\_tags) | Extra tags for ES cluster diskspace monitor | `list(string)` | `[]` | no |
| diskspace\_message | Custom message for ES cluster diskspace monitor | `string` | `""` | no | | <a name="input_diskspace_message"></a> [diskspace\_message](#input\_diskspace\_message) | Custom message for ES cluster diskspace monitor | `string` | `""` | no |
| diskspace\_threshold\_critical | Disk free space in percent (critical threshold) | `string` | `"10"` | no | | <a name="input_diskspace_threshold_critical"></a> [diskspace\_threshold\_critical](#input\_diskspace\_threshold\_critical) | Disk free space in percent (critical threshold) | `string` | `"10"` | no |
| diskspace\_threshold\_warning | Disk free space in percent (warning threshold) | `string` | `"20"` | no | | <a name="input_diskspace_threshold_warning"></a> [diskspace\_threshold\_warning](#input\_diskspace\_threshold\_warning) | Disk free space in percent (warning threshold) | `string` | `"20"` | no |
| diskspace\_time\_aggregator | Monitor aggregator for ES cluster diskspace [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_diskspace_time_aggregator"></a> [diskspace\_time\_aggregator](#input\_diskspace\_time\_aggregator) | Monitor aggregator for ES cluster diskspace [available values: min, max or avg] | `string` | `"max"` | no |
| diskspace\_timeframe | Monitor timeframe for ES cluster diskspace [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | | <a name="input_diskspace_timeframe"></a> [diskspace\_timeframe](#input\_diskspace\_timeframe) | Monitor timeframe for ES cluster diskspace [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no |
| environment | Architecture Environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture Environment | `string` | n/a | yes |
| es\_cluster\_status\_enabled | Flag to enable ES cluster status monitor | `string` | `"true"` | no | | <a name="input_es_cluster_status_enabled"></a> [es\_cluster\_status\_enabled](#input\_es\_cluster\_status\_enabled) | Flag to enable ES cluster status monitor | `string` | `"true"` | no |
| es\_cluster\_status\_extra\_tags | Extra tags for ES cluster status monitor | `list(string)` | `[]` | no | | <a name="input_es_cluster_status_extra_tags"></a> [es\_cluster\_status\_extra\_tags](#input\_es\_cluster\_status\_extra\_tags) | Extra tags for ES cluster status monitor | `list(string)` | `[]` | no |
| es\_cluster\_status\_message | Custom message for ES cluster status monitor | `string` | `""` | no | | <a name="input_es_cluster_status_message"></a> [es\_cluster\_status\_message](#input\_es\_cluster\_status\_message) | Custom message for ES cluster status monitor | `string` | `""` | no |
| es\_cluster\_status\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `60` | no | | <a name="input_es_cluster_status_no_data_timeframe"></a> [es\_cluster\_status\_no\_data\_timeframe](#input\_es\_cluster\_status\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `60` | no |
| es\_cluster\_status\_timeframe | Monitor timeframe for ES cluster status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_30m"` | no | | <a name="input_es_cluster_status_timeframe"></a> [es\_cluster\_status\_timeframe](#input\_es\_cluster\_status\_timeframe) | Monitor timeframe for ES cluster status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_30m"` | no |
| es\_cluster\_volume\_size | ElasticSearch Domain volume size (in GB) | `any` | n/a | yes | | <a name="input_es_cluster_volume_size"></a> [es\_cluster\_volume\_size](#input\_es\_cluster\_volume\_size) | ElasticSearch Domain volume size (in GB) | `any` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| message | Message sent when an alert is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| es\_cluster\_status\_id | id for monitor es\_cluster\_status | | <a name="output_es_cluster_status_id"></a> [es\_cluster\_status\_id](#output\_es\_cluster\_status\_id) | id for monitor es\_cluster\_status |
| es\_cpu\_90\_15min\_id | id for monitor es\_cpu\_90\_15min | | <a name="output_es_cpu_90_15min_id"></a> [es\_cpu\_90\_15min\_id](#output\_es\_cpu\_90\_15min\_id) | id for monitor es\_cpu\_90\_15min |
| es\_free\_space\_low\_id | id for monitor es\_free\_space\_low | | <a name="output_es_free_space_low_id"></a> [es\_free\_space\_low\_id](#output\_es\_free\_space\_low\_id) | id for monitor es\_free\_space\_low |
## Related documentation ## Related documentation
DataDog documentation: [https://docs.datadoghq.com/integrations/amazon_es/](https://docs.datadoghq.com/integrations/amazon_es/) DataDog documentation: [https://docs.datadoghq.com/integrations/amazon_es/](https://docs.datadoghq.com/integrations/amazon_es/)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -28,72 +28,95 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.ELB_backend_latency](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.ELB_no_healthy_instances](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.ELB_too_much_4xx](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.ELB_too_much_4xx_backend](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.ELB_too_much_5xx](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.ELB_too_much_5xx_backend](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| artificial\_requests\_count | Number of false requests used to mitigate false positive in case of low trafic | `number` | `5` | no | | <a name="input_artificial_requests_count"></a> [artificial\_requests\_count](#input\_artificial\_requests\_count) | Number of false requests used to mitigate false positive in case of low trafic | `number` | `5` | no |
| elb\_4xx\_enabled | Flag to enable ELB 4xx errors monitor | `string` | `"true"` | no | | <a name="input_elb_4xx_enabled"></a> [elb\_4xx\_enabled](#input\_elb\_4xx\_enabled) | Flag to enable ELB 4xx errors monitor | `string` | `"true"` | no |
| elb\_4xx\_extra\_tags | Extra tags for ELB 4xx errors monitor | `list(string)` | `[]` | no | | <a name="input_elb_4xx_extra_tags"></a> [elb\_4xx\_extra\_tags](#input\_elb\_4xx\_extra\_tags) | Extra tags for ELB 4xx errors monitor | `list(string)` | `[]` | no |
| elb\_4xx\_message | Custom message for ELB 4xx errors monitor | `string` | `""` | no | | <a name="input_elb_4xx_message"></a> [elb\_4xx\_message](#input\_elb\_4xx\_message) | Custom message for ELB 4xx errors monitor | `string` | `""` | no |
| elb\_4xx\_threshold\_critical | loadbalancer 4xx critical threshold in percentage | `number` | `10` | no | | <a name="input_elb_4xx_threshold_critical"></a> [elb\_4xx\_threshold\_critical](#input\_elb\_4xx\_threshold\_critical) | loadbalancer 4xx critical threshold in percentage | `number` | `10` | no |
| elb\_4xx\_threshold\_warning | loadbalancer 4xx warning threshold in percentage | `number` | `5` | no | | <a name="input_elb_4xx_threshold_warning"></a> [elb\_4xx\_threshold\_warning](#input\_elb\_4xx\_threshold\_warning) | loadbalancer 4xx warning threshold in percentage | `number` | `5` | no |
| elb\_4xx\_timeframe | Monitor timeframe for ELB 4xx errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_elb_4xx_timeframe"></a> [elb\_4xx\_timeframe](#input\_elb\_4xx\_timeframe) | Monitor timeframe for ELB 4xx errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| elb\_5xx\_enabled | Flag to enable ELB 5xx errors monitor | `string` | `"true"` | no | | <a name="input_elb_5xx_enabled"></a> [elb\_5xx\_enabled](#input\_elb\_5xx\_enabled) | Flag to enable ELB 5xx errors monitor | `string` | `"true"` | no |
| elb\_5xx\_extra\_tags | Extra tags for ELB 5xx errors monitor | `list(string)` | `[]` | no | | <a name="input_elb_5xx_extra_tags"></a> [elb\_5xx\_extra\_tags](#input\_elb\_5xx\_extra\_tags) | Extra tags for ELB 5xx errors monitor | `list(string)` | `[]` | no |
| elb\_5xx\_message | Custom message for ELB 5xx errors monitor | `string` | `""` | no | | <a name="input_elb_5xx_message"></a> [elb\_5xx\_message](#input\_elb\_5xx\_message) | Custom message for ELB 5xx errors monitor | `string` | `""` | no |
| elb\_5xx\_threshold\_critical | loadbalancer 5xx critical threshold in percentage | `number` | `10` | no | | <a name="input_elb_5xx_threshold_critical"></a> [elb\_5xx\_threshold\_critical](#input\_elb\_5xx\_threshold\_critical) | loadbalancer 5xx critical threshold in percentage | `number` | `10` | no |
| elb\_5xx\_threshold\_warning | loadbalancer 5xx warning threshold in percentage | `number` | `5` | no | | <a name="input_elb_5xx_threshold_warning"></a> [elb\_5xx\_threshold\_warning](#input\_elb\_5xx\_threshold\_warning) | loadbalancer 5xx warning threshold in percentage | `number` | `5` | no |
| elb\_5xx\_timeframe | Monitor timeframe for ELB 5xx errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_elb_5xx_timeframe"></a> [elb\_5xx\_timeframe](#input\_elb\_5xx\_timeframe) | Monitor timeframe for ELB 5xx errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| elb\_backend\_4xx\_enabled | Flag to enable ELB backend 4xx errors monitor | `string` | `"true"` | no | | <a name="input_elb_backend_4xx_enabled"></a> [elb\_backend\_4xx\_enabled](#input\_elb\_backend\_4xx\_enabled) | Flag to enable ELB backend 4xx errors monitor | `string` | `"true"` | no |
| elb\_backend\_4xx\_extra\_tags | Extra tags for ELB backend 4xx errors monitor | `list(string)` | `[]` | no | | <a name="input_elb_backend_4xx_extra_tags"></a> [elb\_backend\_4xx\_extra\_tags](#input\_elb\_backend\_4xx\_extra\_tags) | Extra tags for ELB backend 4xx errors monitor | `list(string)` | `[]` | no |
| elb\_backend\_4xx\_message | Custom message for ELB backend 4xx errors monitor | `string` | `""` | no | | <a name="input_elb_backend_4xx_message"></a> [elb\_backend\_4xx\_message](#input\_elb\_backend\_4xx\_message) | Custom message for ELB backend 4xx errors monitor | `string` | `""` | no |
| elb\_backend\_4xx\_threshold\_critical | loadbalancer backend 4xx critical threshold in percentage | `number` | `10` | no | | <a name="input_elb_backend_4xx_threshold_critical"></a> [elb\_backend\_4xx\_threshold\_critical](#input\_elb\_backend\_4xx\_threshold\_critical) | loadbalancer backend 4xx critical threshold in percentage | `number` | `10` | no |
| elb\_backend\_4xx\_threshold\_warning | loadbalancer backend 4xx warning threshold in percentage | `number` | `5` | no | | <a name="input_elb_backend_4xx_threshold_warning"></a> [elb\_backend\_4xx\_threshold\_warning](#input\_elb\_backend\_4xx\_threshold\_warning) | loadbalancer backend 4xx warning threshold in percentage | `number` | `5` | no |
| elb\_backend\_4xx\_timeframe | Monitor timeframe for ELB backend 4xx errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_elb_backend_4xx_timeframe"></a> [elb\_backend\_4xx\_timeframe](#input\_elb\_backend\_4xx\_timeframe) | Monitor timeframe for ELB backend 4xx errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| elb\_backend\_5xx\_enabled | Flag to enable ELB backend 5xx errors monitor | `string` | `"true"` | no | | <a name="input_elb_backend_5xx_enabled"></a> [elb\_backend\_5xx\_enabled](#input\_elb\_backend\_5xx\_enabled) | Flag to enable ELB backend 5xx errors monitor | `string` | `"true"` | no |
| elb\_backend\_5xx\_extra\_tags | Extra tags for ELB backend 5xx errors monitor | `list(string)` | `[]` | no | | <a name="input_elb_backend_5xx_extra_tags"></a> [elb\_backend\_5xx\_extra\_tags](#input\_elb\_backend\_5xx\_extra\_tags) | Extra tags for ELB backend 5xx errors monitor | `list(string)` | `[]` | no |
| elb\_backend\_5xx\_message | Custom message for ELB backend 5xx errors monitor | `string` | `""` | no | | <a name="input_elb_backend_5xx_message"></a> [elb\_backend\_5xx\_message](#input\_elb\_backend\_5xx\_message) | Custom message for ELB backend 5xx errors monitor | `string` | `""` | no |
| elb\_backend\_5xx\_threshold\_critical | loadbalancer backend 5xx critical threshold in percentage | `number` | `10` | no | | <a name="input_elb_backend_5xx_threshold_critical"></a> [elb\_backend\_5xx\_threshold\_critical](#input\_elb\_backend\_5xx\_threshold\_critical) | loadbalancer backend 5xx critical threshold in percentage | `number` | `10` | no |
| elb\_backend\_5xx\_threshold\_warning | loadbalancer backend 5xx warning threshold in percentage | `number` | `5` | no | | <a name="input_elb_backend_5xx_threshold_warning"></a> [elb\_backend\_5xx\_threshold\_warning](#input\_elb\_backend\_5xx\_threshold\_warning) | loadbalancer backend 5xx warning threshold in percentage | `number` | `5` | no |
| elb\_backend\_5xx\_timeframe | Monitor timeframe for ELB backend 5xx errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_elb_backend_5xx_timeframe"></a> [elb\_backend\_5xx\_timeframe](#input\_elb\_backend\_5xx\_timeframe) | Monitor timeframe for ELB backend 5xx errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| elb\_backend\_latency\_critical | latency critical threshold in seconds | `number` | `3` | no | | <a name="input_elb_backend_latency_critical"></a> [elb\_backend\_latency\_critical](#input\_elb\_backend\_latency\_critical) | latency critical threshold in seconds | `number` | `3` | no |
| elb\_backend\_latency\_enabled | Flag to enable ELB backend latency monitor | `string` | `"true"` | no | | <a name="input_elb_backend_latency_enabled"></a> [elb\_backend\_latency\_enabled](#input\_elb\_backend\_latency\_enabled) | Flag to enable ELB backend latency monitor | `string` | `"true"` | no |
| elb\_backend\_latency\_extra\_tags | Extra tags for ELB backend latency monitor | `list(string)` | `[]` | no | | <a name="input_elb_backend_latency_extra_tags"></a> [elb\_backend\_latency\_extra\_tags](#input\_elb\_backend\_latency\_extra\_tags) | Extra tags for ELB backend latency monitor | `list(string)` | `[]` | no |
| elb\_backend\_latency\_message | Custom message for ELB backend latency monitor | `string` | `""` | no | | <a name="input_elb_backend_latency_message"></a> [elb\_backend\_latency\_message](#input\_elb\_backend\_latency\_message) | Custom message for ELB backend latency monitor | `string` | `""` | no |
| elb\_backend\_latency\_time\_aggregator | Monitor aggregator for ELB backend latency [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_elb_backend_latency_time_aggregator"></a> [elb\_backend\_latency\_time\_aggregator](#input\_elb\_backend\_latency\_time\_aggregator) | Monitor aggregator for ELB backend latency [available values: min, max or avg] | `string` | `"min"` | no |
| elb\_backend\_latency\_timeframe | Monitor timeframe for ELB backend latency [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_elb_backend_latency_timeframe"></a> [elb\_backend\_latency\_timeframe](#input\_elb\_backend\_latency\_timeframe) | Monitor timeframe for ELB backend latency [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| elb\_backend\_latency\_warning | latency warning threshold in seconds | `number` | `1` | no | | <a name="input_elb_backend_latency_warning"></a> [elb\_backend\_latency\_warning](#input\_elb\_backend\_latency\_warning) | latency warning threshold in seconds | `number` | `1` | no |
| elb\_no\_healthy\_instance\_enabled | Flag to enable ELB no healty instance monitor | `string` | `"true"` | no | | <a name="input_elb_no_healthy_instance_enabled"></a> [elb\_no\_healthy\_instance\_enabled](#input\_elb\_no\_healthy\_instance\_enabled) | Flag to enable ELB no healty instance monitor | `string` | `"true"` | no |
| elb\_no\_healthy\_instance\_extra\_tags | Extra tags for ELB no healty instance monitor | `list(string)` | `[]` | no | | <a name="input_elb_no_healthy_instance_extra_tags"></a> [elb\_no\_healthy\_instance\_extra\_tags](#input\_elb\_no\_healthy\_instance\_extra\_tags) | Extra tags for ELB no healty instance monitor | `list(string)` | `[]` | no |
| elb\_no\_healthy\_instance\_message | Custom message for ELB no healty instance monitor | `string` | `""` | no | | <a name="input_elb_no_healthy_instance_message"></a> [elb\_no\_healthy\_instance\_message](#input\_elb\_no\_healthy\_instance\_message) | Custom message for ELB no healty instance monitor | `string` | `""` | no |
| elb\_no\_healthy\_instance\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | | <a name="input_elb_no_healthy_instance_no_data_timeframe"></a> [elb\_no\_healthy\_instance\_no\_data\_timeframe](#input\_elb\_no\_healthy\_instance\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no |
| elb\_no\_healthy\_instance\_threshold\_warning | ELB no healthy instances warning threshold in percentage | `number` | `100` | no | | <a name="input_elb_no_healthy_instance_threshold_warning"></a> [elb\_no\_healthy\_instance\_threshold\_warning](#input\_elb\_no\_healthy\_instance\_threshold\_warning) | ELB no healthy instances warning threshold in percentage | `number` | `100` | no |
| elb\_no\_healthy\_instance\_time\_aggregator | Monitor aggregator for ELB no healty instance [available values: min or max] | `string` | `"min"` | no | | <a name="input_elb_no_healthy_instance_time_aggregator"></a> [elb\_no\_healthy\_instance\_time\_aggregator](#input\_elb\_no\_healthy\_instance\_time\_aggregator) | Monitor aggregator for ELB no healty instance [available values: min or max] | `string` | `"min"` | no |
| elb\_no\_healthy\_instance\_timeframe | Monitor timeframe for ELB no healty instance [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_elb_no_healthy_instance_timeframe"></a> [elb\_no\_healthy\_instance\_timeframe](#input\_elb\_no\_healthy\_instance\_timeframe) | Monitor timeframe for ELB no healty instance [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| environment | Architecture Environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture Environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| message | Message sent when an alert is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| ELB\_backend\_latency\_id | id for monitor ELB\_backend\_latency | | <a name="output_ELB_backend_latency_id"></a> [ELB\_backend\_latency\_id](#output\_ELB\_backend\_latency\_id) | id for monitor ELB\_backend\_latency |
| ELB\_no\_healthy\_instances\_id | id for monitor ELB\_no\_healthy\_instances | | <a name="output_ELB_no_healthy_instances_id"></a> [ELB\_no\_healthy\_instances\_id](#output\_ELB\_no\_healthy\_instances\_id) | id for monitor ELB\_no\_healthy\_instances |
| ELB\_too\_much\_4xx\_backend\_id | id for monitor ELB\_too\_much\_4xx\_backend | | <a name="output_ELB_too_much_4xx_backend_id"></a> [ELB\_too\_much\_4xx\_backend\_id](#output\_ELB\_too\_much\_4xx\_backend\_id) | id for monitor ELB\_too\_much\_4xx\_backend |
| ELB\_too\_much\_4xx\_id | id for monitor ELB\_too\_much\_4xx | | <a name="output_ELB_too_much_4xx_id"></a> [ELB\_too\_much\_4xx\_id](#output\_ELB\_too\_much\_4xx\_id) | id for monitor ELB\_too\_much\_4xx |
| ELB\_too\_much\_5xx\_backend\_id | id for monitor ELB\_too\_much\_5xx\_backend | | <a name="output_ELB_too_much_5xx_backend_id"></a> [ELB\_too\_much\_5xx\_backend\_id](#output\_ELB\_too\_much\_5xx\_backend\_id) | id for monitor ELB\_too\_much\_5xx\_backend |
| ELB\_too\_much\_5xx\_id | id for monitor ELB\_too\_much\_5xx | | <a name="output_ELB_too_much_5xx_id"></a> [ELB\_too\_much\_5xx\_id](#output\_ELB\_too\_much\_5xx\_id) | id for monitor ELB\_too\_much\_5xx |
## Related documentation ## Related documentation
DataDog blog: [https://www.datadoghq.com/blog/monitor-application-load-balancer/](https://www.datadoghq.com/blog/monitor-application-load-balancer/) DataDog blog: [https://www.datadoghq.com/blog/monitor-application-load-balancer/](https://www.datadoghq.com/blog/monitor-application-load-balancer/)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -23,33 +23,51 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.firehose_incoming_records](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| environment | Environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| firehose\_incoming\_records\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `30` | no | | <a name="input_firehose_incoming_records_no_data_timeframe"></a> [firehose\_incoming\_records\_no\_data\_timeframe](#input\_firehose\_incoming\_records\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `30` | no |
| incoming\_records\_enabled | Flag to enable Kinesis Firehorse incoming records monitor | `string` | `"true"` | no | | <a name="input_incoming_records_enabled"></a> [incoming\_records\_enabled](#input\_incoming\_records\_enabled) | Flag to enable Kinesis Firehorse incoming records monitor | `string` | `"true"` | no |
| incoming\_records\_extra\_tags | Extra tags for Kinesis Firehorse incoming records monitor | `list(string)` | `[]` | no | | <a name="input_incoming_records_extra_tags"></a> [incoming\_records\_extra\_tags](#input\_incoming\_records\_extra\_tags) | Extra tags for Kinesis Firehorse incoming records monitor | `list(string)` | `[]` | no |
| incoming\_records\_message | Custom message for Kinesis Firehorse incoming records monitor | `string` | `""` | no | | <a name="input_incoming_records_message"></a> [incoming\_records\_message](#input\_incoming\_records\_message) | Custom message for Kinesis Firehorse incoming records monitor | `string` | `""` | no |
| incoming\_records\_timeframe | Monitor timeframe for incoming records metrics evaluation [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | | <a name="input_incoming_records_timeframe"></a> [incoming\_records\_timeframe](#input\_incoming\_records\_timeframe) | Monitor timeframe for incoming records metrics evaluation [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no |
| message | Message sent when an alert is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| firehose\_incoming\_records\_id | id for monitor firehose\_incoming\_records | | <a name="output_firehose_incoming_records_id"></a> [firehose\_incoming\_records\_id](#output\_firehose\_incoming\_records\_id) | id for monitor firehose\_incoming\_records |
## Related documentation ## Related documentation
DataDog documentation: [https://docs.datadoghq.com/integrations/amazon_firehose/](https://docs.datadoghq.com/integrations/amazon_firehose/) DataDog documentation: [https://docs.datadoghq.com/integrations/amazon_firehose/](https://docs.datadoghq.com/integrations/amazon_firehose/)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -26,60 +26,81 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.errors](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.invocations](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.pct_errors](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.throttles](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| environment | Architecture environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture environment | `string` | n/a | yes |
| errors\_enabled | Flag to enable Errors monitor | `string` | `"false"` | no | | <a name="input_errors_enabled"></a> [errors\_enabled](#input\_errors\_enabled) | Flag to enable Errors monitor | `string` | `"false"` | no |
| errors\_extra\_tags | Extra tags for Errors monitor | `list(string)` | `[]` | no | | <a name="input_errors_extra_tags"></a> [errors\_extra\_tags](#input\_errors\_extra\_tags) | Extra tags for Errors monitor | `list(string)` | `[]` | no |
| errors\_message | Custom message for Errors monitor | `string` | `""` | no | | <a name="input_errors_message"></a> [errors\_message](#input\_errors\_message) | Custom message for Errors monitor | `string` | `""` | no |
| errors\_threshold\_critical | Alerting threshold in milliseconds | `number` | `3` | no | | <a name="input_errors_threshold_critical"></a> [errors\_threshold\_critical](#input\_errors\_threshold\_critical) | Alerting threshold in milliseconds | `number` | `3` | no |
| errors\_threshold\_warning | Warning threshold in milliseconds | `number` | `1` | no | | <a name="input_errors_threshold_warning"></a> [errors\_threshold\_warning](#input\_errors\_threshold\_warning) | Warning threshold in milliseconds | `number` | `1` | no |
| errors\_time\_aggregator | Monitor aggregator for Errors [available values: min, max or avg] | `string` | `"sum"` | no | | <a name="input_errors_time_aggregator"></a> [errors\_time\_aggregator](#input\_errors\_time\_aggregator) | Monitor aggregator for Errors [available values: min, max or avg] | `string` | `"sum"` | no |
| errors\_timeframe | Monitor timeframe for Errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_1h"` | no | | <a name="input_errors_timeframe"></a> [errors\_timeframe](#input\_errors\_timeframe) | Monitor timeframe for Errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_1h"` | no |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| invocations\_enabled | Flag to enable Invocations monitor | `string` | `"false"` | no | | <a name="input_invocations_enabled"></a> [invocations\_enabled](#input\_invocations\_enabled) | Flag to enable Invocations monitor | `string` | `"false"` | no |
| invocations\_extra\_tags | Extra tags for Invocations monitor | `list(string)` | `[]` | no | | <a name="input_invocations_extra_tags"></a> [invocations\_extra\_tags](#input\_invocations\_extra\_tags) | Extra tags for Invocations monitor | `list(string)` | `[]` | no |
| invocations\_message | Custom message for Invocations monitor | `string` | `""` | no | | <a name="input_invocations_message"></a> [invocations\_message](#input\_invocations\_message) | Custom message for Invocations monitor | `string` | `""` | no |
| invocations\_no\_data\_timeframe | Timeframe to check before alerting on no data in minutes | `number` | `120` | no | | <a name="input_invocations_no_data_timeframe"></a> [invocations\_no\_data\_timeframe](#input\_invocations\_no\_data\_timeframe) | Timeframe to check before alerting on no data in minutes | `number` | `120` | no |
| invocations\_threshold\_critical | Alerting threshold in number of invocations | `number` | `1` | no | | <a name="input_invocations_threshold_critical"></a> [invocations\_threshold\_critical](#input\_invocations\_threshold\_critical) | Alerting threshold in number of invocations | `number` | `1` | no |
| invocations\_threshold\_warning | Warning threshold in number of invocations | `number` | `2` | no | | <a name="input_invocations_threshold_warning"></a> [invocations\_threshold\_warning](#input\_invocations\_threshold\_warning) | Warning threshold in number of invocations | `number` | `2` | no |
| invocations\_time\_aggregator | Monitor aggregator for Invocations [available values: min, max or avg] | `string` | `"sum"` | no | | <a name="input_invocations_time_aggregator"></a> [invocations\_time\_aggregator](#input\_invocations\_time\_aggregator) | Monitor aggregator for Invocations [available values: min, max or avg] | `string` | `"sum"` | no |
| invocations\_timeframe | Monitor timeframe for Invocations [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_30m"` | no | | <a name="input_invocations_timeframe"></a> [invocations\_timeframe](#input\_invocations\_timeframe) | Monitor timeframe for Invocations [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_30m"` | no |
| message | Message sent when a monitor is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| pct\_errors\_enabled | Flag to enable Percentage of errors monitor | `string` | `"true"` | no | | <a name="input_pct_errors_enabled"></a> [pct\_errors\_enabled](#input\_pct\_errors\_enabled) | Flag to enable Percentage of errors monitor | `string` | `"true"` | no |
| pct\_errors\_extra\_tags | Extra tags for Percentage of errors monitor | `list(string)` | `[]` | no | | <a name="input_pct_errors_extra_tags"></a> [pct\_errors\_extra\_tags](#input\_pct\_errors\_extra\_tags) | Extra tags for Percentage of errors monitor | `list(string)` | `[]` | no |
| pct\_errors\_message | Custom message for Percentage of errors monitor | `string` | `""` | no | | <a name="input_pct_errors_message"></a> [pct\_errors\_message](#input\_pct\_errors\_message) | Custom message for Percentage of errors monitor | `string` | `""` | no |
| pct\_errors\_threshold\_critical | Alerting threshold in percentage | `number` | `30` | no | | <a name="input_pct_errors_threshold_critical"></a> [pct\_errors\_threshold\_critical](#input\_pct\_errors\_threshold\_critical) | Alerting threshold in percentage | `number` | `30` | no |
| pct\_errors\_threshold\_warning | Warning threshold in percentage | `number` | `20` | no | | <a name="input_pct_errors_threshold_warning"></a> [pct\_errors\_threshold\_warning](#input\_pct\_errors\_threshold\_warning) | Warning threshold in percentage | `number` | `20` | no |
| pct\_errors\_time\_aggregator | Monitor aggregator for Percentage of errors [available values: min, max or avg] | `string` | `"sum"` | no | | <a name="input_pct_errors_time_aggregator"></a> [pct\_errors\_time\_aggregator](#input\_pct\_errors\_time\_aggregator) | Monitor aggregator for Percentage of errors [available values: min, max or avg] | `string` | `"sum"` | no |
| pct\_errors\_timeframe | Monitor timeframe for Percentage of errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_1h"` | no | | <a name="input_pct_errors_timeframe"></a> [pct\_errors\_timeframe](#input\_pct\_errors\_timeframe) | Monitor timeframe for Percentage of errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_1h"` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
| throttles\_enabled | Flag to enable Throttles monitor | `string` | `"true"` | no | | <a name="input_throttles_enabled"></a> [throttles\_enabled](#input\_throttles\_enabled) | Flag to enable Throttles monitor | `string` | `"true"` | no |
| throttles\_extra\_tags | Extra tags for Throttles monitor | `list(string)` | `[]` | no | | <a name="input_throttles_extra_tags"></a> [throttles\_extra\_tags](#input\_throttles\_extra\_tags) | Extra tags for Throttles monitor | `list(string)` | `[]` | no |
| throttles\_message | Custom message for Throttles monitor | `string` | `""` | no | | <a name="input_throttles_message"></a> [throttles\_message](#input\_throttles\_message) | Custom message for Throttles monitor | `string` | `""` | no |
| throttles\_threshold\_critical | Alerting threshold in number of throttles | `number` | `3` | no | | <a name="input_throttles_threshold_critical"></a> [throttles\_threshold\_critical](#input\_throttles\_threshold\_critical) | Alerting threshold in number of throttles | `number` | `3` | no |
| throttles\_threshold\_warning | Warning threshold in number of throttles | `number` | `1` | no | | <a name="input_throttles_threshold_warning"></a> [throttles\_threshold\_warning](#input\_throttles\_threshold\_warning) | Warning threshold in number of throttles | `number` | `1` | no |
| throttles\_time\_aggregator | Monitor aggregator for Throttles [available values: min, max or avg] | `string` | `"sum"` | no | | <a name="input_throttles_time_aggregator"></a> [throttles\_time\_aggregator](#input\_throttles\_time\_aggregator) | Monitor aggregator for Throttles [available values: min, max or avg] | `string` | `"sum"` | no |
| throttles\_timeframe | Monitor timeframe for Throttles [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_1h"` | no | | <a name="input_throttles_timeframe"></a> [throttles\_timeframe](#input\_throttles\_timeframe) | Monitor timeframe for Throttles [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_1h"` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| errors\_id | id for monitor errors | | <a name="output_errors_id"></a> [errors\_id](#output\_errors\_id) | id for monitor errors |
| invocations\_id | id for monitor invocations | | <a name="output_invocations_id"></a> [invocations\_id](#output\_invocations\_id) | id for monitor invocations |
| pct\_errors\_id | id for monitor pct\_errors | | <a name="output_pct_errors_id"></a> [pct\_errors\_id](#output\_pct\_errors\_id) | id for monitor pct\_errors |
| throttles\_id | id for monitor throttles | | <a name="output_throttles_id"></a> [throttles\_id](#output\_throttles\_id) | id for monitor throttles |
## Related documentation ## Related documentation
* [Datadog Documentation](https://docs.datadoghq.com/integrations/amazon_lambda/) * [Datadog Documentation](https://docs.datadoghq.com/integrations/amazon_lambda/)
* [Service documentation](https://docs.aws.amazon.com/lambda/index.html) * [Service documentation](https://docs.aws.amazon.com/lambda/index.html)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -23,35 +23,53 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.NLB_no_healthy_instances](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| environment | Architecture environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| message | Message sent when a monitor is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| nlb\_no\_healthy\_instances\_enabled | Flag to enable NLB no healthy instances monitor | `string` | `"true"` | no | | <a name="input_nlb_no_healthy_instances_enabled"></a> [nlb\_no\_healthy\_instances\_enabled](#input\_nlb\_no\_healthy\_instances\_enabled) | Flag to enable NLB no healthy instances monitor | `string` | `"true"` | no |
| nlb\_no\_healthy\_instances\_extra\_tags | Extra tags for NLB no healthy instances monitor | `list(string)` | `[]` | no | | <a name="input_nlb_no_healthy_instances_extra_tags"></a> [nlb\_no\_healthy\_instances\_extra\_tags](#input\_nlb\_no\_healthy\_instances\_extra\_tags) | Extra tags for NLB no healthy instances monitor | `list(string)` | `[]` | no |
| nlb\_no\_healthy\_instances\_message | Custom message for NLB no healthy instances monitor | `string` | `""` | no | | <a name="input_nlb_no_healthy_instances_message"></a> [nlb\_no\_healthy\_instances\_message](#input\_nlb\_no\_healthy\_instances\_message) | Custom message for NLB no healthy instances monitor | `string` | `""` | no |
| nlb\_no\_healthy\_instances\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | | <a name="input_nlb_no_healthy_instances_no_data_timeframe"></a> [nlb\_no\_healthy\_instances\_no\_data\_timeframe](#input\_nlb\_no\_healthy\_instances\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no |
| nlb\_no\_healthy\_instances\_threshold\_warning | NLB no healthy instances warning threshold in percentage | `number` | `100` | no | | <a name="input_nlb_no_healthy_instances_threshold_warning"></a> [nlb\_no\_healthy\_instances\_threshold\_warning](#input\_nlb\_no\_healthy\_instances\_threshold\_warning) | NLB no healthy instances warning threshold in percentage | `number` | `100` | no |
| nlb\_no\_healthy\_instances\_time\_aggregator | Monitor aggregator for NLB no healthy instances [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_nlb_no_healthy_instances_time_aggregator"></a> [nlb\_no\_healthy\_instances\_time\_aggregator](#input\_nlb\_no\_healthy\_instances\_time\_aggregator) | Monitor aggregator for NLB no healthy instances [available values: min, max or avg] | `string` | `"min"` | no |
| nlb\_no\_healthy\_instances\_timeframe | Monitor timeframe for NLB no healthy instances [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_nlb_no_healthy_instances_timeframe"></a> [nlb\_no\_healthy\_instances\_timeframe](#input\_nlb\_no\_healthy\_instances\_timeframe) | Monitor timeframe for NLB no healthy instances [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| NLB\_no\_healthy\_instances\_id | id for monitor NLB\_no\_healthy\_instances | | <a name="output_NLB_no_healthy_instances_id"></a> [NLB\_no\_healthy\_instances\_id](#output\_NLB\_no\_healthy\_instances\_id) | id for monitor NLB\_no\_healthy\_instances |
## Related documentation ## Related documentation
DataDog blog: [https://www.datadoghq.com/blog/monitor-aws-network-load-balancer/](https://www.datadoghq.com/blog/monitor-aws-network-load-balancer/) DataDog blog: [https://www.datadoghq.com/blog/monitor-aws-network-load-balancer/](https://www.datadoghq.com/blog/monitor-aws-network-load-balancer/)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -23,36 +23,54 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.rds_aurora_mysql_replica_lag](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| aurora\_replicalag\_enabled | Flag to enable RDS Aurora replica lag monitor | `string` | `"true"` | no | | <a name="input_aurora_replicalag_enabled"></a> [aurora\_replicalag\_enabled](#input\_aurora\_replicalag\_enabled) | Flag to enable RDS Aurora replica lag monitor | `string` | `"true"` | no |
| aurora\_replicalag\_extra\_tags | Extra tags for RDS Aurora replica lag monitor | `list(string)` | `[]` | no | | <a name="input_aurora_replicalag_extra_tags"></a> [aurora\_replicalag\_extra\_tags](#input\_aurora\_replicalag\_extra\_tags) | Extra tags for RDS Aurora replica lag monitor | `list(string)` | `[]` | no |
| aurora\_replicalag\_message | Custom message for RDS Aurora replica lag monitor | `string` | `""` | no | | <a name="input_aurora_replicalag_message"></a> [aurora\_replicalag\_message](#input\_aurora\_replicalag\_message) | Custom message for RDS Aurora replica lag monitor | `string` | `""` | no |
| aurora\_replicalag\_threshold\_critical | Aurora replica lag in milliseconds (critical threshold) | `string` | `"200"` | no | | <a name="input_aurora_replicalag_threshold_critical"></a> [aurora\_replicalag\_threshold\_critical](#input\_aurora\_replicalag\_threshold\_critical) | Aurora replica lag in milliseconds (critical threshold) | `string` | `"200"` | no |
| aurora\_replicalag\_threshold\_warning | Aurora replica lag in milliseconds (warning threshold) | `string` | `"100"` | no | | <a name="input_aurora_replicalag_threshold_warning"></a> [aurora\_replicalag\_threshold\_warning](#input\_aurora\_replicalag\_threshold\_warning) | Aurora replica lag in milliseconds (warning threshold) | `string` | `"100"` | no |
| aurora\_replicalag\_time\_aggregator | Monitor aggregator for RDS Aurora replica lag [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_aurora_replicalag_time_aggregator"></a> [aurora\_replicalag\_time\_aggregator](#input\_aurora\_replicalag\_time\_aggregator) | Monitor aggregator for RDS Aurora replica lag [available values: min, max or avg] | `string` | `"min"` | no |
| aurora\_replicalag\_timeframe | Monitor timeframe for RDS Aurora replica lag monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_aurora_replicalag_timeframe"></a> [aurora\_replicalag\_timeframe](#input\_aurora\_replicalag\_timeframe) | Monitor timeframe for RDS Aurora replica lag monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| environment | Architecture Environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture Environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| message | Message sent when an alert is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
| rds\_aurora\_mysql\_replica\_lag\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | | <a name="input_rds_aurora_mysql_replica_lag_no_data_timeframe"></a> [rds\_aurora\_mysql\_replica\_lag\_no\_data\_timeframe](#input\_rds\_aurora\_mysql\_replica\_lag\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| rds\_aurora\_mysql\_replica\_lag\_id | id for monitor rds\_aurora\_mysql\_replica\_lag | | <a name="output_rds_aurora_mysql_replica_lag_id"></a> [rds\_aurora\_mysql\_replica\_lag\_id](#output\_rds\_aurora\_mysql\_replica\_lag\_id) | id for monitor rds\_aurora\_mysql\_replica\_lag |
## Related documentation ## Related documentation
DataDog documentation: [https://docs.datadoghq.com/integrations/amazon_rds/](https://docs.datadoghq.com/integrations/amazon_rds/) DataDog documentation: [https://docs.datadoghq.com/integrations/amazon_rds/](https://docs.datadoghq.com/integrations/amazon_rds/)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -23,36 +23,54 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.rds_aurora_postgresql_replica_lag](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| aurora\_replicalag\_enabled | Flag to enable RDS Aurora replica lag monitor | `string` | `"true"` | no | | <a name="input_aurora_replicalag_enabled"></a> [aurora\_replicalag\_enabled](#input\_aurora\_replicalag\_enabled) | Flag to enable RDS Aurora replica lag monitor | `string` | `"true"` | no |
| aurora\_replicalag\_extra\_tags | Extra tags for RDS Aurora replica lag monitor | `list(string)` | `[]` | no | | <a name="input_aurora_replicalag_extra_tags"></a> [aurora\_replicalag\_extra\_tags](#input\_aurora\_replicalag\_extra\_tags) | Extra tags for RDS Aurora replica lag monitor | `list(string)` | `[]` | no |
| aurora\_replicalag\_message | Custom message for RDS Aurora replica lag monitor | `string` | `""` | no | | <a name="input_aurora_replicalag_message"></a> [aurora\_replicalag\_message](#input\_aurora\_replicalag\_message) | Custom message for RDS Aurora replica lag monitor | `string` | `""` | no |
| aurora\_replicalag\_threshold\_critical | Aurora replica lag in milliseconds (critical threshold) | `string` | `"200"` | no | | <a name="input_aurora_replicalag_threshold_critical"></a> [aurora\_replicalag\_threshold\_critical](#input\_aurora\_replicalag\_threshold\_critical) | Aurora replica lag in milliseconds (critical threshold) | `string` | `"200"` | no |
| aurora\_replicalag\_threshold\_warning | Aurora replica lag in milliseconds (warning threshold) | `string` | `"100"` | no | | <a name="input_aurora_replicalag_threshold_warning"></a> [aurora\_replicalag\_threshold\_warning](#input\_aurora\_replicalag\_threshold\_warning) | Aurora replica lag in milliseconds (warning threshold) | `string` | `"100"` | no |
| aurora\_replicalag\_time\_aggregator | Monitor aggregator for RDS Aurora replica lag [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_aurora_replicalag_time_aggregator"></a> [aurora\_replicalag\_time\_aggregator](#input\_aurora\_replicalag\_time\_aggregator) | Monitor aggregator for RDS Aurora replica lag [available values: min, max or avg] | `string` | `"min"` | no |
| aurora\_replicalag\_timeframe | Monitor timeframe for RDS Aurora replica lag monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_aurora_replicalag_timeframe"></a> [aurora\_replicalag\_timeframe](#input\_aurora\_replicalag\_timeframe) | Monitor timeframe for RDS Aurora replica lag monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| environment | Architecture Environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture Environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| message | Message sent when an alert is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
| rds\_aurora\_postgresql\_replica\_lag\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | | <a name="input_rds_aurora_postgresql_replica_lag_no_data_timeframe"></a> [rds\_aurora\_postgresql\_replica\_lag\_no\_data\_timeframe](#input\_rds\_aurora\_postgresql\_replica\_lag\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| rds\_aurora\_postgresql\_replica\_lag\_id | id for monitor rds\_aurora\_postgresql\_replica\_lag | | <a name="output_rds_aurora_postgresql_replica_lag_id"></a> [rds\_aurora\_postgresql\_replica\_lag\_id](#output\_rds\_aurora\_postgresql\_replica\_lag\_id) | id for monitor rds\_aurora\_postgresql\_replica\_lag |
## Related documentation ## Related documentation
DataDog documentation: [https://docs.datadoghq.com/integrations/amazon_rds/](https://docs.datadoghq.com/integrations/amazon_rds/) DataDog documentation: [https://docs.datadoghq.com/integrations/amazon_rds/](https://docs.datadoghq.com/integrations/amazon_rds/)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -25,52 +25,72 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.rds_cpu_90_15min](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.rds_free_space_low](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.rds_replica_lag](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| cpu\_enabled | Flag to enable RDS CPU usage monitor | `string` | `"true"` | no | | <a name="input_cpu_enabled"></a> [cpu\_enabled](#input\_cpu\_enabled) | Flag to enable RDS CPU usage monitor | `string` | `"true"` | no |
| cpu\_extra\_tags | Extra tags for RDS CPU usage monitor | `list(string)` | `[]` | no | | <a name="input_cpu_extra_tags"></a> [cpu\_extra\_tags](#input\_cpu\_extra\_tags) | Extra tags for RDS CPU usage monitor | `list(string)` | `[]` | no |
| cpu\_message | Custom message for RDS CPU usage monitor | `string` | `""` | no | | <a name="input_cpu_message"></a> [cpu\_message](#input\_cpu\_message) | Custom message for RDS CPU usage monitor | `string` | `""` | no |
| cpu\_threshold\_critical | CPU usage in percent (critical threshold) | `string` | `"90"` | no | | <a name="input_cpu_threshold_critical"></a> [cpu\_threshold\_critical](#input\_cpu\_threshold\_critical) | CPU usage in percent (critical threshold) | `string` | `"90"` | no |
| cpu\_threshold\_warning | CPU usage in percent (warning threshold) | `string` | `"80"` | no | | <a name="input_cpu_threshold_warning"></a> [cpu\_threshold\_warning](#input\_cpu\_threshold\_warning) | CPU usage in percent (warning threshold) | `string` | `"80"` | no |
| cpu\_time\_aggregator | Monitor aggregator for RDS CPU usage [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_cpu_time_aggregator"></a> [cpu\_time\_aggregator](#input\_cpu\_time\_aggregator) | Monitor aggregator for RDS CPU usage [available values: min, max or avg] | `string` | `"min"` | no |
| cpu\_timeframe | Monitor timeframe for RDS CPU usage [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | | <a name="input_cpu_timeframe"></a> [cpu\_timeframe](#input\_cpu\_timeframe) | Monitor timeframe for RDS CPU usage [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no |
| diskspace\_enabled | Flag to enable RDS free diskspace monitor | `string` | `"true"` | no | | <a name="input_diskspace_enabled"></a> [diskspace\_enabled](#input\_diskspace\_enabled) | Flag to enable RDS free diskspace monitor | `string` | `"true"` | no |
| diskspace\_extra\_tags | Extra tags for RDS free diskspace monitor | `list(string)` | `[]` | no | | <a name="input_diskspace_extra_tags"></a> [diskspace\_extra\_tags](#input\_diskspace\_extra\_tags) | Extra tags for RDS free diskspace monitor | `list(string)` | `[]` | no |
| diskspace\_message | Custom message for RDS free diskspace monitor | `string` | `""` | no | | <a name="input_diskspace_message"></a> [diskspace\_message](#input\_diskspace\_message) | Custom message for RDS free diskspace monitor | `string` | `""` | no |
| diskspace\_threshold\_critical | Disk free space in percent (critical threshold) | `string` | `"10"` | no | | <a name="input_diskspace_threshold_critical"></a> [diskspace\_threshold\_critical](#input\_diskspace\_threshold\_critical) | Disk free space in percent (critical threshold) | `string` | `"10"` | no |
| diskspace\_threshold\_warning | Disk free space in percent (warning threshold) | `string` | `"20"` | no | | <a name="input_diskspace_threshold_warning"></a> [diskspace\_threshold\_warning](#input\_diskspace\_threshold\_warning) | Disk free space in percent (warning threshold) | `string` | `"20"` | no |
| diskspace\_time\_aggregator | Monitor aggregator for RDS free diskspace [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_diskspace_time_aggregator"></a> [diskspace\_time\_aggregator](#input\_diskspace\_time\_aggregator) | Monitor aggregator for RDS free diskspace [available values: min, max or avg] | `string` | `"min"` | no |
| diskspace\_timeframe | Monitor timeframe for RDS free diskspace [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | | <a name="input_diskspace_timeframe"></a> [diskspace\_timeframe](#input\_diskspace\_timeframe) | Monitor timeframe for RDS free diskspace [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no |
| environment | Architecture Environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture Environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| message | Message sent when an alert is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
| rds\_free\_space\_low\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `30` | no | | <a name="input_rds_free_space_low_no_data_timeframe"></a> [rds\_free\_space\_low\_no\_data\_timeframe](#input\_rds\_free\_space\_low\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `30` | no |
| replicalag\_enabled | Flag to enable RDS replica lag monitor | `string` | `"true"` | no | | <a name="input_replicalag_enabled"></a> [replicalag\_enabled](#input\_replicalag\_enabled) | Flag to enable RDS replica lag monitor | `string` | `"true"` | no |
| replicalag\_extra\_tags | Extra tags for RDS replica lag monitor | `list(string)` | `[]` | no | | <a name="input_replicalag_extra_tags"></a> [replicalag\_extra\_tags](#input\_replicalag\_extra\_tags) | Extra tags for RDS replica lag monitor | `list(string)` | `[]` | no |
| replicalag\_message | Custom message for RDS replica lag monitor | `string` | `""` | no | | <a name="input_replicalag_message"></a> [replicalag\_message](#input\_replicalag\_message) | Custom message for RDS replica lag monitor | `string` | `""` | no |
| replicalag\_threshold\_critical | replica lag in seconds (critical threshold) | `string` | `"300"` | no | | <a name="input_replicalag_threshold_critical"></a> [replicalag\_threshold\_critical](#input\_replicalag\_threshold\_critical) | replica lag in seconds (critical threshold) | `string` | `"300"` | no |
| replicalag\_threshold\_warning | replica lag in seconds (warning threshold) | `string` | `"200"` | no | | <a name="input_replicalag_threshold_warning"></a> [replicalag\_threshold\_warning](#input\_replicalag\_threshold\_warning) | replica lag in seconds (warning threshold) | `string` | `"200"` | no |
| replicalag\_time\_aggregator | Monitor aggregator for RDS replica lag [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_replicalag_time_aggregator"></a> [replicalag\_time\_aggregator](#input\_replicalag\_time\_aggregator) | Monitor aggregator for RDS replica lag [available values: min, max or avg] | `string` | `"min"` | no |
| replicalag\_timeframe | Monitor timeframe for RDS replica lag monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_replicalag_timeframe"></a> [replicalag\_timeframe](#input\_replicalag\_timeframe) | Monitor timeframe for RDS replica lag monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| rds\_cpu\_90\_15min\_id | id for monitor rds\_cpu\_90\_15min | | <a name="output_rds_cpu_90_15min_id"></a> [rds\_cpu\_90\_15min\_id](#output\_rds\_cpu\_90\_15min\_id) | id for monitor rds\_cpu\_90\_15min |
| rds\_free\_space\_low\_id | id for monitor rds\_free\_space\_low | | <a name="output_rds_free_space_low_id"></a> [rds\_free\_space\_low\_id](#output\_rds\_free\_space\_low\_id) | id for monitor rds\_free\_space\_low |
| rds\_replica\_lag\_id | id for monitor rds\_replica\_lag | | <a name="output_rds_replica_lag_id"></a> [rds\_replica\_lag\_id](#output\_rds\_replica\_lag\_id) | id for monitor rds\_replica\_lag |
## Related documentation ## Related documentation
DataDog documentation: [https://docs.datadoghq.com/integrations/amazon_rds/](https://docs.datadoghq.com/integrations/amazon_rds/) DataDog documentation: [https://docs.datadoghq.com/integrations/amazon_rds/](https://docs.datadoghq.com/integrations/amazon_rds/)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -24,43 +24,62 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.age_of_oldest_message](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.visible_messages](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| age\_of\_oldest\_message\_enabled | Flag to enable Age of Oldest Message monitor | `string` | `"true"` | no | | <a name="input_age_of_oldest_message_enabled"></a> [age\_of\_oldest\_message\_enabled](#input\_age\_of\_oldest\_message\_enabled) | Flag to enable Age of Oldest Message monitor | `string` | `"true"` | no |
| age\_of\_oldest\_message\_extra\_tags | Extra tags for Age of Oldest Message monitor | `list(string)` | `[]` | no | | <a name="input_age_of_oldest_message_extra_tags"></a> [age\_of\_oldest\_message\_extra\_tags](#input\_age\_of\_oldest\_message\_extra\_tags) | Extra tags for Age of Oldest Message monitor | `list(string)` | `[]` | no |
| age\_of\_oldest\_message\_message | Custom message for Age of Oldest Message monitor | `string` | `""` | no | | <a name="input_age_of_oldest_message_message"></a> [age\_of\_oldest\_message\_message](#input\_age\_of\_oldest\_message\_message) | Custom message for Age of Oldest Message monitor | `string` | `""` | no |
| age\_of\_oldest\_message\_threshold\_critical | Alerting threshold in seconds | `number` | `600` | no | | <a name="input_age_of_oldest_message_threshold_critical"></a> [age\_of\_oldest\_message\_threshold\_critical](#input\_age\_of\_oldest\_message\_threshold\_critical) | Alerting threshold in seconds | `number` | `600` | no |
| age\_of\_oldest\_message\_threshold\_warning | Warning threshold in seconds | `number` | `300` | no | | <a name="input_age_of_oldest_message_threshold_warning"></a> [age\_of\_oldest\_message\_threshold\_warning](#input\_age\_of\_oldest\_message\_threshold\_warning) | Warning threshold in seconds | `number` | `300` | no |
| age\_of\_oldest\_message\_time\_aggregator | Monitor aggregator for Age of Oldest Message [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_age_of_oldest_message_time_aggregator"></a> [age\_of\_oldest\_message\_time\_aggregator](#input\_age\_of\_oldest\_message\_time\_aggregator) | Monitor aggregator for Age of Oldest Message [available values: min, max or avg] | `string` | `"min"` | no |
| age\_of\_oldest\_message\_timeframe | Monitor timeframe for Age of Oldest Message [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_30m"` | no | | <a name="input_age_of_oldest_message_timeframe"></a> [age\_of\_oldest\_message\_timeframe](#input\_age\_of\_oldest\_message\_timeframe) | Monitor timeframe for Age of Oldest Message [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_30m"` | no |
| environment | Architecture environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| message | Message sent when a monitor is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
| visible\_messages\_enabled | Flag to enable Number of Visible Messages monitor | `string` | `"false"` | no | | <a name="input_visible_messages_enabled"></a> [visible\_messages\_enabled](#input\_visible\_messages\_enabled) | Flag to enable Number of Visible Messages monitor | `string` | `"false"` | no |
| visible\_messages\_extra\_tags | Extra tags for Number of Visible Messages monitor | `list(string)` | `[]` | no | | <a name="input_visible_messages_extra_tags"></a> [visible\_messages\_extra\_tags](#input\_visible\_messages\_extra\_tags) | Extra tags for Number of Visible Messages monitor | `list(string)` | `[]` | no |
| visible\_messages\_message | Custom message for Number of Visible Messages monitor | `string` | `""` | no | | <a name="input_visible_messages_message"></a> [visible\_messages\_message](#input\_visible\_messages\_message) | Custom message for Number of Visible Messages monitor | `string` | `""` | no |
| visible\_messages\_threshold\_critical | Alerting threshold in number of messages | `number` | `2` | no | | <a name="input_visible_messages_threshold_critical"></a> [visible\_messages\_threshold\_critical](#input\_visible\_messages\_threshold\_critical) | Alerting threshold in number of messages | `number` | `2` | no |
| visible\_messages\_threshold\_warning | Warning threshold in number of messages | `number` | `1` | no | | <a name="input_visible_messages_threshold_warning"></a> [visible\_messages\_threshold\_warning](#input\_visible\_messages\_threshold\_warning) | Warning threshold in number of messages | `number` | `1` | no |
| visible\_messages\_time\_aggregator | Monitor aggregator for Number of Visible Messages [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_visible_messages_time_aggregator"></a> [visible\_messages\_time\_aggregator](#input\_visible\_messages\_time\_aggregator) | Monitor aggregator for Number of Visible Messages [available values: min, max or avg] | `string` | `"min"` | no |
| visible\_messages\_timeframe | Monitor timeframe for Number of Visible Messages [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_30m"` | no | | <a name="input_visible_messages_timeframe"></a> [visible\_messages\_timeframe](#input\_visible\_messages\_timeframe) | Monitor timeframe for Number of Visible Messages [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_30m"` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| age\_of\_oldest\_message\_id | id for monitor age\_of\_oldest\_message | | <a name="output_age_of_oldest_message_id"></a> [age\_of\_oldest\_message\_id](#output\_age\_of\_oldest\_message\_id) | id for monitor age\_of\_oldest\_message |
| visible\_messages\_id | id for monitor visible\_messages | | <a name="output_visible_messages_id"></a> [visible\_messages\_id](#output\_visible\_messages\_id) | id for monitor visible\_messages |
## Related documentation ## Related documentation
* [Datadog Documentation](https://docs.datadoghq.com/integrations/amazon_sqs/) * [Datadog Documentation](https://docs.datadoghq.com/integrations/amazon_sqs/)
* [Service Documentation](https://docs.aws.amazon.com/sqs/index.html) * [Service Documentation](https://docs.aws.amazon.com/sqs/index.html)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -23,32 +23,48 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
No modules.
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.VPN_status](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| environment | Architecture Environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture Environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| filter\_tags | Tags used for metrics filtering | `string` | `"*"` | no | | <a name="input_filter_tags"></a> [filter\_tags](#input\_filter\_tags) | Tags used for metrics filtering | `string` | `"*"` | no |
| message | Message sent when an alert is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
| vpn\_status\_enabled | Flag to enable VPN status monitor | `string` | `"true"` | no | | <a name="input_vpn_status_enabled"></a> [vpn\_status\_enabled](#input\_vpn\_status\_enabled) | Flag to enable VPN status monitor | `string` | `"true"` | no |
| vpn\_status\_extra\_tags | Extra tags for VPN status monitor | `list(string)` | `[]` | no | | <a name="input_vpn_status_extra_tags"></a> [vpn\_status\_extra\_tags](#input\_vpn\_status\_extra\_tags) | Extra tags for VPN status monitor | `list(string)` | `[]` | no |
| vpn\_status\_message | Custom message for VPN status monitor | `string` | `""` | no | | <a name="input_vpn_status_message"></a> [vpn\_status\_message](#input\_vpn\_status\_message) | Custom message for VPN status monitor | `string` | `""` | no |
| vpn\_status\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | | <a name="input_vpn_status_no_data_timeframe"></a> [vpn\_status\_no\_data\_timeframe](#input\_vpn\_status\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no |
| vpn\_status\_time\_aggregator | Monitor aggregator for VPN status [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_vpn_status_time_aggregator"></a> [vpn\_status\_time\_aggregator](#input\_vpn\_status\_time\_aggregator) | Monitor aggregator for VPN status [available values: min, max or avg] | `string` | `"max"` | no |
| vpn\_status\_timeframe | Monitor timeframe for VPN status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_vpn_status_timeframe"></a> [vpn\_status\_timeframe](#input\_vpn\_status\_timeframe) | Monitor timeframe for VPN status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| VPN\_status\_id | id for monitor VPN\_status | | <a name="output_VPN_status_id"></a> [VPN\_status\_id](#output\_VPN\_status\_id) | id for monitor VPN\_status |
## Related documentation ## Related documentation
DataDog documentation: [https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/vpn-metricscollected.html](https://docs.datadoghq.com/integrations/amazon_web_services/) DataDog documentation: [https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/vpn-metricscollected.html](https://docs.datadoghq.com/integrations/amazon_web_services/)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -27,66 +27,88 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.apimgt_failed_requests](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.apimgt_other_requests](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.apimgt_status](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.apimgt_successful_requests](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.apimgt_unauthorized_requests](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| apimgt\_status\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | | <a name="input_apimgt_status_no_data_timeframe"></a> [apimgt\_status\_no\_data\_timeframe](#input\_apimgt\_status\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no |
| environment | Architecture environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| failed\_requests\_enabled | Flag to enable API Management failed requests monitor | `string` | `"true"` | no | | <a name="input_failed_requests_enabled"></a> [failed\_requests\_enabled](#input\_failed\_requests\_enabled) | Flag to enable API Management failed requests monitor | `string` | `"true"` | no |
| failed\_requests\_extra\_tags | Extra tags for API Management failed requests monitor | `list(string)` | `[]` | no | | <a name="input_failed_requests_extra_tags"></a> [failed\_requests\_extra\_tags](#input\_failed\_requests\_extra\_tags) | Extra tags for API Management failed requests monitor | `list(string)` | `[]` | no |
| failed\_requests\_message | Custom message for API Management failed requests monitor | `string` | `""` | no | | <a name="input_failed_requests_message"></a> [failed\_requests\_message](#input\_failed\_requests\_message) | Custom message for API Management failed requests monitor | `string` | `""` | no |
| failed\_requests\_threshold\_critical | Maximum acceptable percent of failed requests | `number` | `90` | no | | <a name="input_failed_requests_threshold_critical"></a> [failed\_requests\_threshold\_critical](#input\_failed\_requests\_threshold\_critical) | Maximum acceptable percent of failed requests | `number` | `90` | no |
| failed\_requests\_threshold\_warning | Warning regarding acceptable percent of failed requests | `number` | `50` | no | | <a name="input_failed_requests_threshold_warning"></a> [failed\_requests\_threshold\_warning](#input\_failed\_requests\_threshold\_warning) | Warning regarding acceptable percent of failed requests | `number` | `50` | no |
| failed\_requests\_time\_aggregator | Monitor aggregator for API Management failed requests [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_failed_requests_time_aggregator"></a> [failed\_requests\_time\_aggregator](#input\_failed\_requests\_time\_aggregator) | Monitor aggregator for API Management failed requests [available values: min, max or avg] | `string` | `"min"` | no |
| failed\_requests\_timeframe | Monitor timeframe for API Management failed requests [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_failed_requests_timeframe"></a> [failed\_requests\_timeframe](#input\_failed\_requests\_timeframe) | Monitor timeframe for API Management failed requests [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| message | Message sent when a Redis monitor is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when a Redis monitor is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| other\_requests\_enabled | Flag to enable API Management other requests monitor | `string` | `"true"` | no | | <a name="input_other_requests_enabled"></a> [other\_requests\_enabled](#input\_other\_requests\_enabled) | Flag to enable API Management other requests monitor | `string` | `"true"` | no |
| other\_requests\_extra\_tags | Extra tags for API Management other requests monitor | `list(string)` | `[]` | no | | <a name="input_other_requests_extra_tags"></a> [other\_requests\_extra\_tags](#input\_other\_requests\_extra\_tags) | Extra tags for API Management other requests monitor | `list(string)` | `[]` | no |
| other\_requests\_message | Custom message for API Management other requests monitor | `string` | `""` | no | | <a name="input_other_requests_message"></a> [other\_requests\_message](#input\_other\_requests\_message) | Custom message for API Management other requests monitor | `string` | `""` | no |
| other\_requests\_threshold\_critical | Maximum acceptable percent of other requests | `number` | `90` | no | | <a name="input_other_requests_threshold_critical"></a> [other\_requests\_threshold\_critical](#input\_other\_requests\_threshold\_critical) | Maximum acceptable percent of other requests | `number` | `90` | no |
| other\_requests\_threshold\_warning | Warning regarding acceptable percent of other requests | `number` | `50` | no | | <a name="input_other_requests_threshold_warning"></a> [other\_requests\_threshold\_warning](#input\_other\_requests\_threshold\_warning) | Warning regarding acceptable percent of other requests | `number` | `50` | no |
| other\_requests\_time\_aggregator | Monitor aggregator for API Management other requests [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_other_requests_time_aggregator"></a> [other\_requests\_time\_aggregator](#input\_other\_requests\_time\_aggregator) | Monitor aggregator for API Management other requests [available values: min, max or avg] | `string` | `"min"` | no |
| other\_requests\_timeframe | Monitor timeframe for API Management other requests [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_other_requests_timeframe"></a> [other\_requests\_timeframe](#input\_other\_requests\_timeframe) | Monitor timeframe for API Management other requests [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
| status\_enabled | Flag to enable API Management status monitor | `string` | `"true"` | no | | <a name="input_status_enabled"></a> [status\_enabled](#input\_status\_enabled) | Flag to enable API Management status monitor | `string` | `"true"` | no |
| status\_extra\_tags | Extra tags for API Management status monitor | `list(string)` | `[]` | no | | <a name="input_status_extra_tags"></a> [status\_extra\_tags](#input\_status\_extra\_tags) | Extra tags for API Management status monitor | `list(string)` | `[]` | no |
| status\_message | Custom message for API Management status monitor | `string` | `""` | no | | <a name="input_status_message"></a> [status\_message](#input\_status\_message) | Custom message for API Management status monitor | `string` | `""` | no |
| status\_time\_aggregator | Monitor aggregator for API Management status [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_status_time_aggregator"></a> [status\_time\_aggregator](#input\_status\_time\_aggregator) | Monitor aggregator for API Management status [available values: min, max or avg] | `string` | `"max"` | no |
| status\_timeframe | Monitor timeframe for API Management status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_status_timeframe"></a> [status\_timeframe](#input\_status\_timeframe) | Monitor timeframe for API Management status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| successful\_requests\_enabled | Flag to enable API Management successful requests monitor | `string` | `"true"` | no | | <a name="input_successful_requests_enabled"></a> [successful\_requests\_enabled](#input\_successful\_requests\_enabled) | Flag to enable API Management successful requests monitor | `string` | `"true"` | no |
| successful\_requests\_extra\_tags | Extra tags for API Management successful requests monitor | `list(string)` | `[]` | no | | <a name="input_successful_requests_extra_tags"></a> [successful\_requests\_extra\_tags](#input\_successful\_requests\_extra\_tags) | Extra tags for API Management successful requests monitor | `list(string)` | `[]` | no |
| successful\_requests\_message | Custom message for API Management successful requests monitor | `string` | `""` | no | | <a name="input_successful_requests_message"></a> [successful\_requests\_message](#input\_successful\_requests\_message) | Custom message for API Management successful requests monitor | `string` | `""` | no |
| successful\_requests\_threshold\_critical | Minimum acceptable percent of successful requests | `number` | `10` | no | | <a name="input_successful_requests_threshold_critical"></a> [successful\_requests\_threshold\_critical](#input\_successful\_requests\_threshold\_critical) | Minimum acceptable percent of successful requests | `number` | `10` | no |
| successful\_requests\_threshold\_warning | Warning regarding acceptable percent of successful requests | `number` | `30` | no | | <a name="input_successful_requests_threshold_warning"></a> [successful\_requests\_threshold\_warning](#input\_successful\_requests\_threshold\_warning) | Warning regarding acceptable percent of successful requests | `number` | `30` | no |
| successful\_requests\_time\_aggregator | Monitor aggregator for API Management successful requests [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_successful_requests_time_aggregator"></a> [successful\_requests\_time\_aggregator](#input\_successful\_requests\_time\_aggregator) | Monitor aggregator for API Management successful requests [available values: min, max or avg] | `string` | `"max"` | no |
| successful\_requests\_timeframe | Monitor timeframe for API Management successful requests [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_successful_requests_timeframe"></a> [successful\_requests\_timeframe](#input\_successful\_requests\_timeframe) | Monitor timeframe for API Management successful requests [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| unauthorized\_requests\_enabled | Flag to enable API Management unauthorized requests monitor | `string` | `"true"` | no | | <a name="input_unauthorized_requests_enabled"></a> [unauthorized\_requests\_enabled](#input\_unauthorized\_requests\_enabled) | Flag to enable API Management unauthorized requests monitor | `string` | `"true"` | no |
| unauthorized\_requests\_extra\_tags | Extra tags for API Management unauthorized requests monitor | `list(string)` | `[]` | no | | <a name="input_unauthorized_requests_extra_tags"></a> [unauthorized\_requests\_extra\_tags](#input\_unauthorized\_requests\_extra\_tags) | Extra tags for API Management unauthorized requests monitor | `list(string)` | `[]` | no |
| unauthorized\_requests\_message | Custom message for API Management unauthorized requests monitor | `string` | `""` | no | | <a name="input_unauthorized_requests_message"></a> [unauthorized\_requests\_message](#input\_unauthorized\_requests\_message) | Custom message for API Management unauthorized requests monitor | `string` | `""` | no |
| unauthorized\_requests\_threshold\_critical | Maximum acceptable percent of unauthorized requests | `number` | `90` | no | | <a name="input_unauthorized_requests_threshold_critical"></a> [unauthorized\_requests\_threshold\_critical](#input\_unauthorized\_requests\_threshold\_critical) | Maximum acceptable percent of unauthorized requests | `number` | `90` | no |
| unauthorized\_requests\_threshold\_warning | Warning regarding acceptable percent of unauthorized requests | `number` | `50` | no | | <a name="input_unauthorized_requests_threshold_warning"></a> [unauthorized\_requests\_threshold\_warning](#input\_unauthorized\_requests\_threshold\_warning) | Warning regarding acceptable percent of unauthorized requests | `number` | `50` | no |
| unauthorized\_requests\_time\_aggregator | Monitor aggregator for API Management unauthorized requests [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_unauthorized_requests_time_aggregator"></a> [unauthorized\_requests\_time\_aggregator](#input\_unauthorized\_requests\_time\_aggregator) | Monitor aggregator for API Management unauthorized requests [available values: min, max or avg] | `string` | `"min"` | no |
| unauthorized\_requests\_timeframe | Monitor timeframe for API Management unauthorized requests [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_unauthorized_requests_timeframe"></a> [unauthorized\_requests\_timeframe](#input\_unauthorized\_requests\_timeframe) | Monitor timeframe for API Management unauthorized requests [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| apimgt\_failed\_requests\_id | id for monitor apimgt\_failed\_requests | | <a name="output_apimgt_failed_requests_id"></a> [apimgt\_failed\_requests\_id](#output\_apimgt\_failed\_requests\_id) | id for monitor apimgt\_failed\_requests |
| apimgt\_other\_requests\_id | id for monitor apimgt\_other\_requests | | <a name="output_apimgt_other_requests_id"></a> [apimgt\_other\_requests\_id](#output\_apimgt\_other\_requests\_id) | id for monitor apimgt\_other\_requests |
| apimgt\_status\_id | id for monitor apimgt\_status | | <a name="output_apimgt_status_id"></a> [apimgt\_status\_id](#output\_apimgt\_status\_id) | id for monitor apimgt\_status |
| apimgt\_successful\_requests\_id | id for monitor apimgt\_successful\_requests | | <a name="output_apimgt_successful_requests_id"></a> [apimgt\_successful\_requests\_id](#output\_apimgt\_successful\_requests\_id) | id for monitor apimgt\_successful\_requests |
| apimgt\_unauthorized\_requests\_id | id for monitor apimgt\_unauthorized\_requests | | <a name="output_apimgt_unauthorized_requests_id"></a> [apimgt\_unauthorized\_requests\_id](#output\_apimgt\_unauthorized\_requests\_id) | id for monitor apimgt\_unauthorized\_requests |
## Related documentation ## Related documentation
Azure API Management metrics documentation: [https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-use-azure-monitor](https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-use-azure-monitor) Azure API Management metrics documentation: [https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-use-azure-monitor](https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-use-azure-monitor)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -31,95 +31,125 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a |
| <a name="module_filter-tags-4xx-error"></a> [filter-tags-4xx-error](#module\_filter-tags-4xx-error) | ../../../common/filter-tags | n/a |
| <a name="module_filter-tags-5xx-error"></a> [filter-tags-5xx-error](#module\_filter-tags-5xx-error) | ../../../common/filter-tags | n/a |
| <a name="module_filter-tags-backend-4xx-error"></a> [filter-tags-backend-4xx-error](#module\_filter-tags-backend-4xx-error) | ../../../common/filter-tags | n/a |
| <a name="module_filter-tags-backend-5xx-error"></a> [filter-tags-backend-5xx-error](#module\_filter-tags-backend-5xx-error) | ../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.appgateway_backend_connect_time](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.appgateway_backend_http_4xx_errors](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.appgateway_backend_http_5xx_errors](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.appgateway_failed_requests](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.appgateway_healthy_host_ratio](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.appgateway_http_4xx_errors](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.appgateway_http_5xx_errors](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.appgateway_status](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.total_requests](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| appgateway\_backend\_connect\_time\_enabled | Flag to enable App Gateway backend\_connect\_time monitor | `string` | `"true"` | no | | <a name="input_appgateway_backend_connect_time_enabled"></a> [appgateway\_backend\_connect\_time\_enabled](#input\_appgateway\_backend\_connect\_time\_enabled) | Flag to enable App Gateway backend\_connect\_time monitor | `string` | `"true"` | no |
| appgateway\_backend\_connect\_time\_extra\_tags | Extra tags for App Gateway backend\_connect\_time monitor | `list(string)` | `[]` | no | | <a name="input_appgateway_backend_connect_time_extra_tags"></a> [appgateway\_backend\_connect\_time\_extra\_tags](#input\_appgateway\_backend\_connect\_time\_extra\_tags) | Extra tags for App Gateway backend\_connect\_time monitor | `list(string)` | `[]` | no |
| appgateway\_backend\_connect\_time\_message | Custom message for App Gateway backend\_connect\_time monitor | `string` | `""` | no | | <a name="input_appgateway_backend_connect_time_message"></a> [appgateway\_backend\_connect\_time\_message](#input\_appgateway\_backend\_connect\_time\_message) | Custom message for App Gateway backend\_connect\_time monitor | `string` | `""` | no |
| appgateway\_backend\_connect\_time\_threshold\_critical | Maximum critical backend\_connect\_time errors in milliseconds | `number` | `50` | no | | <a name="input_appgateway_backend_connect_time_threshold_critical"></a> [appgateway\_backend\_connect\_time\_threshold\_critical](#input\_appgateway\_backend\_connect\_time\_threshold\_critical) | Maximum critical backend\_connect\_time errors in milliseconds | `number` | `50` | no |
| appgateway\_backend\_connect\_time\_threshold\_warning | Warning regarding backend\_connect\_time errors in milliseconds | `number` | `40` | no | | <a name="input_appgateway_backend_connect_time_threshold_warning"></a> [appgateway\_backend\_connect\_time\_threshold\_warning](#input\_appgateway\_backend\_connect\_time\_threshold\_warning) | Warning regarding backend\_connect\_time errors in milliseconds | `number` | `40` | no |
| appgateway\_backend\_connect\_time\_time\_aggregator | Monitor aggregator for App Gateway backend\_connect\_time [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_appgateway_backend_connect_time_time_aggregator"></a> [appgateway\_backend\_connect\_time\_time\_aggregator](#input\_appgateway\_backend\_connect\_time\_time\_aggregator) | Monitor aggregator for App Gateway backend\_connect\_time [available values: min, max or avg] | `string` | `"max"` | no |
| appgateway\_backend\_connect\_time\_timeframe | Monitor timeframe for App Gateway backend\_connect\_time [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_appgateway_backend_connect_time_timeframe"></a> [appgateway\_backend\_connect\_time\_timeframe](#input\_appgateway\_backend\_connect\_time\_timeframe) | Monitor timeframe for App Gateway backend\_connect\_time [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| appgateway\_backend\_http\_4xx\_errors\_enabled | Flag to enable App Gateway http 4xx errors monitor | `string` | `"true"` | no | | <a name="input_appgateway_backend_http_4xx_errors_enabled"></a> [appgateway\_backend\_http\_4xx\_errors\_enabled](#input\_appgateway\_backend\_http\_4xx\_errors\_enabled) | Flag to enable App Gateway http 4xx errors monitor | `string` | `"true"` | no |
| appgateway\_backend\_http\_4xx\_errors\_extra\_tags | Extra tags for App Gateway http 4xx errors monitor | `list(string)` | `[]` | no | | <a name="input_appgateway_backend_http_4xx_errors_extra_tags"></a> [appgateway\_backend\_http\_4xx\_errors\_extra\_tags](#input\_appgateway\_backend\_http\_4xx\_errors\_extra\_tags) | Extra tags for App Gateway http 4xx errors monitor | `list(string)` | `[]` | no |
| appgateway\_backend\_http\_4xx\_errors\_message | Custom message for App Gateway http 4xx errors monitor | `string` | `""` | no | | <a name="input_appgateway_backend_http_4xx_errors_message"></a> [appgateway\_backend\_http\_4xx\_errors\_message](#input\_appgateway\_backend\_http\_4xx\_errors\_message) | Custom message for App Gateway http 4xx errors monitor | `string` | `""` | no |
| appgateway\_backend\_http\_4xx\_errors\_threshold\_critical | Minimum critical acceptable percent of 4xx error | `number` | `95` | no | | <a name="input_appgateway_backend_http_4xx_errors_threshold_critical"></a> [appgateway\_backend\_http\_4xx\_errors\_threshold\_critical](#input\_appgateway\_backend\_http\_4xx\_errors\_threshold\_critical) | Minimum critical acceptable percent of 4xx error | `number` | `95` | no |
| appgateway\_backend\_http\_4xx\_errors\_threshold\_warning | Warning regarding acceptable percent of 4xx error | `number` | `80` | no | | <a name="input_appgateway_backend_http_4xx_errors_threshold_warning"></a> [appgateway\_backend\_http\_4xx\_errors\_threshold\_warning](#input\_appgateway\_backend\_http\_4xx\_errors\_threshold\_warning) | Warning regarding acceptable percent of 4xx error | `number` | `80` | no |
| appgateway\_backend\_http\_4xx\_errors\_time\_aggregator | Monitor aggregator for App Gateway http 4xx errors [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_appgateway_backend_http_4xx_errors_time_aggregator"></a> [appgateway\_backend\_http\_4xx\_errors\_time\_aggregator](#input\_appgateway\_backend\_http\_4xx\_errors\_time\_aggregator) | Monitor aggregator for App Gateway http 4xx errors [available values: min, max or avg] | `string` | `"max"` | no |
| appgateway\_backend\_http\_4xx\_errors\_timeframe | Monitor timeframe for App Gateway http 4xx errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_appgateway_backend_http_4xx_errors_timeframe"></a> [appgateway\_backend\_http\_4xx\_errors\_timeframe](#input\_appgateway\_backend\_http\_4xx\_errors\_timeframe) | Monitor timeframe for App Gateway http 4xx errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| appgateway\_backend\_http\_5xx\_errors\_enabled | Flag to enable App Gateway http 5xx errors monitor | `string` | `"true"` | no | | <a name="input_appgateway_backend_http_5xx_errors_enabled"></a> [appgateway\_backend\_http\_5xx\_errors\_enabled](#input\_appgateway\_backend\_http\_5xx\_errors\_enabled) | Flag to enable App Gateway http 5xx errors monitor | `string` | `"true"` | no |
| appgateway\_backend\_http\_5xx\_errors\_extra\_tags | Extra tags for App Gateway http 5xx errors monitor | `list(string)` | `[]` | no | | <a name="input_appgateway_backend_http_5xx_errors_extra_tags"></a> [appgateway\_backend\_http\_5xx\_errors\_extra\_tags](#input\_appgateway\_backend\_http\_5xx\_errors\_extra\_tags) | Extra tags for App Gateway http 5xx errors monitor | `list(string)` | `[]` | no |
| appgateway\_backend\_http\_5xx\_errors\_message | Custom message for App Gateway http 5xx errors monitor | `string` | `""` | no | | <a name="input_appgateway_backend_http_5xx_errors_message"></a> [appgateway\_backend\_http\_5xx\_errors\_message](#input\_appgateway\_backend\_http\_5xx\_errors\_message) | Custom message for App Gateway http 5xx errors monitor | `string` | `""` | no |
| appgateway\_backend\_http\_5xx\_errors\_threshold\_critical | Minimum critical acceptable percent of 5xx error | `number` | `95` | no | | <a name="input_appgateway_backend_http_5xx_errors_threshold_critical"></a> [appgateway\_backend\_http\_5xx\_errors\_threshold\_critical](#input\_appgateway\_backend\_http\_5xx\_errors\_threshold\_critical) | Minimum critical acceptable percent of 5xx error | `number` | `95` | no |
| appgateway\_backend\_http\_5xx\_errors\_threshold\_warning | Warning regarding acceptable percent of 5xx error | `number` | `80` | no | | <a name="input_appgateway_backend_http_5xx_errors_threshold_warning"></a> [appgateway\_backend\_http\_5xx\_errors\_threshold\_warning](#input\_appgateway\_backend\_http\_5xx\_errors\_threshold\_warning) | Warning regarding acceptable percent of 5xx error | `number` | `80` | no |
| appgateway\_backend\_http\_5xx\_errors\_time\_aggregator | Monitor aggregator for App Gateway http 5xx errors [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_appgateway_backend_http_5xx_errors_time_aggregator"></a> [appgateway\_backend\_http\_5xx\_errors\_time\_aggregator](#input\_appgateway\_backend\_http\_5xx\_errors\_time\_aggregator) | Monitor aggregator for App Gateway http 5xx errors [available values: min, max or avg] | `string` | `"max"` | no |
| appgateway\_backend\_http\_5xx\_errors\_timeframe | Monitor timeframe for App Gateway http 5xx errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_appgateway_backend_http_5xx_errors_timeframe"></a> [appgateway\_backend\_http\_5xx\_errors\_timeframe](#input\_appgateway\_backend\_http\_5xx\_errors\_timeframe) | Monitor timeframe for App Gateway http 5xx errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| appgateway\_failed\_requests\_enabled | Flag to enable App Gateway failed requests monitor | `string` | `"true"` | no | | <a name="input_appgateway_failed_requests_enabled"></a> [appgateway\_failed\_requests\_enabled](#input\_appgateway\_failed\_requests\_enabled) | Flag to enable App Gateway failed requests monitor | `string` | `"true"` | no |
| appgateway\_failed\_requests\_extra\_tags | Extra tags for App Gateway failed requests monitor | `list(string)` | `[]` | no | | <a name="input_appgateway_failed_requests_extra_tags"></a> [appgateway\_failed\_requests\_extra\_tags](#input\_appgateway\_failed\_requests\_extra\_tags) | Extra tags for App Gateway failed requests monitor | `list(string)` | `[]` | no |
| appgateway\_failed\_requests\_message | Custom message for App Gateway failed requests monitor | `string` | `""` | no | | <a name="input_appgateway_failed_requests_message"></a> [appgateway\_failed\_requests\_message](#input\_appgateway\_failed\_requests\_message) | Custom message for App Gateway failed requests monitor | `string` | `""` | no |
| appgateway\_failed\_requests\_threshold\_critical | Maximum critical acceptable percent of failed errors | `number` | `95` | no | | <a name="input_appgateway_failed_requests_threshold_critical"></a> [appgateway\_failed\_requests\_threshold\_critical](#input\_appgateway\_failed\_requests\_threshold\_critical) | Maximum critical acceptable percent of failed errors | `number` | `95` | no |
| appgateway\_failed\_requests\_threshold\_warning | Warning regarding acceptable percent of failed errors | `number` | `80` | no | | <a name="input_appgateway_failed_requests_threshold_warning"></a> [appgateway\_failed\_requests\_threshold\_warning](#input\_appgateway\_failed\_requests\_threshold\_warning) | Warning regarding acceptable percent of failed errors | `number` | `80` | no |
| appgateway\_failed\_requests\_time\_aggregator | Monitor aggregator for App Gateway failed requests [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_appgateway_failed_requests_time_aggregator"></a> [appgateway\_failed\_requests\_time\_aggregator](#input\_appgateway\_failed\_requests\_time\_aggregator) | Monitor aggregator for App Gateway failed requests [available values: min, max or avg] | `string` | `"min"` | no |
| appgateway\_failed\_requests\_timeframe | Monitor timeframe for App Gateway failed requests [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_appgateway_failed_requests_timeframe"></a> [appgateway\_failed\_requests\_timeframe](#input\_appgateway\_failed\_requests\_timeframe) | Monitor timeframe for App Gateway failed requests [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| appgateway\_http\_4xx\_errors\_enabled | Flag to enable App Gateway http 4xx errors monitor | `string` | `"true"` | no | | <a name="input_appgateway_http_4xx_errors_enabled"></a> [appgateway\_http\_4xx\_errors\_enabled](#input\_appgateway\_http\_4xx\_errors\_enabled) | Flag to enable App Gateway http 4xx errors monitor | `string` | `"true"` | no |
| appgateway\_http\_4xx\_errors\_extra\_tags | Extra tags for App Gateway http 4xx errors monitor | `list(string)` | `[]` | no | | <a name="input_appgateway_http_4xx_errors_extra_tags"></a> [appgateway\_http\_4xx\_errors\_extra\_tags](#input\_appgateway\_http\_4xx\_errors\_extra\_tags) | Extra tags for App Gateway http 4xx errors monitor | `list(string)` | `[]` | no |
| appgateway\_http\_4xx\_errors\_message | Custom message for App Gateway http 4xx errors monitor | `string` | `""` | no | | <a name="input_appgateway_http_4xx_errors_message"></a> [appgateway\_http\_4xx\_errors\_message](#input\_appgateway\_http\_4xx\_errors\_message) | Custom message for App Gateway http 4xx errors monitor | `string` | `""` | no |
| appgateway\_http\_4xx\_errors\_threshold\_critical | Maximum critical acceptable percent of 4xx error | `number` | `95` | no | | <a name="input_appgateway_http_4xx_errors_threshold_critical"></a> [appgateway\_http\_4xx\_errors\_threshold\_critical](#input\_appgateway\_http\_4xx\_errors\_threshold\_critical) | Maximum critical acceptable percent of 4xx error | `number` | `95` | no |
| appgateway\_http\_4xx\_errors\_threshold\_warning | Warning regarding acceptable percent of 4xx error | `number` | `80` | no | | <a name="input_appgateway_http_4xx_errors_threshold_warning"></a> [appgateway\_http\_4xx\_errors\_threshold\_warning](#input\_appgateway\_http\_4xx\_errors\_threshold\_warning) | Warning regarding acceptable percent of 4xx error | `number` | `80` | no |
| appgateway\_http\_4xx\_errors\_time\_aggregator | Monitor aggregator for App Gateway http 4xx errors [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_appgateway_http_4xx_errors_time_aggregator"></a> [appgateway\_http\_4xx\_errors\_time\_aggregator](#input\_appgateway\_http\_4xx\_errors\_time\_aggregator) | Monitor aggregator for App Gateway http 4xx errors [available values: min, max or avg] | `string` | `"max"` | no |
| appgateway\_http\_4xx\_errors\_timeframe | Monitor timeframe for App Gateway http 4xx errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_appgateway_http_4xx_errors_timeframe"></a> [appgateway\_http\_4xx\_errors\_timeframe](#input\_appgateway\_http\_4xx\_errors\_timeframe) | Monitor timeframe for App Gateway http 4xx errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| appgateway\_http\_5xx\_errors\_enabled | Flag to enable App Gateway http 5xx errors monitor | `string` | `"true"` | no | | <a name="input_appgateway_http_5xx_errors_enabled"></a> [appgateway\_http\_5xx\_errors\_enabled](#input\_appgateway\_http\_5xx\_errors\_enabled) | Flag to enable App Gateway http 5xx errors monitor | `string` | `"true"` | no |
| appgateway\_http\_5xx\_errors\_extra\_tags | Extra tags for App Gateway http 5xx errors monitor | `list(string)` | `[]` | no | | <a name="input_appgateway_http_5xx_errors_extra_tags"></a> [appgateway\_http\_5xx\_errors\_extra\_tags](#input\_appgateway\_http\_5xx\_errors\_extra\_tags) | Extra tags for App Gateway http 5xx errors monitor | `list(string)` | `[]` | no |
| appgateway\_http\_5xx\_errors\_message | Custom message for App Gateway http 5xx errors monitor | `string` | `""` | no | | <a name="input_appgateway_http_5xx_errors_message"></a> [appgateway\_http\_5xx\_errors\_message](#input\_appgateway\_http\_5xx\_errors\_message) | Custom message for App Gateway http 5xx errors monitor | `string` | `""` | no |
| appgateway\_http\_5xx\_errors\_threshold\_critical | Maximum critical acceptable percent of 5xx error | `number` | `95` | no | | <a name="input_appgateway_http_5xx_errors_threshold_critical"></a> [appgateway\_http\_5xx\_errors\_threshold\_critical](#input\_appgateway\_http\_5xx\_errors\_threshold\_critical) | Maximum critical acceptable percent of 5xx error | `number` | `95` | no |
| appgateway\_http\_5xx\_errors\_threshold\_warning | Warning regarding acceptable percent of 5xx error | `number` | `80` | no | | <a name="input_appgateway_http_5xx_errors_threshold_warning"></a> [appgateway\_http\_5xx\_errors\_threshold\_warning](#input\_appgateway\_http\_5xx\_errors\_threshold\_warning) | Warning regarding acceptable percent of 5xx error | `number` | `80` | no |
| appgateway\_http\_5xx\_errors\_time\_aggregator | Monitor aggregator for App Gateway http 5xx errors [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_appgateway_http_5xx_errors_time_aggregator"></a> [appgateway\_http\_5xx\_errors\_time\_aggregator](#input\_appgateway\_http\_5xx\_errors\_time\_aggregator) | Monitor aggregator for App Gateway http 5xx errors [available values: min, max or avg] | `string` | `"max"` | no |
| appgateway\_http\_5xx\_errors\_timeframe | Monitor timeframe for App Gateway http 5xx errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_appgateway_http_5xx_errors_timeframe"></a> [appgateway\_http\_5xx\_errors\_timeframe](#input\_appgateway\_http\_5xx\_errors\_timeframe) | Monitor timeframe for App Gateway http 5xx errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| appgateway\_status\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | | <a name="input_appgateway_status_no_data_timeframe"></a> [appgateway\_status\_no\_data\_timeframe](#input\_appgateway\_status\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no |
| appgateway\_unhealthy\_host\_ratio\_enabled | Flag to enable App Gateway unhealthy host ratio monitor | `string` | `"true"` | no | | <a name="input_appgateway_unhealthy_host_ratio_enabled"></a> [appgateway\_unhealthy\_host\_ratio\_enabled](#input\_appgateway\_unhealthy\_host\_ratio\_enabled) | Flag to enable App Gateway unhealthy host ratio monitor | `string` | `"true"` | no |
| appgateway\_unhealthy\_host\_ratio\_extra\_tags | Extra tags for App Gateway unhealthy host ratio monitor | `list(string)` | `[]` | no | | <a name="input_appgateway_unhealthy_host_ratio_extra_tags"></a> [appgateway\_unhealthy\_host\_ratio\_extra\_tags](#input\_appgateway\_unhealthy\_host\_ratio\_extra\_tags) | Extra tags for App Gateway unhealthy host ratio monitor | `list(string)` | `[]` | no |
| appgateway\_unhealthy\_host\_ratio\_message | Custom message for App Gateway unhealthy host ratio monitor | `string` | `""` | no | | <a name="input_appgateway_unhealthy_host_ratio_message"></a> [appgateway\_unhealthy\_host\_ratio\_message](#input\_appgateway\_unhealthy\_host\_ratio\_message) | Custom message for App Gateway unhealthy host ratio monitor | `string` | `""` | no |
| appgateway\_unhealthy\_host\_ratio\_threshold\_critical | Maximum critical acceptable ratio of unhealthy host | `number` | `75` | no | | <a name="input_appgateway_unhealthy_host_ratio_threshold_critical"></a> [appgateway\_unhealthy\_host\_ratio\_threshold\_critical](#input\_appgateway\_unhealthy\_host\_ratio\_threshold\_critical) | Maximum critical acceptable ratio of unhealthy host | `number` | `75` | no |
| appgateway\_unhealthy\_host\_ratio\_threshold\_warning | Warning regarding acceptable ratio of unhealthy host | `number` | `50` | no | | <a name="input_appgateway_unhealthy_host_ratio_threshold_warning"></a> [appgateway\_unhealthy\_host\_ratio\_threshold\_warning](#input\_appgateway\_unhealthy\_host\_ratio\_threshold\_warning) | Warning regarding acceptable ratio of unhealthy host | `number` | `50` | no |
| appgateway\_unhealthy\_host\_ratio\_time\_aggregator | Monitor aggregator for App Gateway unhealthy host ratio [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_appgateway_unhealthy_host_ratio_time_aggregator"></a> [appgateway\_unhealthy\_host\_ratio\_time\_aggregator](#input\_appgateway\_unhealthy\_host\_ratio\_time\_aggregator) | Monitor aggregator for App Gateway unhealthy host ratio [available values: min, max or avg] | `string` | `"max"` | no |
| appgateway\_unhealthy\_host\_ratio\_timeframe | Monitor timeframe for App Gateway unhealthy host ratio [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_appgateway_unhealthy_host_ratio_timeframe"></a> [appgateway\_unhealthy\_host\_ratio\_timeframe](#input\_appgateway\_unhealthy\_host\_ratio\_timeframe) | Monitor timeframe for App Gateway unhealthy host ratio [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| environment | Architecture environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| message | Message sent when a monitor is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
| status\_enabled | Flag to enable App Gateway status | `string` | `"true"` | no | | <a name="input_status_enabled"></a> [status\_enabled](#input\_status\_enabled) | Flag to enable App Gateway status | `string` | `"true"` | no |
| status\_extra\_tags | Extra tags for App Gateway status | `list(string)` | `[]` | no | | <a name="input_status_extra_tags"></a> [status\_extra\_tags](#input\_status\_extra\_tags) | Extra tags for App Gateway status | `list(string)` | `[]` | no |
| status\_message | Custom message for App Gateway status | `string` | `""` | no | | <a name="input_status_message"></a> [status\_message](#input\_status\_message) | Custom message for App Gateway status | `string` | `""` | no |
| status\_time\_aggregator | Monitor aggregator for App Gateway status [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_status_time_aggregator"></a> [status\_time\_aggregator](#input\_status\_time\_aggregator) | Monitor aggregator for App Gateway status [available values: min, max or avg] | `string` | `"max"` | no |
| status\_timeframe | Monitor timeframe for App Gateway status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_status_timeframe"></a> [status\_timeframe](#input\_status\_timeframe) | Monitor timeframe for App Gateway status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| total\_requests\_enabled | Flag to enable App Gateway current connections monitor | `string` | `"true"` | no | | <a name="input_total_requests_enabled"></a> [total\_requests\_enabled](#input\_total\_requests\_enabled) | Flag to enable App Gateway current connections monitor | `string` | `"true"` | no |
| total\_requests\_extra\_tags | Extra tags for App Gateway current connections monitor | `list(string)` | `[]` | no | | <a name="input_total_requests_extra_tags"></a> [total\_requests\_extra\_tags](#input\_total\_requests\_extra\_tags) | Extra tags for App Gateway current connections monitor | `list(string)` | `[]` | no |
| total\_requests\_message | Custom message for App Gateway current connections monitor | `string` | `""` | no | | <a name="input_total_requests_message"></a> [total\_requests\_message](#input\_total\_requests\_message) | Custom message for App Gateway current connections monitor | `string` | `""` | no |
| total\_requests\_time\_aggregator | Monitor aggregator for App Gateway current connections [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_total_requests_time_aggregator"></a> [total\_requests\_time\_aggregator](#input\_total\_requests\_time\_aggregator) | Monitor aggregator for App Gateway current connections [available values: min, max or avg] | `string` | `"max"` | no |
| total\_requests\_timeframe | Monitor timeframe for App Gateway current connections [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | | <a name="input_total_requests_timeframe"></a> [total\_requests\_timeframe](#input\_total\_requests\_timeframe) | Monitor timeframe for App Gateway current connections [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| appgateway\_backend\_connect\_time\_id | id for monitor appgateway\_backend\_connect\_time | | <a name="output_appgateway_backend_connect_time_id"></a> [appgateway\_backend\_connect\_time\_id](#output\_appgateway\_backend\_connect\_time\_id) | id for monitor appgateway\_backend\_connect\_time |
| appgateway\_backend\_http\_4xx\_errors\_id | id for monitor appgateway\_backend\_http\_4xx\_errors | | <a name="output_appgateway_backend_http_4xx_errors_id"></a> [appgateway\_backend\_http\_4xx\_errors\_id](#output\_appgateway\_backend\_http\_4xx\_errors\_id) | id for monitor appgateway\_backend\_http\_4xx\_errors |
| appgateway\_backend\_http\_5xx\_errors\_id | id for monitor appgateway\_backend\_http\_5xx\_errors | | <a name="output_appgateway_backend_http_5xx_errors_id"></a> [appgateway\_backend\_http\_5xx\_errors\_id](#output\_appgateway\_backend\_http\_5xx\_errors\_id) | id for monitor appgateway\_backend\_http\_5xx\_errors |
| appgateway\_failed\_requests\_id | id for monitor appgateway\_failed\_requests | | <a name="output_appgateway_failed_requests_id"></a> [appgateway\_failed\_requests\_id](#output\_appgateway\_failed\_requests\_id) | id for monitor appgateway\_failed\_requests |
| appgateway\_healthy\_host\_ratio\_id | id for monitor appgateway\_healthy\_host\_ratio | | <a name="output_appgateway_healthy_host_ratio_id"></a> [appgateway\_healthy\_host\_ratio\_id](#output\_appgateway\_healthy\_host\_ratio\_id) | id for monitor appgateway\_healthy\_host\_ratio |
| appgateway\_http\_4xx\_errors\_id | id for monitor appgateway\_http\_4xx\_errors | | <a name="output_appgateway_http_4xx_errors_id"></a> [appgateway\_http\_4xx\_errors\_id](#output\_appgateway\_http\_4xx\_errors\_id) | id for monitor appgateway\_http\_4xx\_errors |
| appgateway\_http\_5xx\_errors\_id | id for monitor appgateway\_http\_5xx\_errors | | <a name="output_appgateway_http_5xx_errors_id"></a> [appgateway\_http\_5xx\_errors\_id](#output\_appgateway\_http\_5xx\_errors\_id) | id for monitor appgateway\_http\_5xx\_errors |
| appgateway\_status\_id | id for monitor appgateway\_status | | <a name="output_appgateway_status_id"></a> [appgateway\_status\_id](#output\_appgateway\_status\_id) | id for monitor appgateway\_status |
| total\_requests\_id | id for monitor total\_requests | | <a name="output_total_requests_id"></a> [total\_requests\_id](#output\_total\_requests\_id) | id for monitor total\_requests |
## Related documentation ## Related documentation

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -28,74 +28,97 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.appservices_http_4xx_errors_count](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.appservices_http_5xx_errors_count](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.appservices_http_success_status_rate](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.appservices_memory_usage_count](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.appservices_response_time](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.appservices_status](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| appservices\_status\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | | <a name="input_appservices_status_no_data_timeframe"></a> [appservices\_status\_no\_data\_timeframe](#input\_appservices\_status\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no |
| environment | Architecture environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| http\_4xx\_requests\_enabled | Flag to enable App Services 4xx requests monitor | `string` | `"true"` | no | | <a name="input_http_4xx_requests_enabled"></a> [http\_4xx\_requests\_enabled](#input\_http\_4xx\_requests\_enabled) | Flag to enable App Services 4xx requests monitor | `string` | `"true"` | no |
| http\_4xx\_requests\_extra\_tags | Extra tags for App Services 4xx requests monitor | `list(string)` | `[]` | no | | <a name="input_http_4xx_requests_extra_tags"></a> [http\_4xx\_requests\_extra\_tags](#input\_http\_4xx\_requests\_extra\_tags) | Extra tags for App Services 4xx requests monitor | `list(string)` | `[]` | no |
| http\_4xx\_requests\_message | Custom message for App Services 4xx requests monitor | `string` | `""` | no | | <a name="input_http_4xx_requests_message"></a> [http\_4xx\_requests\_message](#input\_http\_4xx\_requests\_message) | Custom message for App Services 4xx requests monitor | `string` | `""` | no |
| http\_4xx\_requests\_threshold\_critical | Maximum critical acceptable percent of 4xx errors | `number` | `90` | no | | <a name="input_http_4xx_requests_threshold_critical"></a> [http\_4xx\_requests\_threshold\_critical](#input\_http\_4xx\_requests\_threshold\_critical) | Maximum critical acceptable percent of 4xx errors | `number` | `90` | no |
| http\_4xx\_requests\_threshold\_warning | Warning regarding acceptable percent of 4xx errors | `number` | `50` | no | | <a name="input_http_4xx_requests_threshold_warning"></a> [http\_4xx\_requests\_threshold\_warning](#input\_http\_4xx\_requests\_threshold\_warning) | Warning regarding acceptable percent of 4xx errors | `number` | `50` | no |
| http\_4xx\_requests\_time\_aggregator | Monitor aggregator for App Services 4xx requests [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_http_4xx_requests_time_aggregator"></a> [http\_4xx\_requests\_time\_aggregator](#input\_http\_4xx\_requests\_time\_aggregator) | Monitor aggregator for App Services 4xx requests [available values: min, max or avg] | `string` | `"min"` | no |
| http\_4xx\_requests\_timeframe | Monitor timeframe for App Services 4xx requests [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_http_4xx_requests_timeframe"></a> [http\_4xx\_requests\_timeframe](#input\_http\_4xx\_requests\_timeframe) | Monitor timeframe for App Services 4xx requests [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| http\_5xx\_requests\_enabled | Flag to enable App Services 5xx requests monitor | `string` | `"true"` | no | | <a name="input_http_5xx_requests_enabled"></a> [http\_5xx\_requests\_enabled](#input\_http\_5xx\_requests\_enabled) | Flag to enable App Services 5xx requests monitor | `string` | `"true"` | no |
| http\_5xx\_requests\_extra\_tags | Extra tags for App Services 5xx requests monitor | `list(string)` | `[]` | no | | <a name="input_http_5xx_requests_extra_tags"></a> [http\_5xx\_requests\_extra\_tags](#input\_http\_5xx\_requests\_extra\_tags) | Extra tags for App Services 5xx requests monitor | `list(string)` | `[]` | no |
| http\_5xx\_requests\_message | Custom message for App Services 5xx requests monitor | `string` | `""` | no | | <a name="input_http_5xx_requests_message"></a> [http\_5xx\_requests\_message](#input\_http\_5xx\_requests\_message) | Custom message for App Services 5xx requests monitor | `string` | `""` | no |
| http\_5xx\_requests\_threshold\_critical | Maximum critical acceptable percent of 5xx errors | `number` | `90` | no | | <a name="input_http_5xx_requests_threshold_critical"></a> [http\_5xx\_requests\_threshold\_critical](#input\_http\_5xx\_requests\_threshold\_critical) | Maximum critical acceptable percent of 5xx errors | `number` | `90` | no |
| http\_5xx\_requests\_threshold\_warning | Warning regarding acceptable percent of 5xx errors | `number` | `50` | no | | <a name="input_http_5xx_requests_threshold_warning"></a> [http\_5xx\_requests\_threshold\_warning](#input\_http\_5xx\_requests\_threshold\_warning) | Warning regarding acceptable percent of 5xx errors | `number` | `50` | no |
| http\_5xx\_requests\_time\_aggregator | Monitor aggregator for App Services 5xx requests [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_http_5xx_requests_time_aggregator"></a> [http\_5xx\_requests\_time\_aggregator](#input\_http\_5xx\_requests\_time\_aggregator) | Monitor aggregator for App Services 5xx requests [available values: min, max or avg] | `string` | `"min"` | no |
| http\_5xx\_requests\_timeframe | Monitor timeframe for App Services 5xx requests [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_http_5xx_requests_timeframe"></a> [http\_5xx\_requests\_timeframe](#input\_http\_5xx\_requests\_timeframe) | Monitor timeframe for App Services 5xx requests [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| http\_successful\_requests\_enabled | Flag to enable App Services successful requests monitor | `string` | `"true"` | no | | <a name="input_http_successful_requests_enabled"></a> [http\_successful\_requests\_enabled](#input\_http\_successful\_requests\_enabled) | Flag to enable App Services successful requests monitor | `string` | `"true"` | no |
| http\_successful\_requests\_extra\_tags | Extra tags for App Services successful requests monitor | `list(string)` | `[]` | no | | <a name="input_http_successful_requests_extra_tags"></a> [http\_successful\_requests\_extra\_tags](#input\_http\_successful\_requests\_extra\_tags) | Extra tags for App Services successful requests monitor | `list(string)` | `[]` | no |
| http\_successful\_requests\_message | Custom message for App Services successful requests monitor | `string` | `""` | no | | <a name="input_http_successful_requests_message"></a> [http\_successful\_requests\_message](#input\_http\_successful\_requests\_message) | Custom message for App Services successful requests monitor | `string` | `""` | no |
| http\_successful\_requests\_threshold\_critical | Minimum critical acceptable percent of 2xx & 3xx requests | `number` | `10` | no | | <a name="input_http_successful_requests_threshold_critical"></a> [http\_successful\_requests\_threshold\_critical](#input\_http\_successful\_requests\_threshold\_critical) | Minimum critical acceptable percent of 2xx & 3xx requests | `number` | `10` | no |
| http\_successful\_requests\_threshold\_warning | Warning regarding acceptable percent of 2xx & 3xx requests | `number` | `30` | no | | <a name="input_http_successful_requests_threshold_warning"></a> [http\_successful\_requests\_threshold\_warning](#input\_http\_successful\_requests\_threshold\_warning) | Warning regarding acceptable percent of 2xx & 3xx requests | `number` | `30` | no |
| http\_successful\_requests\_time\_aggregator | Monitor aggregator for App Services successful requests [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_http_successful_requests_time_aggregator"></a> [http\_successful\_requests\_time\_aggregator](#input\_http\_successful\_requests\_time\_aggregator) | Monitor aggregator for App Services successful requests [available values: min, max or avg] | `string` | `"max"` | no |
| http\_successful\_requests\_timeframe | Monitor timeframe for App Services successful requests [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_http_successful_requests_timeframe"></a> [http\_successful\_requests\_timeframe](#input\_http\_successful\_requests\_timeframe) | Monitor timeframe for App Services successful requests [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| memory\_usage\_enabled | Flag to enable App Services memory usage monitor | `string` | `"true"` | no | | <a name="input_memory_usage_enabled"></a> [memory\_usage\_enabled](#input\_memory\_usage\_enabled) | Flag to enable App Services memory usage monitor | `string` | `"true"` | no |
| memory\_usage\_extra\_tags | Extra tags for App Services memory usage monitor | `list(string)` | `[]` | no | | <a name="input_memory_usage_extra_tags"></a> [memory\_usage\_extra\_tags](#input\_memory\_usage\_extra\_tags) | Extra tags for App Services memory usage monitor | `list(string)` | `[]` | no |
| memory\_usage\_message | Custom message for App Services memory usage monitor | `string` | `""` | no | | <a name="input_memory_usage_message"></a> [memory\_usage\_message](#input\_memory\_usage\_message) | Custom message for App Services memory usage monitor | `string` | `""` | no |
| memory\_usage\_threshold\_critical | Alerting threshold in Mib | `number` | `1073741824` | no | | <a name="input_memory_usage_threshold_critical"></a> [memory\_usage\_threshold\_critical](#input\_memory\_usage\_threshold\_critical) | Alerting threshold in Mib | `number` | `1073741824` | no |
| memory\_usage\_threshold\_warning | Warning threshold in MiB | `number` | `536870912` | no | | <a name="input_memory_usage_threshold_warning"></a> [memory\_usage\_threshold\_warning](#input\_memory\_usage\_threshold\_warning) | Warning threshold in MiB | `number` | `536870912` | no |
| memory\_usage\_time\_aggregator | Monitor aggregator for App Services memory usage [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_memory_usage_time_aggregator"></a> [memory\_usage\_time\_aggregator](#input\_memory\_usage\_time\_aggregator) | Monitor aggregator for App Services memory usage [available values: min, max or avg] | `string` | `"min"` | no |
| memory\_usage\_timeframe | Monitor timeframe for App Services memory usage [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_memory_usage_timeframe"></a> [memory\_usage\_timeframe](#input\_memory\_usage\_timeframe) | Monitor timeframe for App Services memory usage [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| message | Message sent when a monitor is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
| response\_time\_enabled | Flag to enable App Services response time monitor | `string` | `"true"` | no | | <a name="input_response_time_enabled"></a> [response\_time\_enabled](#input\_response\_time\_enabled) | Flag to enable App Services response time monitor | `string` | `"true"` | no |
| response\_time\_extra\_tags | Extra tags for App Services response time monitor | `list(string)` | `[]` | no | | <a name="input_response_time_extra_tags"></a> [response\_time\_extra\_tags](#input\_response\_time\_extra\_tags) | Extra tags for App Services response time monitor | `list(string)` | `[]` | no |
| response\_time\_message | Custom message for App Services response time monitor | `string` | `""` | no | | <a name="input_response_time_message"></a> [response\_time\_message](#input\_response\_time\_message) | Custom message for App Services response time monitor | `string` | `""` | no |
| response\_time\_threshold\_critical | Alerting threshold for response time in seconds | `number` | `10` | no | | <a name="input_response_time_threshold_critical"></a> [response\_time\_threshold\_critical](#input\_response\_time\_threshold\_critical) | Alerting threshold for response time in seconds | `number` | `10` | no |
| response\_time\_threshold\_warning | Warning threshold for response time in seconds | `number` | `5` | no | | <a name="input_response_time_threshold_warning"></a> [response\_time\_threshold\_warning](#input\_response\_time\_threshold\_warning) | Warning threshold for response time in seconds | `number` | `5` | no |
| response\_time\_time\_aggregator | Monitor aggregator for App Services response time [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_response_time_time_aggregator"></a> [response\_time\_time\_aggregator](#input\_response\_time\_time\_aggregator) | Monitor aggregator for App Services response time [available values: min, max or avg] | `string` | `"min"` | no |
| response\_time\_timeframe | Monitor timeframe for App Services response time [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_response_time_timeframe"></a> [response\_time\_timeframe](#input\_response\_time\_timeframe) | Monitor timeframe for App Services response time [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| status\_enabled | Flag to enable App Services status monitor | `string` | `"true"` | no | | <a name="input_status_enabled"></a> [status\_enabled](#input\_status\_enabled) | Flag to enable App Services status monitor | `string` | `"true"` | no |
| status\_extra\_tags | Extra tags for App Services status monitor | `list(string)` | `[]` | no | | <a name="input_status_extra_tags"></a> [status\_extra\_tags](#input\_status\_extra\_tags) | Extra tags for App Services status monitor | `list(string)` | `[]` | no |
| status\_message | Custom message for App Services status monitor | `string` | `""` | no | | <a name="input_status_message"></a> [status\_message](#input\_status\_message) | Custom message for App Services status monitor | `string` | `""` | no |
| status\_time\_aggregator | Monitor aggregator for App Services status [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_status_time_aggregator"></a> [status\_time\_aggregator](#input\_status\_time\_aggregator) | Monitor aggregator for App Services status [available values: min, max or avg] | `string` | `"max"` | no |
| status\_timeframe | Monitor timeframe for App Services status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_status_timeframe"></a> [status\_timeframe](#input\_status\_timeframe) | Monitor timeframe for App Services status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| appservices\_http\_4xx\_errors\_count\_id | id for monitor appservices\_http\_4xx\_errors\_count | | <a name="output_appservices_http_4xx_errors_count_id"></a> [appservices\_http\_4xx\_errors\_count\_id](#output\_appservices\_http\_4xx\_errors\_count\_id) | id for monitor appservices\_http\_4xx\_errors\_count |
| appservices\_http\_5xx\_errors\_count\_id | id for monitor appservices\_http\_5xx\_errors\_count | | <a name="output_appservices_http_5xx_errors_count_id"></a> [appservices\_http\_5xx\_errors\_count\_id](#output\_appservices\_http\_5xx\_errors\_count\_id) | id for monitor appservices\_http\_5xx\_errors\_count |
| appservices\_http\_success\_status\_rate\_id | id for monitor appservices\_http\_success\_status\_rate | | <a name="output_appservices_http_success_status_rate_id"></a> [appservices\_http\_success\_status\_rate\_id](#output\_appservices\_http\_success\_status\_rate\_id) | id for monitor appservices\_http\_success\_status\_rate |
| appservices\_memory\_usage\_count\_id | id for monitor appservices\_memory\_usage\_count | | <a name="output_appservices_memory_usage_count_id"></a> [appservices\_memory\_usage\_count\_id](#output\_appservices\_memory\_usage\_count\_id) | id for monitor appservices\_memory\_usage\_count |
| appservices\_response\_time\_id | id for monitor appservices\_response\_time | | <a name="output_appservices_response_time_id"></a> [appservices\_response\_time\_id](#output\_appservices\_response\_time\_id) | id for monitor appservices\_response\_time |
| appservices\_status\_id | id for monitor appservices\_status | | <a name="output_appservices_status_id"></a> [appservices\_status\_id](#output\_appservices\_status\_id) | id for monitor appservices\_status |
## Related documentation ## Related documentation
DataDog documentation: [https://docs.datadoghq.com/integrations/azure_app_services](https://docs.datadoghq.com/integrations/azure_app_services) DataDog documentation: [https://docs.datadoghq.com/integrations/azure_app_services](https://docs.datadoghq.com/integrations/azure_app_services)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -24,44 +24,63 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.azure_search_latency](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.azure_search_throttled_queries_rate](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| azure\_search\_latency\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | | <a name="input_azure_search_latency_no_data_timeframe"></a> [azure\_search\_latency\_no\_data\_timeframe](#input\_azure\_search\_latency\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no |
| environment | Architecture environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| latency\_enabled | Flag to enable Azure Search latency monitor | `string` | `"true"` | no | | <a name="input_latency_enabled"></a> [latency\_enabled](#input\_latency\_enabled) | Flag to enable Azure Search latency monitor | `string` | `"true"` | no |
| latency\_extra\_tags | Extra tags for Azure Search latency monitor | `list(string)` | `[]` | no | | <a name="input_latency_extra_tags"></a> [latency\_extra\_tags](#input\_latency\_extra\_tags) | Extra tags for Azure Search latency monitor | `list(string)` | `[]` | no |
| latency\_message | Custom message for Azure Search latency monitor | `string` | `""` | no | | <a name="input_latency_message"></a> [latency\_message](#input\_latency\_message) | Custom message for Azure Search latency monitor | `string` | `""` | no |
| latency\_threshold\_critical | Alerting threshold for Azure Search latency in seconds | `number` | `4` | no | | <a name="input_latency_threshold_critical"></a> [latency\_threshold\_critical](#input\_latency\_threshold\_critical) | Alerting threshold for Azure Search latency in seconds | `number` | `4` | no |
| latency\_threshold\_warning | Warning threshold for Azure Search latency in seconds | `number` | `2` | no | | <a name="input_latency_threshold_warning"></a> [latency\_threshold\_warning](#input\_latency\_threshold\_warning) | Warning threshold for Azure Search latency in seconds | `number` | `2` | no |
| latency\_time\_aggregator | Monitor aggregator for Azure Search latency [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_latency_time_aggregator"></a> [latency\_time\_aggregator](#input\_latency\_time\_aggregator) | Monitor aggregator for Azure Search latency [available values: min, max or avg] | `string` | `"min"` | no |
| latency\_timeframe | Monitor timeframe for Azure Search latency [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_latency_timeframe"></a> [latency\_timeframe](#input\_latency\_timeframe) | Monitor timeframe for Azure Search latency [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| message | Message sent when a monitor is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
| throttled\_queries\_rate\_enabled | Flag to enable Azure Search throttled queries rate monitor | `string` | `"true"` | no | | <a name="input_throttled_queries_rate_enabled"></a> [throttled\_queries\_rate\_enabled](#input\_throttled\_queries\_rate\_enabled) | Flag to enable Azure Search throttled queries rate monitor | `string` | `"true"` | no |
| throttled\_queries\_rate\_extra\_tags | Extra tags for Azure Search throttled queries rate monitor | `list(string)` | `[]` | no | | <a name="input_throttled_queries_rate_extra_tags"></a> [throttled\_queries\_rate\_extra\_tags](#input\_throttled\_queries\_rate\_extra\_tags) | Extra tags for Azure Search throttled queries rate monitor | `list(string)` | `[]` | no |
| throttled\_queries\_rate\_message | Custom message for Azure Search throttled queries rate monitor | `string` | `""` | no | | <a name="input_throttled_queries_rate_message"></a> [throttled\_queries\_rate\_message](#input\_throttled\_queries\_rate\_message) | Custom message for Azure Search throttled queries rate monitor | `string` | `""` | no |
| throttled\_queries\_rate\_threshold\_critical | Alerting threshold for Azure Search throttled queries rate | `number` | `50` | no | | <a name="input_throttled_queries_rate_threshold_critical"></a> [throttled\_queries\_rate\_threshold\_critical](#input\_throttled\_queries\_rate\_threshold\_critical) | Alerting threshold for Azure Search throttled queries rate | `number` | `50` | no |
| throttled\_queries\_rate\_threshold\_warning | Warning threshold for Azure Search throttled queries rate | `number` | `25` | no | | <a name="input_throttled_queries_rate_threshold_warning"></a> [throttled\_queries\_rate\_threshold\_warning](#input\_throttled\_queries\_rate\_threshold\_warning) | Warning threshold for Azure Search throttled queries rate | `number` | `25` | no |
| throttled\_queries\_rate\_time\_aggregator | Monitor aggregator for Azure Search throttled queries rate [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_throttled_queries_rate_time_aggregator"></a> [throttled\_queries\_rate\_time\_aggregator](#input\_throttled\_queries\_rate\_time\_aggregator) | Monitor aggregator for Azure Search throttled queries rate [available values: min, max or avg] | `string` | `"min"` | no |
| throttled\_queries\_rate\_timeframe | Monitor timeframe for Azure Search throttled queries rate [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_throttled_queries_rate_timeframe"></a> [throttled\_queries\_rate\_timeframe](#input\_throttled\_queries\_rate\_timeframe) | Monitor timeframe for Azure Search throttled queries rate [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| azure\_search\_latency\_id | id for monitor azure\_search\_latency | | <a name="output_azure_search_latency_id"></a> [azure\_search\_latency\_id](#output\_azure\_search\_latency\_id) | id for monitor azure\_search\_latency |
| azure\_search\_throttled\_queries\_rate\_id | id for monitor azure\_search\_throttled\_queries\_rate | | <a name="output_azure_search_throttled_queries_rate_id"></a> [azure\_search\_throttled\_queries\_rate\_id](#output\_azure\_search\_throttled\_queries\_rate\_id) | id for monitor azure\_search\_throttled\_queries\_rate |
## Related documentation ## Related documentation
DataDog documentation: [https://docs.datadoghq.com/integrations/azure_app_services](https://docs.datadoghq.com/integrations/azure_app_services) DataDog documentation: [https://docs.datadoghq.com/integrations/azure_app_services](https://docs.datadoghq.com/integrations/azure_app_services)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -26,58 +26,80 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a |
| <a name="module_filter-tags-statuscode"></a> [filter-tags-statuscode](#module\_filter-tags-statuscode) | ../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.cosmos_db_4xx_requests](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.cosmos_db_5xx_requests](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.cosmos_db_scaling](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.cosmos_db_status](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| cosmos\_db\_4xx\_request\_extra\_tags | Extra tags for Cosmos DB 4xx requests monitor | `list(string)` | `[]` | no | | <a name="input_cosmos_db_4xx_request_extra_tags"></a> [cosmos\_db\_4xx\_request\_extra\_tags](#input\_cosmos\_db\_4xx\_request\_extra\_tags) | Extra tags for Cosmos DB 4xx requests monitor | `list(string)` | `[]` | no |
| cosmos\_db\_4xx\_request\_rate\_threshold\_critical | Critical threshold for Cosmos DB 4xx requests monitor | `number` | `80` | no | | <a name="input_cosmos_db_4xx_request_rate_threshold_critical"></a> [cosmos\_db\_4xx\_request\_rate\_threshold\_critical](#input\_cosmos\_db\_4xx\_request\_rate\_threshold\_critical) | Critical threshold for Cosmos DB 4xx requests monitor | `number` | `80` | no |
| cosmos\_db\_4xx\_request\_rate\_threshold\_warning | Warning threshold for Cosmos DB 4xx requests monitor | `number` | `50` | no | | <a name="input_cosmos_db_4xx_request_rate_threshold_warning"></a> [cosmos\_db\_4xx\_request\_rate\_threshold\_warning](#input\_cosmos\_db\_4xx\_request\_rate\_threshold\_warning) | Warning threshold for Cosmos DB 4xx requests monitor | `number` | `50` | no |
| cosmos\_db\_4xx\_request\_time\_aggregator | Monitor aggregator for Cosmos DB 4xx requests [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_cosmos_db_4xx_request_time_aggregator"></a> [cosmos\_db\_4xx\_request\_time\_aggregator](#input\_cosmos\_db\_4xx\_request\_time\_aggregator) | Monitor aggregator for Cosmos DB 4xx requests [available values: min, max or avg] | `string` | `"min"` | no |
| cosmos\_db\_4xx\_request\_timeframe | Monitor timeframe for Cosmos DB 4xx requests [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_cosmos_db_4xx_request_timeframe"></a> [cosmos\_db\_4xx\_request\_timeframe](#input\_cosmos\_db\_4xx\_request\_timeframe) | Monitor timeframe for Cosmos DB 4xx requests [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| cosmos\_db\_4xx\_requests\_enabled | Flag to enable Cosmos DB 4xx requests monitor | `string` | `"true"` | no | | <a name="input_cosmos_db_4xx_requests_enabled"></a> [cosmos\_db\_4xx\_requests\_enabled](#input\_cosmos\_db\_4xx\_requests\_enabled) | Flag to enable Cosmos DB 4xx requests monitor | `string` | `"true"` | no |
| cosmos\_db\_4xx\_requests\_message | Custom message for Cosmos DB 4xx requests monitor | `string` | `""` | no | | <a name="input_cosmos_db_4xx_requests_message"></a> [cosmos\_db\_4xx\_requests\_message](#input\_cosmos\_db\_4xx\_requests\_message) | Custom message for Cosmos DB 4xx requests monitor | `string` | `""` | no |
| cosmos\_db\_5xx\_request\_rate\_extra\_tags | Extra tags for Cosmos DB 5xx requests monitor | `list(string)` | `[]` | no | | <a name="input_cosmos_db_5xx_request_rate_extra_tags"></a> [cosmos\_db\_5xx\_request\_rate\_extra\_tags](#input\_cosmos\_db\_5xx\_request\_rate\_extra\_tags) | Extra tags for Cosmos DB 5xx requests monitor | `list(string)` | `[]` | no |
| cosmos\_db\_5xx\_request\_rate\_threshold\_critical | Critical threshold for Cosmos DB 5xx requests monitor | `number` | `80` | no | | <a name="input_cosmos_db_5xx_request_rate_threshold_critical"></a> [cosmos\_db\_5xx\_request\_rate\_threshold\_critical](#input\_cosmos\_db\_5xx\_request\_rate\_threshold\_critical) | Critical threshold for Cosmos DB 5xx requests monitor | `number` | `80` | no |
| cosmos\_db\_5xx\_request\_rate\_threshold\_warning | Warning threshold for Cosmos DB 5xx requests monitor | `number` | `50` | no | | <a name="input_cosmos_db_5xx_request_rate_threshold_warning"></a> [cosmos\_db\_5xx\_request\_rate\_threshold\_warning](#input\_cosmos\_db\_5xx\_request\_rate\_threshold\_warning) | Warning threshold for Cosmos DB 5xx requests monitor | `number` | `50` | no |
| cosmos\_db\_5xx\_request\_time\_aggregator | Monitor aggregator for Cosmos DB 5xx requests [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_cosmos_db_5xx_request_time_aggregator"></a> [cosmos\_db\_5xx\_request\_time\_aggregator](#input\_cosmos\_db\_5xx\_request\_time\_aggregator) | Monitor aggregator for Cosmos DB 5xx requests [available values: min, max or avg] | `string` | `"min"` | no |
| cosmos\_db\_5xx\_request\_timeframe | Monitor timeframe for Cosmos DB 5xx requests [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_cosmos_db_5xx_request_timeframe"></a> [cosmos\_db\_5xx\_request\_timeframe](#input\_cosmos\_db\_5xx\_request\_timeframe) | Monitor timeframe for Cosmos DB 5xx requests [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| cosmos\_db\_5xx\_requests\_enabled | Flag to enable Cosmos DB 5xx requests monitor | `string` | `"true"` | no | | <a name="input_cosmos_db_5xx_requests_enabled"></a> [cosmos\_db\_5xx\_requests\_enabled](#input\_cosmos\_db\_5xx\_requests\_enabled) | Flag to enable Cosmos DB 5xx requests monitor | `string` | `"true"` | no |
| cosmos\_db\_5xx\_requests\_message | Custom message for Cosmos DB 5xx requests monitor | `string` | `""` | no | | <a name="input_cosmos_db_5xx_requests_message"></a> [cosmos\_db\_5xx\_requests\_message](#input\_cosmos\_db\_5xx\_requests\_message) | Custom message for Cosmos DB 5xx requests monitor | `string` | `""` | no |
| cosmos\_db\_scaling\_enabled | Flag to enable Cosmos DB scaling monitor | `string` | `"true"` | no | | <a name="input_cosmos_db_scaling_enabled"></a> [cosmos\_db\_scaling\_enabled](#input\_cosmos\_db\_scaling\_enabled) | Flag to enable Cosmos DB scaling monitor | `string` | `"true"` | no |
| cosmos\_db\_scaling\_error\_rate\_threshold\_critical | Critical threshold for Cosmos DB scaling monitor | `number` | `10` | no | | <a name="input_cosmos_db_scaling_error_rate_threshold_critical"></a> [cosmos\_db\_scaling\_error\_rate\_threshold\_critical](#input\_cosmos\_db\_scaling\_error\_rate\_threshold\_critical) | Critical threshold for Cosmos DB scaling monitor | `number` | `10` | no |
| cosmos\_db\_scaling\_error\_rate\_threshold\_warning | Warning threshold for Cosmos DB scaling monitor | `number` | `5` | no | | <a name="input_cosmos_db_scaling_error_rate_threshold_warning"></a> [cosmos\_db\_scaling\_error\_rate\_threshold\_warning](#input\_cosmos\_db\_scaling\_error\_rate\_threshold\_warning) | Warning threshold for Cosmos DB scaling monitor | `number` | `5` | no |
| cosmos\_db\_scaling\_extra\_tags | Extra tags for Cosmos DB scaling monitor | `list(string)` | `[]` | no | | <a name="input_cosmos_db_scaling_extra_tags"></a> [cosmos\_db\_scaling\_extra\_tags](#input\_cosmos\_db\_scaling\_extra\_tags) | Extra tags for Cosmos DB scaling monitor | `list(string)` | `[]` | no |
| cosmos\_db\_scaling\_message | Custom message for Cosmos DB scaling monitor | `string` | `""` | no | | <a name="input_cosmos_db_scaling_message"></a> [cosmos\_db\_scaling\_message](#input\_cosmos\_db\_scaling\_message) | Custom message for Cosmos DB scaling monitor | `string` | `""` | no |
| cosmos\_db\_scaling\_time\_aggregator | Monitor aggregator for Cosmos DB scaling [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_cosmos_db_scaling_time_aggregator"></a> [cosmos\_db\_scaling\_time\_aggregator](#input\_cosmos\_db\_scaling\_time\_aggregator) | Monitor aggregator for Cosmos DB scaling [available values: min, max or avg] | `string` | `"min"` | no |
| cosmos\_db\_scaling\_timeframe | Monitor timeframe for Cosmos DB scaling [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_cosmos_db_scaling_timeframe"></a> [cosmos\_db\_scaling\_timeframe](#input\_cosmos\_db\_scaling\_timeframe) | Monitor timeframe for Cosmos DB scaling [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| cosmos\_db\_status\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | | <a name="input_cosmos_db_status_no_data_timeframe"></a> [cosmos\_db\_status\_no\_data\_timeframe](#input\_cosmos\_db\_status\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no |
| environment | Architecture environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| message | Message sent when a monitor is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
| status\_enabled | Flag to enable Cosmos DB status monitor | `string` | `"true"` | no | | <a name="input_status_enabled"></a> [status\_enabled](#input\_status\_enabled) | Flag to enable Cosmos DB status monitor | `string` | `"true"` | no |
| status\_extra\_tags | Extra tags for Cosmos DB status monitor | `list(string)` | `[]` | no | | <a name="input_status_extra_tags"></a> [status\_extra\_tags](#input\_status\_extra\_tags) | Extra tags for Cosmos DB status monitor | `list(string)` | `[]` | no |
| status\_message | Custom message for Cosmos DB status monitor | `string` | `""` | no | | <a name="input_status_message"></a> [status\_message](#input\_status\_message) | Custom message for Cosmos DB status monitor | `string` | `""` | no |
| status\_time\_aggregator | Monitor aggregator for Cosmos DB status [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_status_time_aggregator"></a> [status\_time\_aggregator](#input\_status\_time\_aggregator) | Monitor aggregator for Cosmos DB status [available values: min, max or avg] | `string` | `"max"` | no |
| status\_timeframe | Monitor timeframe for Cosmos DB status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_status_timeframe"></a> [status\_timeframe](#input\_status\_timeframe) | Monitor timeframe for Cosmos DB status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| cosmos\_db\_4xx\_requests\_id | id for monitor cosmos\_db\_4xx\_requests | | <a name="output_cosmos_db_4xx_requests_id"></a> [cosmos\_db\_4xx\_requests\_id](#output\_cosmos\_db\_4xx\_requests\_id) | id for monitor cosmos\_db\_4xx\_requests |
| cosmos\_db\_5xx\_requests\_id | id for monitor cosmos\_db\_5xx\_requests | | <a name="output_cosmos_db_5xx_requests_id"></a> [cosmos\_db\_5xx\_requests\_id](#output\_cosmos\_db\_5xx\_requests\_id) | id for monitor cosmos\_db\_5xx\_requests |
| cosmos\_db\_scaling\_id | id for monitor cosmos\_db\_scaling | | <a name="output_cosmos_db_scaling_id"></a> [cosmos\_db\_scaling\_id](#output\_cosmos\_db\_scaling\_id) | id for monitor cosmos\_db\_scaling |
| cosmos\_db\_status\_id | id for monitor cosmos\_db\_status | | <a name="output_cosmos_db_status_id"></a> [cosmos\_db\_status\_id](#output\_cosmos\_db\_status\_id) | id for monitor cosmos\_db\_status |
## Related documentation ## Related documentation
DataDog documentation : [https://docs.datadoghq.com/integrations/azure/](https://docs.datadoghq.com/integrations/azure/) DataDog documentation : [https://docs.datadoghq.com/integrations/azure/](https://docs.datadoghq.com/integrations/azure/)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -23,34 +23,52 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.datalakestore_status](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| datalakestore\_status\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | | <a name="input_datalakestore_status_no_data_timeframe"></a> [datalakestore\_status\_no\_data\_timeframe](#input\_datalakestore\_status\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no |
| environment | Architecture environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| message | Message sent when a monitor is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
| status\_enabled | Flag to enable Datalake Store status monitor | `string` | `"true"` | no | | <a name="input_status_enabled"></a> [status\_enabled](#input\_status\_enabled) | Flag to enable Datalake Store status monitor | `string` | `"true"` | no |
| status\_extra\_tags | Extra tags for Datalake Store status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `list(string)` | `[]` | no | | <a name="input_status_extra_tags"></a> [status\_extra\_tags](#input\_status\_extra\_tags) | Extra tags for Datalake Store status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `list(string)` | `[]` | no |
| status\_message | Custom message for Datalake Store status monitor | `string` | `""` | no | | <a name="input_status_message"></a> [status\_message](#input\_status\_message) | Custom message for Datalake Store status monitor | `string` | `""` | no |
| status\_time\_aggregator | Monitor aggregator for Datalake Store status [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_status_time_aggregator"></a> [status\_time\_aggregator](#input\_status\_time\_aggregator) | Monitor aggregator for Datalake Store status [available values: min, max or avg] | `string` | `"max"` | no |
| status\_timeframe | Monitor timeframe for Datalake Store status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_status_timeframe"></a> [status\_timeframe](#input\_status\_timeframe) | Monitor timeframe for Datalake Store status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| datalakestore\_status\_id | id for monitor datalakestore\_status | | <a name="output_datalakestore_status_id"></a> [datalakestore\_status\_id](#output\_datalakestore\_status\_id) | id for monitor datalakestore\_status |
## Related documentation ## Related documentation
DataDog documentation : [https://docs.datadoghq.com/integrations/azure/](https://docs.datadoghq.com/integrations/azure/) DataDog documentation : [https://docs.datadoghq.com/integrations/azure/](https://docs.datadoghq.com/integrations/azure/)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -25,50 +25,70 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.eventgrid_failed_messages](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.eventgrid_no_successful_message](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.eventgrid_unmatched_events](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| environment | Architecture environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| eventgrid\_no\_successful\_message\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | | <a name="input_eventgrid_no_successful_message_no_data_timeframe"></a> [eventgrid\_no\_successful\_message\_no\_data\_timeframe](#input\_eventgrid\_no\_successful\_message\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no |
| failed\_messages\_rate\_enabled | Flag to enable Event Grid failed messages monitor | `string` | `"true"` | no | | <a name="input_failed_messages_rate_enabled"></a> [failed\_messages\_rate\_enabled](#input\_failed\_messages\_rate\_enabled) | Flag to enable Event Grid failed messages monitor | `string` | `"true"` | no |
| failed\_messages\_rate\_extra\_tags | Extra tags for Event Grid failed messages monitor | `list(string)` | `[]` | no | | <a name="input_failed_messages_rate_extra_tags"></a> [failed\_messages\_rate\_extra\_tags](#input\_failed\_messages\_rate\_extra\_tags) | Extra tags for Event Grid failed messages monitor | `list(string)` | `[]` | no |
| failed\_messages\_rate\_message | Custom message for Event Grid failed messages monitor | `string` | `""` | no | | <a name="input_failed_messages_rate_message"></a> [failed\_messages\_rate\_message](#input\_failed\_messages\_rate\_message) | Custom message for Event Grid failed messages monitor | `string` | `""` | no |
| failed\_messages\_rate\_thresold\_critical | Failed messages ratio (percentage) to trigger the critical alert | `number` | `90` | no | | <a name="input_failed_messages_rate_thresold_critical"></a> [failed\_messages\_rate\_thresold\_critical](#input\_failed\_messages\_rate\_thresold\_critical) | Failed messages ratio (percentage) to trigger the critical alert | `number` | `90` | no |
| failed\_messages\_rate\_thresold\_warning | Failed messages ratio (percentage) to trigger a warning alert | `number` | `50` | no | | <a name="input_failed_messages_rate_thresold_warning"></a> [failed\_messages\_rate\_thresold\_warning](#input\_failed\_messages\_rate\_thresold\_warning) | Failed messages ratio (percentage) to trigger a warning alert | `number` | `50` | no |
| failed\_messages\_rate\_time\_aggregator | Monitor aggregator for Event Grid failed messages [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_failed_messages_rate_time_aggregator"></a> [failed\_messages\_rate\_time\_aggregator](#input\_failed\_messages\_rate\_time\_aggregator) | Monitor aggregator for Event Grid failed messages [available values: min, max or avg] | `string` | `"min"` | no |
| failed\_messages\_rate\_timeframe | Monitor timeframe for Event Grid failed messages [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_failed_messages_rate_timeframe"></a> [failed\_messages\_rate\_timeframe](#input\_failed\_messages\_rate\_timeframe) | Monitor timeframe for Event Grid failed messages [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| message | Message sent when an alert is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| no\_successful\_message\_rate\_enabled | Flag to enable Event Grid no successful message monitor | `string` | `"true"` | no | | <a name="input_no_successful_message_rate_enabled"></a> [no\_successful\_message\_rate\_enabled](#input\_no\_successful\_message\_rate\_enabled) | Flag to enable Event Grid no successful message monitor | `string` | `"true"` | no |
| no\_successful\_message\_rate\_extra\_tags | Extra tags for Event Grid no successful message monitor | `list(string)` | `[]` | no | | <a name="input_no_successful_message_rate_extra_tags"></a> [no\_successful\_message\_rate\_extra\_tags](#input\_no\_successful\_message\_rate\_extra\_tags) | Extra tags for Event Grid no successful message monitor | `list(string)` | `[]` | no |
| no\_successful\_message\_rate\_message | Custom message for Event Grid no successful message monitor | `string` | `""` | no | | <a name="input_no_successful_message_rate_message"></a> [no\_successful\_message\_rate\_message](#input\_no\_successful\_message\_rate\_message) | Custom message for Event Grid no successful message monitor | `string` | `""` | no |
| no\_successful\_message\_rate\_time\_aggregator | Monitor aggregator for Event Grid no successful message [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_no_successful_message_rate_time_aggregator"></a> [no\_successful\_message\_rate\_time\_aggregator](#input\_no\_successful\_message\_rate\_time\_aggregator) | Monitor aggregator for Event Grid no successful message [available values: min, max or avg] | `string` | `"min"` | no |
| no\_successful\_message\_rate\_timeframe | Monitor timeframe for Event Grid no successful message [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_no_successful_message_rate_timeframe"></a> [no\_successful\_message\_rate\_timeframe](#input\_no\_successful\_message\_rate\_timeframe) | Monitor timeframe for Event Grid no successful message [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
| unmatched\_events\_rate\_enabled | Flag to enable Event Grid unmatched events monitor | `string` | `"true"` | no | | <a name="input_unmatched_events_rate_enabled"></a> [unmatched\_events\_rate\_enabled](#input\_unmatched\_events\_rate\_enabled) | Flag to enable Event Grid unmatched events monitor | `string` | `"true"` | no |
| unmatched\_events\_rate\_extra\_tags | Extra tags for Event Grid unmatched events monitor | `list(string)` | `[]` | no | | <a name="input_unmatched_events_rate_extra_tags"></a> [unmatched\_events\_rate\_extra\_tags](#input\_unmatched\_events\_rate\_extra\_tags) | Extra tags for Event Grid unmatched events monitor | `list(string)` | `[]` | no |
| unmatched\_events\_rate\_message | Custom message for Event Grid unmatched events monitor | `string` | `""` | no | | <a name="input_unmatched_events_rate_message"></a> [unmatched\_events\_rate\_message](#input\_unmatched\_events\_rate\_message) | Custom message for Event Grid unmatched events monitor | `string` | `""` | no |
| unmatched\_events\_rate\_thresold\_critical | Unmatched events ratio (percentage) to trigger the critical alert | `number` | `90` | no | | <a name="input_unmatched_events_rate_thresold_critical"></a> [unmatched\_events\_rate\_thresold\_critical](#input\_unmatched\_events\_rate\_thresold\_critical) | Unmatched events ratio (percentage) to trigger the critical alert | `number` | `90` | no |
| unmatched\_events\_rate\_thresold\_warning | Unmatched events ratio (percentage) to trigger a warning alert | `number` | `50` | no | | <a name="input_unmatched_events_rate_thresold_warning"></a> [unmatched\_events\_rate\_thresold\_warning](#input\_unmatched\_events\_rate\_thresold\_warning) | Unmatched events ratio (percentage) to trigger a warning alert | `number` | `50` | no |
| unmatched\_events\_rate\_time\_aggregator | Monitor aggregator for Event Grid unmatched events [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_unmatched_events_rate_time_aggregator"></a> [unmatched\_events\_rate\_time\_aggregator](#input\_unmatched\_events\_rate\_time\_aggregator) | Monitor aggregator for Event Grid unmatched events [available values: min, max or avg] | `string` | `"min"` | no |
| unmatched\_events\_rate\_timeframe | Monitor timeframe for Event Grid unmatched events [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_unmatched_events_rate_timeframe"></a> [unmatched\_events\_rate\_timeframe](#input\_unmatched\_events\_rate\_timeframe) | Monitor timeframe for Event Grid unmatched events [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| eventgrid\_failed\_messages\_id | id for monitor eventgrid\_failed\_messages | | <a name="output_eventgrid_failed_messages_id"></a> [eventgrid\_failed\_messages\_id](#output\_eventgrid\_failed\_messages\_id) | id for monitor eventgrid\_failed\_messages |
| eventgrid\_no\_successful\_message\_id | id for monitor eventgrid\_no\_successful\_message | | <a name="output_eventgrid_no_successful_message_id"></a> [eventgrid\_no\_successful\_message\_id](#output\_eventgrid\_no\_successful\_message\_id) | id for monitor eventgrid\_no\_successful\_message |
| eventgrid\_unmatched\_events\_id | id for monitor eventgrid\_unmatched\_events | | <a name="output_eventgrid_unmatched_events_id"></a> [eventgrid\_unmatched\_events\_id](#output\_eventgrid\_unmatched\_events\_id) | id for monitor eventgrid\_unmatched\_events |
## Related documentation ## Related documentation
Datadog Azure documentation: [https://docs.datadoghq.com/integrations/azure/](https://docs.datadoghq.com/integrations/azure/) Datadog Azure documentation: [https://docs.datadoghq.com/integrations/azure/](https://docs.datadoghq.com/integrations/azure/)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -25,50 +25,70 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.eventhub_errors](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.eventhub_failed_requests](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.eventhub_status](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| environment | Architecture environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture environment | `string` | n/a | yes |
| errors\_rate\_enabled | Flag to enable Event Hub errors monitor | `string` | `"true"` | no | | <a name="input_errors_rate_enabled"></a> [errors\_rate\_enabled](#input\_errors\_rate\_enabled) | Flag to enable Event Hub errors monitor | `string` | `"true"` | no |
| errors\_rate\_extra\_tags | Extra tags for Event Hub errors monitor | `list(string)` | `[]` | no | | <a name="input_errors_rate_extra_tags"></a> [errors\_rate\_extra\_tags](#input\_errors\_rate\_extra\_tags) | Extra tags for Event Hub errors monitor | `list(string)` | `[]` | no |
| errors\_rate\_message | Custom message for Event Hub errors monitor | `string` | `""` | no | | <a name="input_errors_rate_message"></a> [errors\_rate\_message](#input\_errors\_rate\_message) | Custom message for Event Hub errors monitor | `string` | `""` | no |
| errors\_rate\_thresold\_critical | Errors ratio (percentage) to trigger the critical alert | `number` | `90` | no | | <a name="input_errors_rate_thresold_critical"></a> [errors\_rate\_thresold\_critical](#input\_errors\_rate\_thresold\_critical) | Errors ratio (percentage) to trigger the critical alert | `number` | `90` | no |
| errors\_rate\_thresold\_warning | Errors ratio (percentage) to trigger a warning alert | `number` | `50` | no | | <a name="input_errors_rate_thresold_warning"></a> [errors\_rate\_thresold\_warning](#input\_errors\_rate\_thresold\_warning) | Errors ratio (percentage) to trigger a warning alert | `number` | `50` | no |
| errors\_rate\_time\_aggregator | Monitor aggregator for Event Hub errors [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_errors_rate_time_aggregator"></a> [errors\_rate\_time\_aggregator](#input\_errors\_rate\_time\_aggregator) | Monitor aggregator for Event Hub errors [available values: min, max or avg] | `string` | `"min"` | no |
| errors\_rate\_timeframe | Monitor timeframe for Event Hub errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_errors_rate_timeframe"></a> [errors\_rate\_timeframe](#input\_errors\_rate\_timeframe) | Monitor timeframe for Event Hub errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| eventhub\_status\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | | <a name="input_eventhub_status_no_data_timeframe"></a> [eventhub\_status\_no\_data\_timeframe](#input\_eventhub\_status\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no |
| failed\_requests\_rate\_enabled | Flag to enable Event Hub failed requests monitor | `string` | `"true"` | no | | <a name="input_failed_requests_rate_enabled"></a> [failed\_requests\_rate\_enabled](#input\_failed\_requests\_rate\_enabled) | Flag to enable Event Hub failed requests monitor | `string` | `"true"` | no |
| failed\_requests\_rate\_extra\_tags | Extra tags for Event Hub failed requests monitor | `list(string)` | `[]` | no | | <a name="input_failed_requests_rate_extra_tags"></a> [failed\_requests\_rate\_extra\_tags](#input\_failed\_requests\_rate\_extra\_tags) | Extra tags for Event Hub failed requests monitor | `list(string)` | `[]` | no |
| failed\_requests\_rate\_message | Custom message for Event Hub failed requests monitor | `string` | `""` | no | | <a name="input_failed_requests_rate_message"></a> [failed\_requests\_rate\_message](#input\_failed\_requests\_rate\_message) | Custom message for Event Hub failed requests monitor | `string` | `""` | no |
| failed\_requests\_rate\_thresold\_critical | Failed requests ratio (percentage) to trigger the critical alert | `number` | `90` | no | | <a name="input_failed_requests_rate_thresold_critical"></a> [failed\_requests\_rate\_thresold\_critical](#input\_failed\_requests\_rate\_thresold\_critical) | Failed requests ratio (percentage) to trigger the critical alert | `number` | `90` | no |
| failed\_requests\_rate\_thresold\_warning | Failed requests ratio (percentage) to trigger a warning alert | `number` | `50` | no | | <a name="input_failed_requests_rate_thresold_warning"></a> [failed\_requests\_rate\_thresold\_warning](#input\_failed\_requests\_rate\_thresold\_warning) | Failed requests ratio (percentage) to trigger a warning alert | `number` | `50` | no |
| failed\_requests\_rate\_time\_aggregator | Monitor aggregator for Event Hub failed requests [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_failed_requests_rate_time_aggregator"></a> [failed\_requests\_rate\_time\_aggregator](#input\_failed\_requests\_rate\_time\_aggregator) | Monitor aggregator for Event Hub failed requests [available values: min, max or avg] | `string` | `"min"` | no |
| failed\_requests\_rate\_timeframe | Monitor timeframe for Event Hub failed requests [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_failed_requests_rate_timeframe"></a> [failed\_requests\_rate\_timeframe](#input\_failed\_requests\_rate\_timeframe) | Monitor timeframe for Event Hub failed requests [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| message | Message sent when an alert is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
| status\_enabled | Flag to enable Event Hub status monitor | `string` | `"true"` | no | | <a name="input_status_enabled"></a> [status\_enabled](#input\_status\_enabled) | Flag to enable Event Hub status monitor | `string` | `"true"` | no |
| status\_extra\_tags | Extra tags for Event Hub status monitor | `list(string)` | `[]` | no | | <a name="input_status_extra_tags"></a> [status\_extra\_tags](#input\_status\_extra\_tags) | Extra tags for Event Hub status monitor | `list(string)` | `[]` | no |
| status\_message | Custom message for Event Hub status monitor | `string` | `""` | no | | <a name="input_status_message"></a> [status\_message](#input\_status\_message) | Custom message for Event Hub status monitor | `string` | `""` | no |
| status\_time\_aggregator | Monitor aggregator for Event Hub status [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_status_time_aggregator"></a> [status\_time\_aggregator](#input\_status\_time\_aggregator) | Monitor aggregator for Event Hub status [available values: min, max or avg] | `string` | `"max"` | no |
| status\_timeframe | Monitor timeframe for Event Hub status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_status_timeframe"></a> [status\_timeframe](#input\_status\_timeframe) | Monitor timeframe for Event Hub status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| eventhub\_errors\_id | id for monitor eventhub\_errors | | <a name="output_eventhub_errors_id"></a> [eventhub\_errors\_id](#output\_eventhub\_errors\_id) | id for monitor eventhub\_errors |
| eventhub\_failed\_requests\_id | id for monitor eventhub\_failed\_requests | | <a name="output_eventhub_failed_requests_id"></a> [eventhub\_failed\_requests\_id](#output\_eventhub\_failed\_requests\_id) | id for monitor eventhub\_failed\_requests |
| eventhub\_status\_id | id for monitor eventhub\_status | | <a name="output_eventhub_status_id"></a> [eventhub\_status\_id](#output\_eventhub\_status\_id) | id for monitor eventhub\_status |
## Related documentation ## Related documentation
Datadog documentation : [https://docs.datadoghq.com/integrations/azure_event_hub/](https://docs.datadoghq.com/integrations/azure_event_hub/) Datadog documentation : [https://docs.datadoghq.com/integrations/azure_event_hub/](https://docs.datadoghq.com/integrations/azure_event_hub/)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -25,51 +25,71 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.function_high_connections_count](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.function_high_threads_count](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.function_http_5xx_errors_rate](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| environment | Architecture environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| high\_connections\_count\_enabled | Flag to enable Functions high connections count monitor | `string` | `"true"` | no | | <a name="input_high_connections_count_enabled"></a> [high\_connections\_count\_enabled](#input\_high\_connections\_count\_enabled) | Flag to enable Functions high connections count monitor | `string` | `"true"` | no |
| high\_connections\_count\_extra\_tags | Extra tags for Functions high connections count monitor | `list(string)` | `[]` | no | | <a name="input_high_connections_count_extra_tags"></a> [high\_connections\_count\_extra\_tags](#input\_high\_connections\_count\_extra\_tags) | Extra tags for Functions high connections count monitor | `list(string)` | `[]` | no |
| high\_connections\_count\_message | Custom message for Functions high connections count monitor | `string` | `""` | no | | <a name="input_high_connections_count_message"></a> [high\_connections\_count\_message](#input\_high\_connections\_count\_message) | Custom message for Functions high connections count monitor | `string` | `""` | no |
| high\_connections\_count\_threshold\_critical | Alerting threshold for Functions high connections count | `number` | `590` | no | | <a name="input_high_connections_count_threshold_critical"></a> [high\_connections\_count\_threshold\_critical](#input\_high\_connections\_count\_threshold\_critical) | Alerting threshold for Functions high connections count | `number` | `590` | no |
| high\_connections\_count\_threshold\_warning | Warning threshold for Functions high connections count | `number` | `550` | no | | <a name="input_high_connections_count_threshold_warning"></a> [high\_connections\_count\_threshold\_warning](#input\_high\_connections\_count\_threshold\_warning) | Warning threshold for Functions high connections count | `number` | `550` | no |
| high\_connections\_count\_time\_aggregator | Monitor aggregator for Functions high connections count [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_high_connections_count_time_aggregator"></a> [high\_connections\_count\_time\_aggregator](#input\_high\_connections\_count\_time\_aggregator) | Monitor aggregator for Functions high connections count [available values: min, max or avg] | `string` | `"min"` | no |
| high\_connections\_count\_timeframe | Monitor timeframe for Functions high connections count [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_high_connections_count_timeframe"></a> [high\_connections\_count\_timeframe](#input\_high\_connections\_count\_timeframe) | Monitor timeframe for Functions high connections count [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| high\_threads\_count\_enabled | Flag to enable Functions high threads count monitor | `string` | `"true"` | no | | <a name="input_high_threads_count_enabled"></a> [high\_threads\_count\_enabled](#input\_high\_threads\_count\_enabled) | Flag to enable Functions high threads count monitor | `string` | `"true"` | no |
| high\_threads\_count\_extra\_tags | Extra tags for Functions high threads count monitor | `list(string)` | `[]` | no | | <a name="input_high_threads_count_extra_tags"></a> [high\_threads\_count\_extra\_tags](#input\_high\_threads\_count\_extra\_tags) | Extra tags for Functions high threads count monitor | `list(string)` | `[]` | no |
| high\_threads\_count\_message | Custom message for Functions high threads count monitor | `string` | `""` | no | | <a name="input_high_threads_count_message"></a> [high\_threads\_count\_message](#input\_high\_threads\_count\_message) | Custom message for Functions high threads count monitor | `string` | `""` | no |
| high\_threads\_count\_threshold\_critical | Alerting threshold for Functions high threads count | `number` | `510` | no | | <a name="input_high_threads_count_threshold_critical"></a> [high\_threads\_count\_threshold\_critical](#input\_high\_threads\_count\_threshold\_critical) | Alerting threshold for Functions high threads count | `number` | `510` | no |
| high\_threads\_count\_threshold\_warning | Warning threshold for Functions high threads count | `number` | `490` | no | | <a name="input_high_threads_count_threshold_warning"></a> [high\_threads\_count\_threshold\_warning](#input\_high\_threads\_count\_threshold\_warning) | Warning threshold for Functions high threads count | `number` | `490` | no |
| high\_threads\_count\_time\_aggregator | Monitor aggregator for Functions high threads count [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_high_threads_count_time_aggregator"></a> [high\_threads\_count\_time\_aggregator](#input\_high\_threads\_count\_time\_aggregator) | Monitor aggregator for Functions high threads count [available values: min, max or avg] | `string` | `"min"` | no |
| high\_threads\_count\_timeframe | Monitor timeframe for Functions high threads count [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_high_threads_count_timeframe"></a> [high\_threads\_count\_timeframe](#input\_high\_threads\_count\_timeframe) | Monitor timeframe for Functions high threads count [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| http\_5xx\_errors\_rate\_enabled | Flag to enable Functions Http 5xx errors rate monitor | `string` | `"true"` | no | | <a name="input_http_5xx_errors_rate_enabled"></a> [http\_5xx\_errors\_rate\_enabled](#input\_http\_5xx\_errors\_rate\_enabled) | Flag to enable Functions Http 5xx errors rate monitor | `string` | `"true"` | no |
| http\_5xx\_errors\_rate\_extra\_tags | Extra tags for Functions Http 5xx errors rate monitor | `list(string)` | `[]` | no | | <a name="input_http_5xx_errors_rate_extra_tags"></a> [http\_5xx\_errors\_rate\_extra\_tags](#input\_http\_5xx\_errors\_rate\_extra\_tags) | Extra tags for Functions Http 5xx errors rate monitor | `list(string)` | `[]` | no |
| http\_5xx\_errors\_rate\_message | Custom message for Functions Http 5xx errors rate monitor | `string` | `""` | no | | <a name="input_http_5xx_errors_rate_message"></a> [http\_5xx\_errors\_rate\_message](#input\_http\_5xx\_errors\_rate\_message) | Custom message for Functions Http 5xx errors rate monitor | `string` | `""` | no |
| http\_5xx\_errors\_rate\_threshold\_critical | Alerting threshold for Functions Http 5xx errors rate | `number` | `20` | no | | <a name="input_http_5xx_errors_rate_threshold_critical"></a> [http\_5xx\_errors\_rate\_threshold\_critical](#input\_http\_5xx\_errors\_rate\_threshold\_critical) | Alerting threshold for Functions Http 5xx errors rate | `number` | `20` | no |
| http\_5xx\_errors\_rate\_threshold\_warning | Warning threshold for Functions Http 5xx errors rate | `number` | `10` | no | | <a name="input_http_5xx_errors_rate_threshold_warning"></a> [http\_5xx\_errors\_rate\_threshold\_warning](#input\_http\_5xx\_errors\_rate\_threshold\_warning) | Warning threshold for Functions Http 5xx errors rate | `number` | `10` | no |
| http\_5xx\_errors\_rate\_time\_aggregator | Monitor aggregator for Functions Http 5xx errors rate [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_http_5xx_errors_rate_time_aggregator"></a> [http\_5xx\_errors\_rate\_time\_aggregator](#input\_http\_5xx\_errors\_rate\_time\_aggregator) | Monitor aggregator for Functions Http 5xx errors rate [available values: min, max or avg] | `string` | `"min"` | no |
| http\_5xx\_errors\_rate\_timeframe | Monitor timeframe for Functions Http 5xx errors rate [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_http_5xx_errors_rate_timeframe"></a> [http\_5xx\_errors\_rate\_timeframe](#input\_http\_5xx\_errors\_rate\_timeframe) | Monitor timeframe for Functions Http 5xx errors rate [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| message | Message sent when a monitor is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| function\_high\_connections\_count\_id | id for monitor function\_high\_connections\_count | | <a name="output_function_high_connections_count_id"></a> [function\_high\_connections\_count\_id](#output\_function\_high\_connections\_count\_id) | id for monitor function\_high\_connections\_count |
| function\_high\_threads\_count\_id | id for monitor function\_high\_threads\_count | | <a name="output_function_high_threads_count_id"></a> [function\_high\_threads\_count\_id](#output\_function\_high\_threads\_count\_id) | id for monitor function\_high\_threads\_count |
| function\_http\_5xx\_errors\_rate\_id | id for monitor function\_http\_5xx\_errors\_rate | | <a name="output_function_http_5xx_errors_rate_id"></a> [function\_http\_5xx\_errors\_rate\_id](#output\_function\_http\_5xx\_errors\_rate\_id) | id for monitor function\_http\_5xx\_errors\_rate |
## Related documentation ## Related documentation
Datadog Azure documentation: [https://docs.datadoghq.com/integrations/azure/](https://docs.datadoghq.com/integrations/azure/) Datadog Azure documentation: [https://docs.datadoghq.com/integrations/azure/](https://docs.datadoghq.com/integrations/azure/)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -36,135 +36,166 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.status](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.too_many_c2d_methods_failed](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.too_many_c2d_twin_read_failed](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.too_many_c2d_twin_update_failed](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.too_many_d2c_telemetry_egress_dropped](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.too_many_d2c_telemetry_egress_invalid](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.too_many_d2c_telemetry_egress_orphaned](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.too_many_d2c_telemetry_ingress_nosent](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.too_many_d2c_twin_read_failed](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.too_many_d2c_twin_update_failed](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.too_many_jobs_failed](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.too_many_list_jobs_failed](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.too_many_query_jobs_failed](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.total_devices](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| dropped\_d2c\_telemetry\_egress\_enabled | Flag to enable IoT Hub dropped d2c telemetry monitor | `string` | `"true"` | no | | <a name="input_dropped_d2c_telemetry_egress_enabled"></a> [dropped\_d2c\_telemetry\_egress\_enabled](#input\_dropped\_d2c\_telemetry\_egress\_enabled) | Flag to enable IoT Hub dropped d2c telemetry monitor | `string` | `"true"` | no |
| dropped\_d2c\_telemetry\_egress\_extra\_tags | Extra tags for IoT Hub dropped d2c telemetry monitor | `list(string)` | `[]` | no | | <a name="input_dropped_d2c_telemetry_egress_extra_tags"></a> [dropped\_d2c\_telemetry\_egress\_extra\_tags](#input\_dropped\_d2c\_telemetry\_egress\_extra\_tags) | Extra tags for IoT Hub dropped d2c telemetry monitor | `list(string)` | `[]` | no |
| dropped\_d2c\_telemetry\_egress\_message | Custom message for IoT Hub dropped d2c telemetry monitor | `string` | `""` | no | | <a name="input_dropped_d2c_telemetry_egress_message"></a> [dropped\_d2c\_telemetry\_egress\_message](#input\_dropped\_d2c\_telemetry\_egress\_message) | Custom message for IoT Hub dropped d2c telemetry monitor | `string` | `""` | no |
| dropped\_d2c\_telemetry\_egress\_rate\_threshold\_critical | D2C Telemetry Dropped limit (critical threshold) | `number` | `90` | no | | <a name="input_dropped_d2c_telemetry_egress_rate_threshold_critical"></a> [dropped\_d2c\_telemetry\_egress\_rate\_threshold\_critical](#input\_dropped\_d2c\_telemetry\_egress\_rate\_threshold\_critical) | D2C Telemetry Dropped limit (critical threshold) | `number` | `90` | no |
| dropped\_d2c\_telemetry\_egress\_rate\_threshold\_warning | D2C Telemetry Dropped limit (warning threshold) | `number` | `50` | no | | <a name="input_dropped_d2c_telemetry_egress_rate_threshold_warning"></a> [dropped\_d2c\_telemetry\_egress\_rate\_threshold\_warning](#input\_dropped\_d2c\_telemetry\_egress\_rate\_threshold\_warning) | D2C Telemetry Dropped limit (warning threshold) | `number` | `50` | no |
| dropped\_d2c\_telemetry\_egress\_time\_aggregator | Monitor aggregator for IoT Hub dropped d2c telemetry [available values: min, max, sum or avg] | `string` | `"min"` | no | | <a name="input_dropped_d2c_telemetry_egress_time_aggregator"></a> [dropped\_d2c\_telemetry\_egress\_time\_aggregator](#input\_dropped\_d2c\_telemetry\_egress\_time\_aggregator) | Monitor aggregator for IoT Hub dropped d2c telemetry [available values: min, max, sum or avg] | `string` | `"min"` | no |
| dropped\_d2c\_telemetry\_egress\_timeframe | Monitor timeframe for IoT Hub dropped d2c telemetry [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_dropped_d2c_telemetry_egress_timeframe"></a> [dropped\_d2c\_telemetry\_egress\_timeframe](#input\_dropped\_d2c\_telemetry\_egress\_timeframe) | Monitor timeframe for IoT Hub dropped d2c telemetry [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| environment | Architecture Environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture Environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| failed\_c2d\_methods\_rate\_enabled | Flag to enable IoT Hub failed c2d methods monitor | `string` | `"true"` | no | | <a name="input_failed_c2d_methods_rate_enabled"></a> [failed\_c2d\_methods\_rate\_enabled](#input\_failed\_c2d\_methods\_rate\_enabled) | Flag to enable IoT Hub failed c2d methods monitor | `string` | `"true"` | no |
| failed\_c2d\_methods\_rate\_extra\_tags | Extra tags for IoT Hub failed c2d methods monitor | `list(string)` | `[]` | no | | <a name="input_failed_c2d_methods_rate_extra_tags"></a> [failed\_c2d\_methods\_rate\_extra\_tags](#input\_failed\_c2d\_methods\_rate\_extra\_tags) | Extra tags for IoT Hub failed c2d methods monitor | `list(string)` | `[]` | no |
| failed\_c2d\_methods\_rate\_message | Custom message for IoT Hub failed c2d method monitor | `string` | `""` | no | | <a name="input_failed_c2d_methods_rate_message"></a> [failed\_c2d\_methods\_rate\_message](#input\_failed\_c2d\_methods\_rate\_message) | Custom message for IoT Hub failed c2d method monitor | `string` | `""` | no |
| failed\_c2d\_methods\_rate\_threshold\_critical | C2D Methods Failed rate limit (critical threshold) | `number` | `90` | no | | <a name="input_failed_c2d_methods_rate_threshold_critical"></a> [failed\_c2d\_methods\_rate\_threshold\_critical](#input\_failed\_c2d\_methods\_rate\_threshold\_critical) | C2D Methods Failed rate limit (critical threshold) | `number` | `90` | no |
| failed\_c2d\_methods\_rate\_threshold\_warning | C2D Methods Failed rate limit (warning threshold) | `number` | `50` | no | | <a name="input_failed_c2d_methods_rate_threshold_warning"></a> [failed\_c2d\_methods\_rate\_threshold\_warning](#input\_failed\_c2d\_methods\_rate\_threshold\_warning) | C2D Methods Failed rate limit (warning threshold) | `number` | `50` | no |
| failed\_c2d\_methods\_rate\_time\_aggregator | Monitor aggregator for IoT Hub failed c2d method [available values: min, max, sum or avg] | `string` | `"min"` | no | | <a name="input_failed_c2d_methods_rate_time_aggregator"></a> [failed\_c2d\_methods\_rate\_time\_aggregator](#input\_failed\_c2d\_methods\_rate\_time\_aggregator) | Monitor aggregator for IoT Hub failed c2d method [available values: min, max, sum or avg] | `string` | `"min"` | no |
| failed\_c2d\_methods\_rate\_timeframe | Monitor timeframe for IoT Hub failed c2d method [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_failed_c2d_methods_rate_timeframe"></a> [failed\_c2d\_methods\_rate\_timeframe](#input\_failed\_c2d\_methods\_rate\_timeframe) | Monitor timeframe for IoT Hub failed c2d method [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| failed\_c2d\_twin\_read\_rate\_enabled | Flag to enable IoT Hub failed c2d twin read monitor | `string` | `"true"` | no | | <a name="input_failed_c2d_twin_read_rate_enabled"></a> [failed\_c2d\_twin\_read\_rate\_enabled](#input\_failed\_c2d\_twin\_read\_rate\_enabled) | Flag to enable IoT Hub failed c2d twin read monitor | `string` | `"true"` | no |
| failed\_c2d\_twin\_read\_rate\_extra\_tags | Extra tags for IoT Hub failed c2d twin read monitor | `list(string)` | `[]` | no | | <a name="input_failed_c2d_twin_read_rate_extra_tags"></a> [failed\_c2d\_twin\_read\_rate\_extra\_tags](#input\_failed\_c2d\_twin\_read\_rate\_extra\_tags) | Extra tags for IoT Hub failed c2d twin read monitor | `list(string)` | `[]` | no |
| failed\_c2d\_twin\_read\_rate\_message | Custom message for IoT Hub failed c2d twin read monitor | `string` | `""` | no | | <a name="input_failed_c2d_twin_read_rate_message"></a> [failed\_c2d\_twin\_read\_rate\_message](#input\_failed\_c2d\_twin\_read\_rate\_message) | Custom message for IoT Hub failed c2d twin read monitor | `string` | `""` | no |
| failed\_c2d\_twin\_read\_rate\_threshold\_critical | C2D Twin Read Failed rate limit (critical threshold) | `number` | `90` | no | | <a name="input_failed_c2d_twin_read_rate_threshold_critical"></a> [failed\_c2d\_twin\_read\_rate\_threshold\_critical](#input\_failed\_c2d\_twin\_read\_rate\_threshold\_critical) | C2D Twin Read Failed rate limit (critical threshold) | `number` | `90` | no |
| failed\_c2d\_twin\_read\_rate\_threshold\_warning | C2D Twin Read Failed rate limit (warning threshold) | `number` | `50` | no | | <a name="input_failed_c2d_twin_read_rate_threshold_warning"></a> [failed\_c2d\_twin\_read\_rate\_threshold\_warning](#input\_failed\_c2d\_twin\_read\_rate\_threshold\_warning) | C2D Twin Read Failed rate limit (warning threshold) | `number` | `50` | no |
| failed\_c2d\_twin\_read\_rate\_time\_aggregator | Monitor aggregator for IoT Hub failed c2d twin read [available values: min, max, sum or avg] | `string` | `"min"` | no | | <a name="input_failed_c2d_twin_read_rate_time_aggregator"></a> [failed\_c2d\_twin\_read\_rate\_time\_aggregator](#input\_failed\_c2d\_twin\_read\_rate\_time\_aggregator) | Monitor aggregator for IoT Hub failed c2d twin read [available values: min, max, sum or avg] | `string` | `"min"` | no |
| failed\_c2d\_twin\_read\_rate\_timeframe | Monitor timeframe for IoT Hub failed c2d twin read [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_failed_c2d_twin_read_rate_timeframe"></a> [failed\_c2d\_twin\_read\_rate\_timeframe](#input\_failed\_c2d\_twin\_read\_rate\_timeframe) | Monitor timeframe for IoT Hub failed c2d twin read [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| failed\_c2d\_twin\_update\_rate\_enabled | Flag to enable IoT Hub failed c2d twin update monitor | `string` | `"true"` | no | | <a name="input_failed_c2d_twin_update_rate_enabled"></a> [failed\_c2d\_twin\_update\_rate\_enabled](#input\_failed\_c2d\_twin\_update\_rate\_enabled) | Flag to enable IoT Hub failed c2d twin update monitor | `string` | `"true"` | no |
| failed\_c2d\_twin\_update\_rate\_extra\_tags | Extra tags for IoT Hub failed c2d twin update monitor | `list(string)` | `[]` | no | | <a name="input_failed_c2d_twin_update_rate_extra_tags"></a> [failed\_c2d\_twin\_update\_rate\_extra\_tags](#input\_failed\_c2d\_twin\_update\_rate\_extra\_tags) | Extra tags for IoT Hub failed c2d twin update monitor | `list(string)` | `[]` | no |
| failed\_c2d\_twin\_update\_rate\_message | Custom message for IoT Hub failed c2d twin update monitor | `string` | `""` | no | | <a name="input_failed_c2d_twin_update_rate_message"></a> [failed\_c2d\_twin\_update\_rate\_message](#input\_failed\_c2d\_twin\_update\_rate\_message) | Custom message for IoT Hub failed c2d twin update monitor | `string` | `""` | no |
| failed\_c2d\_twin\_update\_rate\_threshold\_critical | C2D Twin Update Failed rate limit (critical threshold) | `number` | `90` | no | | <a name="input_failed_c2d_twin_update_rate_threshold_critical"></a> [failed\_c2d\_twin\_update\_rate\_threshold\_critical](#input\_failed\_c2d\_twin\_update\_rate\_threshold\_critical) | C2D Twin Update Failed rate limit (critical threshold) | `number` | `90` | no |
| failed\_c2d\_twin\_update\_rate\_threshold\_warning | C2D Twin Update Failed rate limit (warning threshold) | `number` | `50` | no | | <a name="input_failed_c2d_twin_update_rate_threshold_warning"></a> [failed\_c2d\_twin\_update\_rate\_threshold\_warning](#input\_failed\_c2d\_twin\_update\_rate\_threshold\_warning) | C2D Twin Update Failed rate limit (warning threshold) | `number` | `50` | no |
| failed\_c2d\_twin\_update\_rate\_time\_aggregator | Monitor aggregator for IoT Hub failed c2d twin update [available values: min, max, sum or avg] | `string` | `"min"` | no | | <a name="input_failed_c2d_twin_update_rate_time_aggregator"></a> [failed\_c2d\_twin\_update\_rate\_time\_aggregator](#input\_failed\_c2d\_twin\_update\_rate\_time\_aggregator) | Monitor aggregator for IoT Hub failed c2d twin update [available values: min, max, sum or avg] | `string` | `"min"` | no |
| failed\_c2d\_twin\_update\_rate\_timeframe | Monitor timeframe for IoT Hub failed c2d twin update [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_failed_c2d_twin_update_rate_timeframe"></a> [failed\_c2d\_twin\_update\_rate\_timeframe](#input\_failed\_c2d\_twin\_update\_rate\_timeframe) | Monitor timeframe for IoT Hub failed c2d twin update [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| failed\_d2c\_twin\_read\_rate\_enabled | Flag to enable IoT Hub failed d2c twin read monitor | `string` | `"true"` | no | | <a name="input_failed_d2c_twin_read_rate_enabled"></a> [failed\_d2c\_twin\_read\_rate\_enabled](#input\_failed\_d2c\_twin\_read\_rate\_enabled) | Flag to enable IoT Hub failed d2c twin read monitor | `string` | `"true"` | no |
| failed\_d2c\_twin\_read\_rate\_extra\_tags | Extra tags for IoT Hub failed d2c twin read monitor | `list(string)` | `[]` | no | | <a name="input_failed_d2c_twin_read_rate_extra_tags"></a> [failed\_d2c\_twin\_read\_rate\_extra\_tags](#input\_failed\_d2c\_twin\_read\_rate\_extra\_tags) | Extra tags for IoT Hub failed d2c twin read monitor | `list(string)` | `[]` | no |
| failed\_d2c\_twin\_read\_rate\_message | Custom message for IoT Hub failed d2c twin read monitor | `string` | `""` | no | | <a name="input_failed_d2c_twin_read_rate_message"></a> [failed\_d2c\_twin\_read\_rate\_message](#input\_failed\_d2c\_twin\_read\_rate\_message) | Custom message for IoT Hub failed d2c twin read monitor | `string` | `""` | no |
| failed\_d2c\_twin\_read\_rate\_threshold\_critical | D2C Twin Read Failed rate limit (critical threshold) | `number` | `90` | no | | <a name="input_failed_d2c_twin_read_rate_threshold_critical"></a> [failed\_d2c\_twin\_read\_rate\_threshold\_critical](#input\_failed\_d2c\_twin\_read\_rate\_threshold\_critical) | D2C Twin Read Failed rate limit (critical threshold) | `number` | `90` | no |
| failed\_d2c\_twin\_read\_rate\_threshold\_warning | D2C Twin Read Failed rate limit (warning threshold) | `number` | `50` | no | | <a name="input_failed_d2c_twin_read_rate_threshold_warning"></a> [failed\_d2c\_twin\_read\_rate\_threshold\_warning](#input\_failed\_d2c\_twin\_read\_rate\_threshold\_warning) | D2C Twin Read Failed rate limit (warning threshold) | `number` | `50` | no |
| failed\_d2c\_twin\_read\_rate\_time\_aggregator | Monitor aggregator for IoT Hub failed d2c twin read [available values: min, max, sum or avg] | `string` | `"min"` | no | | <a name="input_failed_d2c_twin_read_rate_time_aggregator"></a> [failed\_d2c\_twin\_read\_rate\_time\_aggregator](#input\_failed\_d2c\_twin\_read\_rate\_time\_aggregator) | Monitor aggregator for IoT Hub failed d2c twin read [available values: min, max, sum or avg] | `string` | `"min"` | no |
| failed\_d2c\_twin\_read\_rate\_timeframe | Monitor timeframe for IoT Hub failed d2c twin read [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_failed_d2c_twin_read_rate_timeframe"></a> [failed\_d2c\_twin\_read\_rate\_timeframe](#input\_failed\_d2c\_twin\_read\_rate\_timeframe) | Monitor timeframe for IoT Hub failed d2c twin read [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| failed\_d2c\_twin\_update\_rate\_enabled | Flag to enable IoT Hub failed d2c twin update monitor | `string` | `"true"` | no | | <a name="input_failed_d2c_twin_update_rate_enabled"></a> [failed\_d2c\_twin\_update\_rate\_enabled](#input\_failed\_d2c\_twin\_update\_rate\_enabled) | Flag to enable IoT Hub failed d2c twin update monitor | `string` | `"true"` | no |
| failed\_d2c\_twin\_update\_rate\_extra\_tags | Extra tags for IoT Hub failed d2c twin update monitor | `list(string)` | `[]` | no | | <a name="input_failed_d2c_twin_update_rate_extra_tags"></a> [failed\_d2c\_twin\_update\_rate\_extra\_tags](#input\_failed\_d2c\_twin\_update\_rate\_extra\_tags) | Extra tags for IoT Hub failed d2c twin update monitor | `list(string)` | `[]` | no |
| failed\_d2c\_twin\_update\_rate\_message | Custom message for IoT Hub failed d2c twin update monitor | `string` | `""` | no | | <a name="input_failed_d2c_twin_update_rate_message"></a> [failed\_d2c\_twin\_update\_rate\_message](#input\_failed\_d2c\_twin\_update\_rate\_message) | Custom message for IoT Hub failed d2c twin update monitor | `string` | `""` | no |
| failed\_d2c\_twin\_update\_rate\_threshold\_critical | D2C Twin Update Failed rate limit (critical threshold) | `number` | `90` | no | | <a name="input_failed_d2c_twin_update_rate_threshold_critical"></a> [failed\_d2c\_twin\_update\_rate\_threshold\_critical](#input\_failed\_d2c\_twin\_update\_rate\_threshold\_critical) | D2C Twin Update Failed rate limit (critical threshold) | `number` | `90` | no |
| failed\_d2c\_twin\_update\_rate\_threshold\_warning | D2C Twin Update Failed rate limit (warning threshold) | `number` | `50` | no | | <a name="input_failed_d2c_twin_update_rate_threshold_warning"></a> [failed\_d2c\_twin\_update\_rate\_threshold\_warning](#input\_failed\_d2c\_twin\_update\_rate\_threshold\_warning) | D2C Twin Update Failed rate limit (warning threshold) | `number` | `50` | no |
| failed\_d2c\_twin\_update\_rate\_time\_aggregator | Monitor aggregator for IoT Hub failed d2c twin update [available values: min, max, sum or avg] | `string` | `"min"` | no | | <a name="input_failed_d2c_twin_update_rate_time_aggregator"></a> [failed\_d2c\_twin\_update\_rate\_time\_aggregator](#input\_failed\_d2c\_twin\_update\_rate\_time\_aggregator) | Monitor aggregator for IoT Hub failed d2c twin update [available values: min, max, sum or avg] | `string` | `"min"` | no |
| failed\_d2c\_twin\_update\_rate\_timeframe | Monitor timeframe for IoT Hub failed d2c twin update [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_failed_d2c_twin_update_rate_timeframe"></a> [failed\_d2c\_twin\_update\_rate\_timeframe](#input\_failed\_d2c\_twin\_update\_rate\_timeframe) | Monitor timeframe for IoT Hub failed d2c twin update [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| failed\_jobs\_rate\_enabled | Flag to enable IoT Hub failed jobs monitor | `string` | `"true"` | no | | <a name="input_failed_jobs_rate_enabled"></a> [failed\_jobs\_rate\_enabled](#input\_failed\_jobs\_rate\_enabled) | Flag to enable IoT Hub failed jobs monitor | `string` | `"true"` | no |
| failed\_jobs\_rate\_extra\_tags | Extra tags for IoT Hub failed jobs monitor | `list(string)` | `[]` | no | | <a name="input_failed_jobs_rate_extra_tags"></a> [failed\_jobs\_rate\_extra\_tags](#input\_failed\_jobs\_rate\_extra\_tags) | Extra tags for IoT Hub failed jobs monitor | `list(string)` | `[]` | no |
| failed\_jobs\_rate\_message | Custom message for IoT Hub failed jobs monitor | `string` | `""` | no | | <a name="input_failed_jobs_rate_message"></a> [failed\_jobs\_rate\_message](#input\_failed\_jobs\_rate\_message) | Custom message for IoT Hub failed jobs monitor | `string` | `""` | no |
| failed\_jobs\_rate\_threshold\_critical | Jobs Failed rate limit (critical threshold) | `number` | `90` | no | | <a name="input_failed_jobs_rate_threshold_critical"></a> [failed\_jobs\_rate\_threshold\_critical](#input\_failed\_jobs\_rate\_threshold\_critical) | Jobs Failed rate limit (critical threshold) | `number` | `90` | no |
| failed\_jobs\_rate\_threshold\_warning | Jobs Failed rate limit (warning threshold) | `number` | `50` | no | | <a name="input_failed_jobs_rate_threshold_warning"></a> [failed\_jobs\_rate\_threshold\_warning](#input\_failed\_jobs\_rate\_threshold\_warning) | Jobs Failed rate limit (warning threshold) | `number` | `50` | no |
| failed\_jobs\_rate\_time\_aggregator | Monitor aggregator for IoT Hub failed jobs [available values: min, max, sum or avg] | `string` | `"min"` | no | | <a name="input_failed_jobs_rate_time_aggregator"></a> [failed\_jobs\_rate\_time\_aggregator](#input\_failed\_jobs\_rate\_time\_aggregator) | Monitor aggregator for IoT Hub failed jobs [available values: min, max, sum or avg] | `string` | `"min"` | no |
| failed\_jobs\_rate\_timeframe | Monitor timeframe for IoT Hub failed jobs [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_failed_jobs_rate_timeframe"></a> [failed\_jobs\_rate\_timeframe](#input\_failed\_jobs\_rate\_timeframe) | Monitor timeframe for IoT Hub failed jobs [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| failed\_listjobs\_rate\_enabled | Flag to enable IoT Hub failed list jobs monitor | `string` | `"true"` | no | | <a name="input_failed_listjobs_rate_enabled"></a> [failed\_listjobs\_rate\_enabled](#input\_failed\_listjobs\_rate\_enabled) | Flag to enable IoT Hub failed list jobs monitor | `string` | `"true"` | no |
| failed\_listjobs\_rate\_extra\_tags | Extra tags for IoT Hub failed list jobs monitor | `list(string)` | `[]` | no | | <a name="input_failed_listjobs_rate_extra_tags"></a> [failed\_listjobs\_rate\_extra\_tags](#input\_failed\_listjobs\_rate\_extra\_tags) | Extra tags for IoT Hub failed list jobs monitor | `list(string)` | `[]` | no |
| failed\_listjobs\_rate\_message | Custom message for IoT Hub failed list jobs monitor | `string` | `""` | no | | <a name="input_failed_listjobs_rate_message"></a> [failed\_listjobs\_rate\_message](#input\_failed\_listjobs\_rate\_message) | Custom message for IoT Hub failed list jobs monitor | `string` | `""` | no |
| failed\_listjobs\_rate\_threshold\_critical | ListJobs Failed rate limit (critical threshold) | `number` | `90` | no | | <a name="input_failed_listjobs_rate_threshold_critical"></a> [failed\_listjobs\_rate\_threshold\_critical](#input\_failed\_listjobs\_rate\_threshold\_critical) | ListJobs Failed rate limit (critical threshold) | `number` | `90` | no |
| failed\_listjobs\_rate\_threshold\_warning | ListJobs Failed rate limit (warning threshold) | `number` | `50` | no | | <a name="input_failed_listjobs_rate_threshold_warning"></a> [failed\_listjobs\_rate\_threshold\_warning](#input\_failed\_listjobs\_rate\_threshold\_warning) | ListJobs Failed rate limit (warning threshold) | `number` | `50` | no |
| failed\_listjobs\_rate\_time\_aggregator | Monitor aggregator for IoT Hub failed list jobs [available values: min, max, sum or avg] | `string` | `"min"` | no | | <a name="input_failed_listjobs_rate_time_aggregator"></a> [failed\_listjobs\_rate\_time\_aggregator](#input\_failed\_listjobs\_rate\_time\_aggregator) | Monitor aggregator for IoT Hub failed list jobs [available values: min, max, sum or avg] | `string` | `"min"` | no |
| failed\_listjobs\_rate\_timeframe | Monitor timeframe for IoT Hub failed list jobs [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_failed_listjobs_rate_timeframe"></a> [failed\_listjobs\_rate\_timeframe](#input\_failed\_listjobs\_rate\_timeframe) | Monitor timeframe for IoT Hub failed list jobs [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| failed\_queryjobs\_rate\_enabled | Flag to enable IoT Hub failed query jobs monitor | `string` | `"true"` | no | | <a name="input_failed_queryjobs_rate_enabled"></a> [failed\_queryjobs\_rate\_enabled](#input\_failed\_queryjobs\_rate\_enabled) | Flag to enable IoT Hub failed query jobs monitor | `string` | `"true"` | no |
| failed\_queryjobs\_rate\_extra\_tags | Extra tags for IoT Hub failed query jobs monitor | `list(string)` | `[]` | no | | <a name="input_failed_queryjobs_rate_extra_tags"></a> [failed\_queryjobs\_rate\_extra\_tags](#input\_failed\_queryjobs\_rate\_extra\_tags) | Extra tags for IoT Hub failed query jobs monitor | `list(string)` | `[]` | no |
| failed\_queryjobs\_rate\_message | Custom message for IoT Hub failed query jobs monitor | `string` | `""` | no | | <a name="input_failed_queryjobs_rate_message"></a> [failed\_queryjobs\_rate\_message](#input\_failed\_queryjobs\_rate\_message) | Custom message for IoT Hub failed query jobs monitor | `string` | `""` | no |
| failed\_queryjobs\_rate\_threshold\_critical | QueryJobs Failed rate limit (critical threshold) | `number` | `90` | no | | <a name="input_failed_queryjobs_rate_threshold_critical"></a> [failed\_queryjobs\_rate\_threshold\_critical](#input\_failed\_queryjobs\_rate\_threshold\_critical) | QueryJobs Failed rate limit (critical threshold) | `number` | `90` | no |
| failed\_queryjobs\_rate\_threshold\_warning | QueryJobs Failed rate limit (warning threshold) | `number` | `50` | no | | <a name="input_failed_queryjobs_rate_threshold_warning"></a> [failed\_queryjobs\_rate\_threshold\_warning](#input\_failed\_queryjobs\_rate\_threshold\_warning) | QueryJobs Failed rate limit (warning threshold) | `number` | `50` | no |
| failed\_queryjobs\_rate\_time\_aggregator | Monitor aggregator for IoT Hub failed query jobs [available values: min, max, sum or avg] | `string` | `"min"` | no | | <a name="input_failed_queryjobs_rate_time_aggregator"></a> [failed\_queryjobs\_rate\_time\_aggregator](#input\_failed\_queryjobs\_rate\_time\_aggregator) | Monitor aggregator for IoT Hub failed query jobs [available values: min, max, sum or avg] | `string` | `"min"` | no |
| failed\_queryjobs\_rate\_timeframe | Monitor timeframe for IoT Hub failed query jobs [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_failed_queryjobs_rate_timeframe"></a> [failed\_queryjobs\_rate\_timeframe](#input\_failed\_queryjobs\_rate\_timeframe) | Monitor timeframe for IoT Hub failed query jobs [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| invalid\_d2c\_telemetry\_egress\_enabled | Flag to enable IoT Hub invalid d2c telemetry monitor | `string` | `"true"` | no | | <a name="input_invalid_d2c_telemetry_egress_enabled"></a> [invalid\_d2c\_telemetry\_egress\_enabled](#input\_invalid\_d2c\_telemetry\_egress\_enabled) | Flag to enable IoT Hub invalid d2c telemetry monitor | `string` | `"true"` | no |
| invalid\_d2c\_telemetry\_egress\_extra\_tags | Extra tags for IoT Hub invalid d2c telemetry monitor | `list(string)` | `[]` | no | | <a name="input_invalid_d2c_telemetry_egress_extra_tags"></a> [invalid\_d2c\_telemetry\_egress\_extra\_tags](#input\_invalid\_d2c\_telemetry\_egress\_extra\_tags) | Extra tags for IoT Hub invalid d2c telemetry monitor | `list(string)` | `[]` | no |
| invalid\_d2c\_telemetry\_egress\_message | Custom message for IoT Hub invalid d2c telemetry monitor | `string` | `""` | no | | <a name="input_invalid_d2c_telemetry_egress_message"></a> [invalid\_d2c\_telemetry\_egress\_message](#input\_invalid\_d2c\_telemetry\_egress\_message) | Custom message for IoT Hub invalid d2c telemetry monitor | `string` | `""` | no |
| invalid\_d2c\_telemetry\_egress\_rate\_threshold\_critical | D2C Telemetry Invalid limit (critical threshold) | `number` | `90` | no | | <a name="input_invalid_d2c_telemetry_egress_rate_threshold_critical"></a> [invalid\_d2c\_telemetry\_egress\_rate\_threshold\_critical](#input\_invalid\_d2c\_telemetry\_egress\_rate\_threshold\_critical) | D2C Telemetry Invalid limit (critical threshold) | `number` | `90` | no |
| invalid\_d2c\_telemetry\_egress\_rate\_threshold\_warning | D2C Telemetry Invalid limit (warning threshold) | `number` | `50` | no | | <a name="input_invalid_d2c_telemetry_egress_rate_threshold_warning"></a> [invalid\_d2c\_telemetry\_egress\_rate\_threshold\_warning](#input\_invalid\_d2c\_telemetry\_egress\_rate\_threshold\_warning) | D2C Telemetry Invalid limit (warning threshold) | `number` | `50` | no |
| invalid\_d2c\_telemetry\_egress\_time\_aggregator | Monitor aggregator for IoT Hub invalid d2c telemetry [available values: min, max, sum or avg] | `string` | `"min"` | no | | <a name="input_invalid_d2c_telemetry_egress_time_aggregator"></a> [invalid\_d2c\_telemetry\_egress\_time\_aggregator](#input\_invalid\_d2c\_telemetry\_egress\_time\_aggregator) | Monitor aggregator for IoT Hub invalid d2c telemetry [available values: min, max, sum or avg] | `string` | `"min"` | no |
| invalid\_d2c\_telemetry\_egress\_timeframe | Monitor timeframe for IoT Hub invalid d2c telemetry [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_invalid_d2c_telemetry_egress_timeframe"></a> [invalid\_d2c\_telemetry\_egress\_timeframe](#input\_invalid\_d2c\_telemetry\_egress\_timeframe) | Monitor timeframe for IoT Hub invalid d2c telemetry [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| message | Message sent when an alert is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| orphaned\_d2c\_telemetry\_egress\_enabled | Flag to enable IoT Hub orphaned d2c telemetry monitor | `string` | `"true"` | no | | <a name="input_orphaned_d2c_telemetry_egress_enabled"></a> [orphaned\_d2c\_telemetry\_egress\_enabled](#input\_orphaned\_d2c\_telemetry\_egress\_enabled) | Flag to enable IoT Hub orphaned d2c telemetry monitor | `string` | `"true"` | no |
| orphaned\_d2c\_telemetry\_egress\_extra\_tags | Extra tags for IoT Hub orphaned d2c telemetry monitor | `list(string)` | `[]` | no | | <a name="input_orphaned_d2c_telemetry_egress_extra_tags"></a> [orphaned\_d2c\_telemetry\_egress\_extra\_tags](#input\_orphaned\_d2c\_telemetry\_egress\_extra\_tags) | Extra tags for IoT Hub orphaned d2c telemetry monitor | `list(string)` | `[]` | no |
| orphaned\_d2c\_telemetry\_egress\_message | Custom message for IoT Hub orphaned d2c telemetry monitor | `string` | `""` | no | | <a name="input_orphaned_d2c_telemetry_egress_message"></a> [orphaned\_d2c\_telemetry\_egress\_message](#input\_orphaned\_d2c\_telemetry\_egress\_message) | Custom message for IoT Hub orphaned d2c telemetry monitor | `string` | `""` | no |
| orphaned\_d2c\_telemetry\_egress\_rate\_threshold\_critical | D2C Telemetry Orphaned limit (critical threshold) | `number` | `90` | no | | <a name="input_orphaned_d2c_telemetry_egress_rate_threshold_critical"></a> [orphaned\_d2c\_telemetry\_egress\_rate\_threshold\_critical](#input\_orphaned\_d2c\_telemetry\_egress\_rate\_threshold\_critical) | D2C Telemetry Orphaned limit (critical threshold) | `number` | `90` | no |
| orphaned\_d2c\_telemetry\_egress\_rate\_threshold\_warning | D2C Telemetry Orphaned limit (warning threshold) | `number` | `50` | no | | <a name="input_orphaned_d2c_telemetry_egress_rate_threshold_warning"></a> [orphaned\_d2c\_telemetry\_egress\_rate\_threshold\_warning](#input\_orphaned\_d2c\_telemetry\_egress\_rate\_threshold\_warning) | D2C Telemetry Orphaned limit (warning threshold) | `number` | `50` | no |
| orphaned\_d2c\_telemetry\_egress\_time\_aggregator | Monitor aggregator for IoT Hub orphaned d2c telemetry [available values: min, max, sum or avg] | `string` | `"min"` | no | | <a name="input_orphaned_d2c_telemetry_egress_time_aggregator"></a> [orphaned\_d2c\_telemetry\_egress\_time\_aggregator](#input\_orphaned\_d2c\_telemetry\_egress\_time\_aggregator) | Monitor aggregator for IoT Hub orphaned d2c telemetry [available values: min, max, sum or avg] | `string` | `"min"` | no |
| orphaned\_d2c\_telemetry\_egress\_timeframe | Monitor timeframe for IoT Hub orphaned d2c telemetry [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_orphaned_d2c_telemetry_egress_timeframe"></a> [orphaned\_d2c\_telemetry\_egress\_timeframe](#input\_orphaned\_d2c\_telemetry\_egress\_timeframe) | Monitor timeframe for IoT Hub orphaned d2c telemetry [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
| status\_enabled | Flag to enable IoT Hub status monitor | `string` | `"true"` | no | | <a name="input_status_enabled"></a> [status\_enabled](#input\_status\_enabled) | Flag to enable IoT Hub status monitor | `string` | `"true"` | no |
| status\_extra\_tags | Extra tags for IoT Hub status monitor | `list(string)` | `[]` | no | | <a name="input_status_extra_tags"></a> [status\_extra\_tags](#input\_status\_extra\_tags) | Extra tags for IoT Hub status monitor | `list(string)` | `[]` | no |
| status\_message | Custom message for IoT Hub status monitor | `string` | `""` | no | | <a name="input_status_message"></a> [status\_message](#input\_status\_message) | Custom message for IoT Hub status monitor | `string` | `""` | no |
| status\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | | <a name="input_status_no_data_timeframe"></a> [status\_no\_data\_timeframe](#input\_status\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no |
| status\_time\_aggregator | Monitor aggregator for IoT Hub status [available values: min, max, sum or avg] | `string` | `"max"` | no | | <a name="input_status_time_aggregator"></a> [status\_time\_aggregator](#input\_status\_time\_aggregator) | Monitor aggregator for IoT Hub status [available values: min, max, sum or avg] | `string` | `"max"` | no |
| status\_timeframe | Monitor timeframe for IoT Hub status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_status_timeframe"></a> [status\_timeframe](#input\_status\_timeframe) | Monitor timeframe for IoT Hub status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| too\_many\_d2c\_telemetry\_ingress\_nosent\_enabled | Flag to enable IoT Hub unsent d2c telemetry monitor | `string` | `"true"` | no | | <a name="input_too_many_d2c_telemetry_ingress_nosent_enabled"></a> [too\_many\_d2c\_telemetry\_ingress\_nosent\_enabled](#input\_too\_many\_d2c\_telemetry\_ingress\_nosent\_enabled) | Flag to enable IoT Hub unsent d2c telemetry monitor | `string` | `"true"` | no |
| too\_many\_d2c\_telemetry\_ingress\_nosent\_extra\_tags | Extra tags for IoT Hub unsent d2c telemetry monitor | `list(string)` | `[]` | no | | <a name="input_too_many_d2c_telemetry_ingress_nosent_extra_tags"></a> [too\_many\_d2c\_telemetry\_ingress\_nosent\_extra\_tags](#input\_too\_many\_d2c\_telemetry\_ingress\_nosent\_extra\_tags) | Extra tags for IoT Hub unsent d2c telemetry monitor | `list(string)` | `[]` | no |
| too\_many\_d2c\_telemetry\_ingress\_nosent\_message | Custom message for IoT Hub unsent d2c telemetry monitor | `string` | `""` | no | | <a name="input_too_many_d2c_telemetry_ingress_nosent_message"></a> [too\_many\_d2c\_telemetry\_ingress\_nosent\_message](#input\_too\_many\_d2c\_telemetry\_ingress\_nosent\_message) | Custom message for IoT Hub unsent d2c telemetry monitor | `string` | `""` | no |
| too\_many\_d2c\_telemetry\_ingress\_nosent\_rate\_threshold\_critical | D2C Telemetry ingress not sent limit (critical threshold) | `number` | `20` | no | | <a name="input_too_many_d2c_telemetry_ingress_nosent_rate_threshold_critical"></a> [too\_many\_d2c\_telemetry\_ingress\_nosent\_rate\_threshold\_critical](#input\_too\_many\_d2c\_telemetry\_ingress\_nosent\_rate\_threshold\_critical) | D2C Telemetry ingress not sent limit (critical threshold) | `number` | `20` | no |
| too\_many\_d2c\_telemetry\_ingress\_nosent\_rate\_threshold\_warning | D2C Telemetry ingress not sent limit (warning threshold) | `number` | `10` | no | | <a name="input_too_many_d2c_telemetry_ingress_nosent_rate_threshold_warning"></a> [too\_many\_d2c\_telemetry\_ingress\_nosent\_rate\_threshold\_warning](#input\_too\_many\_d2c\_telemetry\_ingress\_nosent\_rate\_threshold\_warning) | D2C Telemetry ingress not sent limit (warning threshold) | `number` | `10` | no |
| too\_many\_d2c\_telemetry\_ingress\_nosent\_timeframe | Monitor timeframe for IoT Hub unsent d2c telemetry [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_too_many_d2c_telemetry_ingress_nosent_timeframe"></a> [too\_many\_d2c\_telemetry\_ingress\_nosent\_timeframe](#input\_too\_many\_d2c\_telemetry\_ingress\_nosent\_timeframe) | Monitor timeframe for IoT Hub unsent d2c telemetry [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| total\_devices\_enabled | Flag to enable IoT Hub total devices monitor | `string` | `"true"` | no | | <a name="input_total_devices_enabled"></a> [total\_devices\_enabled](#input\_total\_devices\_enabled) | Flag to enable IoT Hub total devices monitor | `string` | `"true"` | no |
| total\_devices\_extra\_tags | Extra tags for IoT Hub total devices monitor | `list(string)` | `[]` | no | | <a name="input_total_devices_extra_tags"></a> [total\_devices\_extra\_tags](#input\_total\_devices\_extra\_tags) | Extra tags for IoT Hub total devices monitor | `list(string)` | `[]` | no |
| total\_devices\_message | Custom message for IoT Hub total devices monitor | `string` | `""` | no | | <a name="input_total_devices_message"></a> [total\_devices\_message](#input\_total\_devices\_message) | Custom message for IoT Hub total devices monitor | `string` | `""` | no |
| total\_devices\_time\_aggregator | Monitor aggregator for IoT Hub total devices [available values: min, max, sum or avg] | `string` | `"min"` | no | | <a name="input_total_devices_time_aggregator"></a> [total\_devices\_time\_aggregator](#input\_total\_devices\_time\_aggregator) | Monitor aggregator for IoT Hub total devices [available values: min, max, sum or avg] | `string` | `"min"` | no |
| total\_devices\_timeframe | Monitor timeframe for IoT Hub total devices [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_total_devices_timeframe"></a> [total\_devices\_timeframe](#input\_total\_devices\_timeframe) | Monitor timeframe for IoT Hub total devices [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| status\_id | id for monitor status | | <a name="output_status_id"></a> [status\_id](#output\_status\_id) | id for monitor status |
| too\_many\_c2d\_methods\_failed\_id | id for monitor too\_many\_c2d\_methods\_failed | | <a name="output_too_many_c2d_methods_failed_id"></a> [too\_many\_c2d\_methods\_failed\_id](#output\_too\_many\_c2d\_methods\_failed\_id) | id for monitor too\_many\_c2d\_methods\_failed |
| too\_many\_c2d\_twin\_read\_failed\_id | id for monitor too\_many\_c2d\_twin\_read\_failed | | <a name="output_too_many_c2d_twin_read_failed_id"></a> [too\_many\_c2d\_twin\_read\_failed\_id](#output\_too\_many\_c2d\_twin\_read\_failed\_id) | id for monitor too\_many\_c2d\_twin\_read\_failed |
| too\_many\_c2d\_twin\_update\_failed\_id | id for monitor too\_many\_c2d\_twin\_update\_failed | | <a name="output_too_many_c2d_twin_update_failed_id"></a> [too\_many\_c2d\_twin\_update\_failed\_id](#output\_too\_many\_c2d\_twin\_update\_failed\_id) | id for monitor too\_many\_c2d\_twin\_update\_failed |
| too\_many\_d2c\_telemetry\_egress\_dropped\_id | id for monitor too\_many\_d2c\_telemetry\_egress\_dropped | | <a name="output_too_many_d2c_telemetry_egress_dropped_id"></a> [too\_many\_d2c\_telemetry\_egress\_dropped\_id](#output\_too\_many\_d2c\_telemetry\_egress\_dropped\_id) | id for monitor too\_many\_d2c\_telemetry\_egress\_dropped |
| too\_many\_d2c\_telemetry\_egress\_invalid\_id | id for monitor too\_many\_d2c\_telemetry\_egress\_invalid | | <a name="output_too_many_d2c_telemetry_egress_invalid_id"></a> [too\_many\_d2c\_telemetry\_egress\_invalid\_id](#output\_too\_many\_d2c\_telemetry\_egress\_invalid\_id) | id for monitor too\_many\_d2c\_telemetry\_egress\_invalid |
| too\_many\_d2c\_telemetry\_egress\_orphaned\_id | id for monitor too\_many\_d2c\_telemetry\_egress\_orphaned | | <a name="output_too_many_d2c_telemetry_egress_orphaned_id"></a> [too\_many\_d2c\_telemetry\_egress\_orphaned\_id](#output\_too\_many\_d2c\_telemetry\_egress\_orphaned\_id) | id for monitor too\_many\_d2c\_telemetry\_egress\_orphaned |
| too\_many\_d2c\_telemetry\_ingress\_nosent\_id | id for monitor too\_many\_d2c\_telemetry\_ingress\_nosent | | <a name="output_too_many_d2c_telemetry_ingress_nosent_id"></a> [too\_many\_d2c\_telemetry\_ingress\_nosent\_id](#output\_too\_many\_d2c\_telemetry\_ingress\_nosent\_id) | id for monitor too\_many\_d2c\_telemetry\_ingress\_nosent |
| too\_many\_d2c\_twin\_read\_failed\_id | id for monitor too\_many\_d2c\_twin\_read\_failed | | <a name="output_too_many_d2c_twin_read_failed_id"></a> [too\_many\_d2c\_twin\_read\_failed\_id](#output\_too\_many\_d2c\_twin\_read\_failed\_id) | id for monitor too\_many\_d2c\_twin\_read\_failed |
| too\_many\_d2c\_twin\_update\_failed\_id | id for monitor too\_many\_d2c\_twin\_update\_failed | | <a name="output_too_many_d2c_twin_update_failed_id"></a> [too\_many\_d2c\_twin\_update\_failed\_id](#output\_too\_many\_d2c\_twin\_update\_failed\_id) | id for monitor too\_many\_d2c\_twin\_update\_failed |
| too\_many\_jobs\_failed\_id | id for monitor too\_many\_jobs\_failed | | <a name="output_too_many_jobs_failed_id"></a> [too\_many\_jobs\_failed\_id](#output\_too\_many\_jobs\_failed\_id) | id for monitor too\_many\_jobs\_failed |
| too\_many\_list\_jobs\_failed\_id | id for monitor too\_many\_list\_jobs\_failed | | <a name="output_too_many_list_jobs_failed_id"></a> [too\_many\_list\_jobs\_failed\_id](#output\_too\_many\_list\_jobs\_failed\_id) | id for monitor too\_many\_list\_jobs\_failed |
| too\_many\_query\_jobs\_failed\_id | id for monitor too\_many\_query\_jobs\_failed | | <a name="output_too_many_query_jobs_failed_id"></a> [too\_many\_query\_jobs\_failed\_id](#output\_too\_many\_query\_jobs\_failed\_id) | id for monitor too\_many\_query\_jobs\_failed |
| total\_devices\_id | id for monitor total\_devices | | <a name="output_total_devices_id"></a> [total\_devices\_id](#output\_total\_devices\_id) | id for monitor total\_devices |
## Related documentation ## Related documentation
DataDog documentation: [https://docs.datadoghq.com/integrations/azure_iot_hub](https://docs.datadoghq.com/integrations/azure_iot_hub) DataDog documentation: [https://docs.datadoghq.com/integrations/azure_iot_hub](https://docs.datadoghq.com/integrations/azure_iot_hub)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -25,50 +25,72 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a |
| <a name="module_filter-tags-activity"></a> [filter-tags-activity](#module\_filter-tags-activity) | ../../../common/filter-tags | n/a |
| <a name="module_filter-tags-statuscode"></a> [filter-tags-statuscode](#module\_filter-tags-statuscode) | ../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.keyvault_api_latency](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.keyvault_api_result](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.keyvault_status](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| api\_latency\_enabled | Flag to enable Key Vault API latency monitor | `string` | `"true"` | no | | <a name="input_api_latency_enabled"></a> [api\_latency\_enabled](#input\_api\_latency\_enabled) | Flag to enable Key Vault API latency monitor | `string` | `"true"` | no |
| api\_latency\_extra\_tags | Extra tags for Key Vault API latency monitor | `list(string)` | `[]` | no | | <a name="input_api_latency_extra_tags"></a> [api\_latency\_extra\_tags](#input\_api\_latency\_extra\_tags) | Extra tags for Key Vault API latency monitor | `list(string)` | `[]` | no |
| api\_latency\_message | Custom message for Key Vault API latency monitor | `string` | `""` | no | | <a name="input_api_latency_message"></a> [api\_latency\_message](#input\_api\_latency\_message) | Custom message for Key Vault API latency monitor | `string` | `""` | no |
| api\_latency\_threshold\_critical | Critical threshold for Key Vault API latency rate | `number` | `100` | no | | <a name="input_api_latency_threshold_critical"></a> [api\_latency\_threshold\_critical](#input\_api\_latency\_threshold\_critical) | Critical threshold for Key Vault API latency rate | `number` | `100` | no |
| api\_latency\_threshold\_warning | Warning threshold for Key Vault API latency rate | `number` | `80` | no | | <a name="input_api_latency_threshold_warning"></a> [api\_latency\_threshold\_warning](#input\_api\_latency\_threshold\_warning) | Warning threshold for Key Vault API latency rate | `number` | `80` | no |
| api\_latency\_time\_aggregator | Monitor aggregator for Key Vault API latency [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_api_latency_time_aggregator"></a> [api\_latency\_time\_aggregator](#input\_api\_latency\_time\_aggregator) | Monitor aggregator for Key Vault API latency [available values: min, max or avg] | `string` | `"min"` | no |
| api\_latency\_timeframe | Monitor timeframe for Key Vault API latency [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_api_latency_timeframe"></a> [api\_latency\_timeframe](#input\_api\_latency\_timeframe) | Monitor timeframe for Key Vault API latency [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| api\_result\_enabled | Flag to enable Key Vault API result monitor | `string` | `"true"` | no | | <a name="input_api_result_enabled"></a> [api\_result\_enabled](#input\_api\_result\_enabled) | Flag to enable Key Vault API result monitor | `string` | `"true"` | no |
| api\_result\_extra\_tags | Extra tags for Key Vault API result monitor | `list(string)` | `[]` | no | | <a name="input_api_result_extra_tags"></a> [api\_result\_extra\_tags](#input\_api\_result\_extra\_tags) | Extra tags for Key Vault API result monitor | `list(string)` | `[]` | no |
| api\_result\_message | Custom message for Key Vault API result monitor | `string` | `""` | no | | <a name="input_api_result_message"></a> [api\_result\_message](#input\_api\_result\_message) | Custom message for Key Vault API result monitor | `string` | `""` | no |
| api\_result\_threshold\_critical | Critical threshold for Key Vault API result rate | `number` | `10` | no | | <a name="input_api_result_threshold_critical"></a> [api\_result\_threshold\_critical](#input\_api\_result\_threshold\_critical) | Critical threshold for Key Vault API result rate | `number` | `10` | no |
| api\_result\_threshold\_warning | Warning threshold for Key Vault API result rate | `number` | `30` | no | | <a name="input_api_result_threshold_warning"></a> [api\_result\_threshold\_warning](#input\_api\_result\_threshold\_warning) | Warning threshold for Key Vault API result rate | `number` | `30` | no |
| api\_result\_time\_aggregator | Monitor aggregator for Key Vault API result [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_api_result_time_aggregator"></a> [api\_result\_time\_aggregator](#input\_api\_result\_time\_aggregator) | Monitor aggregator for Key Vault API result [available values: min, max or avg] | `string` | `"max"` | no |
| api\_result\_timeframe | Monitor timeframe for Key Vault API result [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_api_result_timeframe"></a> [api\_result\_timeframe](#input\_api\_result\_timeframe) | Monitor timeframe for Key Vault API result [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| environment | Architecture environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| keyvault\_status\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | | <a name="input_keyvault_status_no_data_timeframe"></a> [keyvault\_status\_no\_data\_timeframe](#input\_keyvault\_status\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no |
| message | Message sent when a monitor is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
| status\_enabled | Flag to enable Key Vault status monitor | `string` | `"true"` | no | | <a name="input_status_enabled"></a> [status\_enabled](#input\_status\_enabled) | Flag to enable Key Vault status monitor | `string` | `"true"` | no |
| status\_extra\_tags | Extra tags for Key Vault status monitor | `list(string)` | `[]` | no | | <a name="input_status_extra_tags"></a> [status\_extra\_tags](#input\_status\_extra\_tags) | Extra tags for Key Vault status monitor | `list(string)` | `[]` | no |
| status\_message | Custom message for Key Vault status monitor | `string` | `""` | no | | <a name="input_status_message"></a> [status\_message](#input\_status\_message) | Custom message for Key Vault status monitor | `string` | `""` | no |
| status\_time\_aggregator | Monitor aggregator for Key Vault status [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_status_time_aggregator"></a> [status\_time\_aggregator](#input\_status\_time\_aggregator) | Monitor aggregator for Key Vault status [available values: min, max or avg] | `string` | `"max"` | no |
| status\_timeframe | Monitor timeframe for Key Vault status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_status_timeframe"></a> [status\_timeframe](#input\_status\_timeframe) | Monitor timeframe for Key Vault status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| keyvault\_api\_latency\_id | id for monitor keyvault\_api\_latency | | <a name="output_keyvault_api_latency_id"></a> [keyvault\_api\_latency\_id](#output\_keyvault\_api\_latency\_id) | id for monitor keyvault\_api\_latency |
| keyvault\_api\_result\_id | id for monitor keyvault\_api\_result | | <a name="output_keyvault_api_result_id"></a> [keyvault\_api\_result\_id](#output\_keyvault\_api\_result\_id) | id for monitor keyvault\_api\_result |
| keyvault\_status\_id | id for monitor keyvault\_status | | <a name="output_keyvault_status_id"></a> [keyvault\_status\_id](#output\_keyvault\_status\_id) | id for monitor keyvault\_status |
## Related documentation ## Related documentation
DataDog documentation : [https://docs.datadoghq.com/integrations/azure/](https://docs.datadoghq.com/integrations/azure/) DataDog documentation : [https://docs.datadoghq.com/integrations/azure/](https://docs.datadoghq.com/integrations/azure/)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -23,34 +23,52 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.loadbalancer_status](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| environment | Architecture environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| loadbalancer\_status\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | | <a name="input_loadbalancer_status_no_data_timeframe"></a> [loadbalancer\_status\_no\_data\_timeframe](#input\_loadbalancer\_status\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no |
| message | Message sent when a monitor is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
| status\_enabled | Flag to enable Load Balancer status monitor | `string` | `"true"` | no | | <a name="input_status_enabled"></a> [status\_enabled](#input\_status\_enabled) | Flag to enable Load Balancer status monitor | `string` | `"true"` | no |
| status\_extra\_tags | Extra tags for Load Balancer status monitor | `list(string)` | `[]` | no | | <a name="input_status_extra_tags"></a> [status\_extra\_tags](#input\_status\_extra\_tags) | Extra tags for Load Balancer status monitor | `list(string)` | `[]` | no |
| status\_message | Custom message for Load Balancer status monitor | `string` | `""` | no | | <a name="input_status_message"></a> [status\_message](#input\_status\_message) | Custom message for Load Balancer status monitor | `string` | `""` | no |
| status\_time\_aggregator | Monitor aggregator for Load Balancer status [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_status_time_aggregator"></a> [status\_time\_aggregator](#input\_status\_time\_aggregator) | Monitor aggregator for Load Balancer status [available values: min, max or avg] | `string` | `"max"` | no |
| status\_timeframe | Monitor timeframe for Load Balancer status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_status_timeframe"></a> [status\_timeframe](#input\_status\_timeframe) | Monitor timeframe for Load Balancer status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| loadbalancer\_status\_id | id for monitor loadbalancer\_status | | <a name="output_loadbalancer_status_id"></a> [loadbalancer\_status\_id](#output\_loadbalancer\_status\_id) | id for monitor loadbalancer\_status |
## Related documentation ## Related documentation
DataDog documentation: [https://docs.datadoghq.com/integrations/azure/?tab=azurecliv20](https://docs.datadoghq.com/integrations/azure/?tab=azurecliv20) DataDog documentation: [https://docs.datadoghq.com/integrations/azure/?tab=azurecliv20](https://docs.datadoghq.com/integrations/azure/?tab=azurecliv20)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -26,58 +26,79 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.mysql_cpu_usage](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.mysql_free_storage](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.mysql_io_consumption](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.mysql_memory_usage](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| cpu\_usage\_enabled | Flag to enable Mysql status monitor | `string` | `"true"` | no | | <a name="input_cpu_usage_enabled"></a> [cpu\_usage\_enabled](#input\_cpu\_usage\_enabled) | Flag to enable Mysql status monitor | `string` | `"true"` | no |
| cpu\_usage\_extra\_tags | Extra tags for Mysql status monitor | `list(string)` | `[]` | no | | <a name="input_cpu_usage_extra_tags"></a> [cpu\_usage\_extra\_tags](#input\_cpu\_usage\_extra\_tags) | Extra tags for Mysql status monitor | `list(string)` | `[]` | no |
| cpu\_usage\_message | Custom message for Mysql CPU monitor | `string` | `""` | no | | <a name="input_cpu_usage_message"></a> [cpu\_usage\_message](#input\_cpu\_usage\_message) | Custom message for Mysql CPU monitor | `string` | `""` | no |
| cpu\_usage\_threshold\_critical | Mysql CPU usage in percent (critical threshold) | `string` | `"90"` | no | | <a name="input_cpu_usage_threshold_critical"></a> [cpu\_usage\_threshold\_critical](#input\_cpu\_usage\_threshold\_critical) | Mysql CPU usage in percent (critical threshold) | `string` | `"90"` | no |
| cpu\_usage\_threshold\_warning | Mysql CPU usage in percent (warning threshold) | `string` | `"80"` | no | | <a name="input_cpu_usage_threshold_warning"></a> [cpu\_usage\_threshold\_warning](#input\_cpu\_usage\_threshold\_warning) | Mysql CPU usage in percent (warning threshold) | `string` | `"80"` | no |
| cpu\_usage\_time\_aggregator | Monitor aggregator for Mysql CPU [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_cpu_usage_time_aggregator"></a> [cpu\_usage\_time\_aggregator](#input\_cpu\_usage\_time\_aggregator) | Monitor aggregator for Mysql CPU [available values: min, max or avg] | `string` | `"min"` | no |
| cpu\_usage\_timeframe | Monitor timeframe for Mysql CPU [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | | <a name="input_cpu_usage_timeframe"></a> [cpu\_usage\_timeframe](#input\_cpu\_usage\_timeframe) | Monitor timeframe for Mysql CPU [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no |
| environment | Architecture environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_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 | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| free\_storage\_enabled | Flag to enable Mysql status monitor | `string` | `"true"` | no | | <a name="input_free_storage_enabled"></a> [free\_storage\_enabled](#input\_free\_storage\_enabled) | Flag to enable Mysql status monitor | `string` | `"true"` | no |
| free\_storage\_extra\_tags | Extra tags for Mysql status monitor | `list(string)` | `[]` | no | | <a name="input_free_storage_extra_tags"></a> [free\_storage\_extra\_tags](#input\_free\_storage\_extra\_tags) | Extra tags for Mysql status monitor | `list(string)` | `[]` | no |
| free\_storage\_message | Custom message for Mysql Free Storage monitor | `string` | `""` | no | | <a name="input_free_storage_message"></a> [free\_storage\_message](#input\_free\_storage\_message) | Custom message for Mysql Free Storage monitor | `string` | `""` | no |
| free\_storage\_threshold\_critical | Mysql Free Storage remaining in percent (critical threshold) | `string` | `"10"` | no | | <a name="input_free_storage_threshold_critical"></a> [free\_storage\_threshold\_critical](#input\_free\_storage\_threshold\_critical) | Mysql Free Storage remaining in percent (critical threshold) | `string` | `"10"` | no |
| free\_storage\_threshold\_warning | Mysql Free Storage remaining in percent (warning threshold) | `string` | `"20"` | no | | <a name="input_free_storage_threshold_warning"></a> [free\_storage\_threshold\_warning](#input\_free\_storage\_threshold\_warning) | Mysql Free Storage remaining in percent (warning threshold) | `string` | `"20"` | no |
| free\_storage\_time\_aggregator | Monitor aggregator for Mysql Free Storage [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_free_storage_time_aggregator"></a> [free\_storage\_time\_aggregator](#input\_free\_storage\_time\_aggregator) | Monitor aggregator for Mysql Free Storage [available values: min, max or avg] | `string` | `"min"` | no |
| free\_storage\_timeframe | Monitor timeframe for Mysql Free Storage [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | | <a name="input_free_storage_timeframe"></a> [free\_storage\_timeframe](#input\_free\_storage\_timeframe) | Monitor timeframe for Mysql Free Storage [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no |
| io\_consumption\_enabled | Flag to enable Mysql status monitor | `string` | `"true"` | no | | <a name="input_io_consumption_enabled"></a> [io\_consumption\_enabled](#input\_io\_consumption\_enabled) | Flag to enable Mysql status monitor | `string` | `"true"` | no |
| io\_consumption\_extra\_tags | Extra tags for Mysql status monitor | `list(string)` | `[]` | no | | <a name="input_io_consumption_extra_tags"></a> [io\_consumption\_extra\_tags](#input\_io\_consumption\_extra\_tags) | Extra tags for Mysql status monitor | `list(string)` | `[]` | no |
| io\_consumption\_message | Custom message for Mysql IO consumption monitor | `string` | `""` | no | | <a name="input_io_consumption_message"></a> [io\_consumption\_message](#input\_io\_consumption\_message) | Custom message for Mysql IO consumption monitor | `string` | `""` | no |
| io\_consumption\_threshold\_critical | Mysql IO consumption in percent (critical threshold) | `string` | `"90"` | no | | <a name="input_io_consumption_threshold_critical"></a> [io\_consumption\_threshold\_critical](#input\_io\_consumption\_threshold\_critical) | Mysql IO consumption in percent (critical threshold) | `string` | `"90"` | no |
| io\_consumption\_threshold\_warning | Mysql IO consumption in percent (warning threshold) | `string` | `"80"` | no | | <a name="input_io_consumption_threshold_warning"></a> [io\_consumption\_threshold\_warning](#input\_io\_consumption\_threshold\_warning) | Mysql IO consumption in percent (warning threshold) | `string` | `"80"` | no |
| io\_consumption\_time\_aggregator | Monitor aggregator for Mysql IO consumption [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_io_consumption_time_aggregator"></a> [io\_consumption\_time\_aggregator](#input\_io\_consumption\_time\_aggregator) | Monitor aggregator for Mysql IO consumption [available values: min, max or avg] | `string` | `"min"` | no |
| io\_consumption\_timeframe | Monitor timeframe for Mysql IO consumption [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | | <a name="input_io_consumption_timeframe"></a> [io\_consumption\_timeframe](#input\_io\_consumption\_timeframe) | Monitor timeframe for Mysql IO consumption [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no |
| memory\_usage\_enabled | Flag to enable Mysql status monitor | `string` | `"true"` | no | | <a name="input_memory_usage_enabled"></a> [memory\_usage\_enabled](#input\_memory\_usage\_enabled) | Flag to enable Mysql status monitor | `string` | `"true"` | no |
| memory\_usage\_extra\_tags | Extra tags for Mysql status monitor | `list(string)` | `[]` | no | | <a name="input_memory_usage_extra_tags"></a> [memory\_usage\_extra\_tags](#input\_memory\_usage\_extra\_tags) | Extra tags for Mysql status monitor | `list(string)` | `[]` | no |
| memory\_usage\_message | Custom message for Mysql memory monitor | `string` | `""` | no | | <a name="input_memory_usage_message"></a> [memory\_usage\_message](#input\_memory\_usage\_message) | Custom message for Mysql memory monitor | `string` | `""` | no |
| memory\_usage\_threshold\_critical | Mysql memory usage in percent (critical threshold) | `string` | `"90"` | no | | <a name="input_memory_usage_threshold_critical"></a> [memory\_usage\_threshold\_critical](#input\_memory\_usage\_threshold\_critical) | Mysql memory usage in percent (critical threshold) | `string` | `"90"` | no |
| memory\_usage\_threshold\_warning | Mysql memory usage in percent (warning threshold) | `string` | `"80"` | no | | <a name="input_memory_usage_threshold_warning"></a> [memory\_usage\_threshold\_warning](#input\_memory\_usage\_threshold\_warning) | Mysql memory usage in percent (warning threshold) | `string` | `"80"` | no |
| memory\_usage\_time\_aggregator | Monitor aggregator for Mysql memory [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_memory_usage_time_aggregator"></a> [memory\_usage\_time\_aggregator](#input\_memory\_usage\_time\_aggregator) | Monitor aggregator for Mysql memory [available values: min, max or avg] | `string` | `"min"` | no |
| memory\_usage\_timeframe | Monitor timeframe for Mysql memory [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | | <a name="input_memory_usage_timeframe"></a> [memory\_usage\_timeframe](#input\_memory\_usage\_timeframe) | Monitor timeframe for Mysql memory [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no |
| message | Message sent when an alert is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| mysql\_cpu\_usage\_id | id for monitor mysql\_cpu\_usage | | <a name="output_mysql_cpu_usage_id"></a> [mysql\_cpu\_usage\_id](#output\_mysql\_cpu\_usage\_id) | id for monitor mysql\_cpu\_usage |
| mysql\_free\_storage\_id | id for monitor mysql\_free\_storage | | <a name="output_mysql_free_storage_id"></a> [mysql\_free\_storage\_id](#output\_mysql\_free\_storage\_id) | id for monitor mysql\_free\_storage |
| mysql\_io\_consumption\_id | id for monitor mysql\_io\_consumption | | <a name="output_mysql_io_consumption_id"></a> [mysql\_io\_consumption\_id](#output\_mysql\_io\_consumption\_id) | id for monitor mysql\_io\_consumption |
| mysql\_memory\_usage\_id | id for monitor mysql\_memory\_usage | | <a name="output_mysql_memory_usage_id"></a> [mysql\_memory\_usage\_id](#output\_mysql\_memory\_usage\_id) | id for monitor mysql\_memory\_usage |
## Related documentation ## Related documentation
DataDog documentation: [https://docs.datadoghq.com/integrations/azure/](https://docs.datadoghq.com/integrations/azure/) DataDog documentation: [https://docs.datadoghq.com/integrations/azure/](https://docs.datadoghq.com/integrations/azure/)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -27,65 +27,87 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.postgresql_cpu_usage](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.postgresql_free_storage](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.postgresql_io_consumption](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.postgresql_memory_usage](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.postgresql_no_connection](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| cpu\_usage\_enabled | Flag to enable PostgreSQL status monitor | `string` | `"true"` | no | | <a name="input_cpu_usage_enabled"></a> [cpu\_usage\_enabled](#input\_cpu\_usage\_enabled) | Flag to enable PostgreSQL status monitor | `string` | `"true"` | no |
| cpu\_usage\_extra\_tags | Extra tags for PostgreSQL status monitor | `list(string)` | `[]` | no | | <a name="input_cpu_usage_extra_tags"></a> [cpu\_usage\_extra\_tags](#input\_cpu\_usage\_extra\_tags) | Extra tags for PostgreSQL status monitor | `list(string)` | `[]` | no |
| cpu\_usage\_message | Custom message for PostgreSQL CPU monitor | `string` | `""` | no | | <a name="input_cpu_usage_message"></a> [cpu\_usage\_message](#input\_cpu\_usage\_message) | Custom message for PostgreSQL CPU monitor | `string` | `""` | no |
| cpu\_usage\_threshold\_critical | PostgreSQL CPU usage in percent (critical threshold) | `string` | `"90"` | no | | <a name="input_cpu_usage_threshold_critical"></a> [cpu\_usage\_threshold\_critical](#input\_cpu\_usage\_threshold\_critical) | PostgreSQL CPU usage in percent (critical threshold) | `string` | `"90"` | no |
| cpu\_usage\_threshold\_warning | PostgreSQL CPU usage in percent (warning threshold) | `string` | `"80"` | no | | <a name="input_cpu_usage_threshold_warning"></a> [cpu\_usage\_threshold\_warning](#input\_cpu\_usage\_threshold\_warning) | PostgreSQL CPU usage in percent (warning threshold) | `string` | `"80"` | no |
| cpu\_usage\_time\_aggregator | Monitor aggregator for PostgreSQL CPU [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_cpu_usage_time_aggregator"></a> [cpu\_usage\_time\_aggregator](#input\_cpu\_usage\_time\_aggregator) | Monitor aggregator for PostgreSQL CPU [available values: min, max or avg] | `string` | `"min"` | no |
| cpu\_usage\_timeframe | Monitor timeframe for PostgreSQL CPU [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | | <a name="input_cpu_usage_timeframe"></a> [cpu\_usage\_timeframe](#input\_cpu\_usage\_timeframe) | Monitor timeframe for PostgreSQL CPU [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no |
| environment | Architecture environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_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 | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| free\_storage\_enabled | Flag to enable PostgreSQL status monitor | `string` | `"true"` | no | | <a name="input_free_storage_enabled"></a> [free\_storage\_enabled](#input\_free\_storage\_enabled) | Flag to enable PostgreSQL status monitor | `string` | `"true"` | no |
| free\_storage\_extra\_tags | Extra tags for PostgreSQL status monitor | `list(string)` | `[]` | no | | <a name="input_free_storage_extra_tags"></a> [free\_storage\_extra\_tags](#input\_free\_storage\_extra\_tags) | Extra tags for PostgreSQL status monitor | `list(string)` | `[]` | no |
| free\_storage\_message | Custom message for PostgreSQL Free Storage monitor | `string` | `""` | no | | <a name="input_free_storage_message"></a> [free\_storage\_message](#input\_free\_storage\_message) | Custom message for PostgreSQL Free Storage monitor | `string` | `""` | no |
| free\_storage\_threshold\_critical | PostgreSQL Free Storage remaining in percent (critical threshold) | `string` | `"10"` | no | | <a name="input_free_storage_threshold_critical"></a> [free\_storage\_threshold\_critical](#input\_free\_storage\_threshold\_critical) | PostgreSQL Free Storage remaining in percent (critical threshold) | `string` | `"10"` | no |
| free\_storage\_threshold\_warning | PostgreSQL Free Storage remaining in percent (warning threshold) | `string` | `"20"` | no | | <a name="input_free_storage_threshold_warning"></a> [free\_storage\_threshold\_warning](#input\_free\_storage\_threshold\_warning) | PostgreSQL Free Storage remaining in percent (warning threshold) | `string` | `"20"` | no |
| free\_storage\_time\_aggregator | Monitor aggregator for PostgreSQL Free Storage [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_free_storage_time_aggregator"></a> [free\_storage\_time\_aggregator](#input\_free\_storage\_time\_aggregator) | Monitor aggregator for PostgreSQL Free Storage [available values: min, max or avg] | `string` | `"min"` | no |
| free\_storage\_timeframe | Monitor timeframe for PostgreSQL Free Storage [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | | <a name="input_free_storage_timeframe"></a> [free\_storage\_timeframe](#input\_free\_storage\_timeframe) | Monitor timeframe for PostgreSQL Free Storage [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no |
| io\_consumption\_enabled | Flag to enable PostgreSQL status monitor | `string` | `"true"` | no | | <a name="input_io_consumption_enabled"></a> [io\_consumption\_enabled](#input\_io\_consumption\_enabled) | Flag to enable PostgreSQL status monitor | `string` | `"true"` | no |
| io\_consumption\_extra\_tags | Extra tags for PostgreSQL status monitor | `list(string)` | `[]` | no | | <a name="input_io_consumption_extra_tags"></a> [io\_consumption\_extra\_tags](#input\_io\_consumption\_extra\_tags) | Extra tags for PostgreSQL status monitor | `list(string)` | `[]` | no |
| io\_consumption\_message | Custom message for PostgreSQL IO consumption monitor | `string` | `""` | no | | <a name="input_io_consumption_message"></a> [io\_consumption\_message](#input\_io\_consumption\_message) | Custom message for PostgreSQL IO consumption monitor | `string` | `""` | no |
| io\_consumption\_threshold\_critical | PostgreSQL IO consumption in percent (critical threshold) | `string` | `"90"` | no | | <a name="input_io_consumption_threshold_critical"></a> [io\_consumption\_threshold\_critical](#input\_io\_consumption\_threshold\_critical) | PostgreSQL IO consumption in percent (critical threshold) | `string` | `"90"` | no |
| io\_consumption\_threshold\_warning | PostgreSQL IO consumption in percent (warning threshold) | `string` | `"80"` | no | | <a name="input_io_consumption_threshold_warning"></a> [io\_consumption\_threshold\_warning](#input\_io\_consumption\_threshold\_warning) | PostgreSQL IO consumption in percent (warning threshold) | `string` | `"80"` | no |
| io\_consumption\_time\_aggregator | Monitor aggregator for PostgreSQL IO consumption [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_io_consumption_time_aggregator"></a> [io\_consumption\_time\_aggregator](#input\_io\_consumption\_time\_aggregator) | Monitor aggregator for PostgreSQL IO consumption [available values: min, max or avg] | `string` | `"min"` | no |
| io\_consumption\_timeframe | Monitor timeframe for PostgreSQL IO consumption [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | | <a name="input_io_consumption_timeframe"></a> [io\_consumption\_timeframe](#input\_io\_consumption\_timeframe) | Monitor timeframe for PostgreSQL IO consumption [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no |
| memory\_usage\_enabled | Flag to enable PostgreSQL status monitor | `string` | `"true"` | no | | <a name="input_memory_usage_enabled"></a> [memory\_usage\_enabled](#input\_memory\_usage\_enabled) | Flag to enable PostgreSQL status monitor | `string` | `"true"` | no |
| memory\_usage\_extra\_tags | Extra tags for PostgreSQL status monitor | `list(string)` | `[]` | no | | <a name="input_memory_usage_extra_tags"></a> [memory\_usage\_extra\_tags](#input\_memory\_usage\_extra\_tags) | Extra tags for PostgreSQL status monitor | `list(string)` | `[]` | no |
| memory\_usage\_message | Custom message for PostgreSQL memory monitor | `string` | `""` | no | | <a name="input_memory_usage_message"></a> [memory\_usage\_message](#input\_memory\_usage\_message) | Custom message for PostgreSQL memory monitor | `string` | `""` | no |
| memory\_usage\_threshold\_critical | PostgreSQL memory usage in percent (critical threshold) | `string` | `"90"` | no | | <a name="input_memory_usage_threshold_critical"></a> [memory\_usage\_threshold\_critical](#input\_memory\_usage\_threshold\_critical) | PostgreSQL memory usage in percent (critical threshold) | `string` | `"90"` | no |
| memory\_usage\_threshold\_warning | PostgreSQL memory usage in percent (warning threshold) | `string` | `"80"` | no | | <a name="input_memory_usage_threshold_warning"></a> [memory\_usage\_threshold\_warning](#input\_memory\_usage\_threshold\_warning) | PostgreSQL memory usage in percent (warning threshold) | `string` | `"80"` | no |
| memory\_usage\_time\_aggregator | Monitor aggregator for PostgreSQL memory [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_memory_usage_time_aggregator"></a> [memory\_usage\_time\_aggregator](#input\_memory\_usage\_time\_aggregator) | Monitor aggregator for PostgreSQL memory [available values: min, max or avg] | `string` | `"min"` | no |
| memory\_usage\_timeframe | Monitor timeframe for PostgreSQL memory [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | | <a name="input_memory_usage_timeframe"></a> [memory\_usage\_timeframe](#input\_memory\_usage\_timeframe) | Monitor timeframe for PostgreSQL memory [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no |
| message | Message sent when an alert is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| no\_connection\_enabled | Flag to enable PostgreSQL status monitor | `string` | `"true"` | no | | <a name="input_no_connection_enabled"></a> [no\_connection\_enabled](#input\_no\_connection\_enabled) | Flag to enable PostgreSQL status monitor | `string` | `"true"` | no |
| no\_connection\_extra\_tags | Extra tags for PostgreSQL status monitor | `list(string)` | `[]` | no | | <a name="input_no_connection_extra_tags"></a> [no\_connection\_extra\_tags](#input\_no\_connection\_extra\_tags) | Extra tags for PostgreSQL status monitor | `list(string)` | `[]` | no |
| no\_connection\_message | Custom message for PostgreSQL no connection monitor | `string` | `""` | no | | <a name="input_no_connection_message"></a> [no\_connection\_message](#input\_no\_connection\_message) | Custom message for PostgreSQL no connection monitor | `string` | `""` | no |
| no\_connection\_time\_aggregator | Monitor aggregator for PostgreSQL no connection [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_no_connection_time_aggregator"></a> [no\_connection\_time\_aggregator](#input\_no\_connection\_time\_aggregator) | Monitor aggregator for PostgreSQL no connection [available values: min, max or avg] | `string` | `"min"` | no |
| no\_connection\_timeframe | Monitor timeframe for PostgreSQL no connection [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_no_connection_timeframe"></a> [no\_connection\_timeframe](#input\_no\_connection\_timeframe) | Monitor timeframe for PostgreSQL no connection [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| postgresql\_no\_connection\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | | <a name="input_postgresql_no_connection_no_data_timeframe"></a> [postgresql\_no\_connection\_no\_data\_timeframe](#input\_postgresql\_no\_connection\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| postgresql\_cpu\_usage\_id | id for monitor postgresql\_cpu\_usage | | <a name="output_postgresql_cpu_usage_id"></a> [postgresql\_cpu\_usage\_id](#output\_postgresql\_cpu\_usage\_id) | id for monitor postgresql\_cpu\_usage |
| postgresql\_free\_storage\_id | id for monitor postgresql\_free\_storage | | <a name="output_postgresql_free_storage_id"></a> [postgresql\_free\_storage\_id](#output\_postgresql\_free\_storage\_id) | id for monitor postgresql\_free\_storage |
| postgresql\_io\_consumption\_id | id for monitor postgresql\_io\_consumption | | <a name="output_postgresql_io_consumption_id"></a> [postgresql\_io\_consumption\_id](#output\_postgresql\_io\_consumption\_id) | id for monitor postgresql\_io\_consumption |
| postgresql\_memory\_usage\_id | id for monitor postgresql\_memory\_usage | | <a name="output_postgresql_memory_usage_id"></a> [postgresql\_memory\_usage\_id](#output\_postgresql\_memory\_usage\_id) | id for monitor postgresql\_memory\_usage |
| postgresql\_no\_connection\_id | id for monitor postgresql\_no\_connection | | <a name="output_postgresql_no_connection_id"></a> [postgresql\_no\_connection\_id](#output\_postgresql\_no\_connection\_id) | id for monitor postgresql\_no\_connection |
## Related documentation ## Related documentation
DataDog documentation: [https://docs.datadoghq.com/integrations/azure/](https://docs.datadoghq.com/integrations/azure/) DataDog documentation: [https://docs.datadoghq.com/integrations/azure/](https://docs.datadoghq.com/integrations/azure/)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -26,58 +26,79 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.evictedkeys](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.percent_processor_time](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.server_load](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.status](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| environment | Architecture environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| evictedkeys\_limit\_enabled | Flag to enable Redis evicted keys monitor | `string` | `"true"` | no | | <a name="input_evictedkeys_limit_enabled"></a> [evictedkeys\_limit\_enabled](#input\_evictedkeys\_limit\_enabled) | Flag to enable Redis evicted keys monitor | `string` | `"true"` | no |
| evictedkeys\_limit\_extra\_tags | Extra tags for Redis evicted keys monitor | `list(string)` | `[]` | no | | <a name="input_evictedkeys_limit_extra_tags"></a> [evictedkeys\_limit\_extra\_tags](#input\_evictedkeys\_limit\_extra\_tags) | Extra tags for Redis evicted keys monitor | `list(string)` | `[]` | no |
| evictedkeys\_limit\_message | Custom message for Redis evicted keys monitor | `string` | `""` | no | | <a name="input_evictedkeys_limit_message"></a> [evictedkeys\_limit\_message](#input\_evictedkeys\_limit\_message) | Custom message for Redis evicted keys monitor | `string` | `""` | no |
| evictedkeys\_limit\_threshold\_critical | Evicted keys limit (critical threshold) | `number` | `100` | no | | <a name="input_evictedkeys_limit_threshold_critical"></a> [evictedkeys\_limit\_threshold\_critical](#input\_evictedkeys\_limit\_threshold\_critical) | Evicted keys limit (critical threshold) | `number` | `100` | no |
| evictedkeys\_limit\_threshold\_warning | Evicted keys limit (warning threshold) | `number` | `0` | no | | <a name="input_evictedkeys_limit_threshold_warning"></a> [evictedkeys\_limit\_threshold\_warning](#input\_evictedkeys\_limit\_threshold\_warning) | Evicted keys limit (warning threshold) | `number` | `0` | no |
| evictedkeys\_limit\_time\_aggregator | Monitor aggregator for Redis evicted keys [available values: min, max or avg] | `string` | `"avg"` | no | | <a name="input_evictedkeys_limit_time_aggregator"></a> [evictedkeys\_limit\_time\_aggregator](#input\_evictedkeys\_limit\_time\_aggregator) | Monitor aggregator for Redis evicted keys [available values: min, max or avg] | `string` | `"avg"` | no |
| evictedkeys\_limit\_timeframe | Monitor timeframe for Redis evicted keys [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_evictedkeys_limit_timeframe"></a> [evictedkeys\_limit\_timeframe](#input\_evictedkeys\_limit\_timeframe) | Monitor timeframe for Redis evicted keys [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| message | Message sent when a Redis monitor is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when a Redis monitor is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| percent\_processor\_time\_enabled | Flag to enable Redis processor monitor | `string` | `"true"` | no | | <a name="input_percent_processor_time_enabled"></a> [percent\_processor\_time\_enabled](#input\_percent\_processor\_time\_enabled) | Flag to enable Redis processor monitor | `string` | `"true"` | no |
| percent\_processor\_time\_extra\_tags | Extra tags for Redis processor monitor | `list(string)` | `[]` | no | | <a name="input_percent_processor_time_extra_tags"></a> [percent\_processor\_time\_extra\_tags](#input\_percent\_processor\_time\_extra\_tags) | Extra tags for Redis processor monitor | `list(string)` | `[]` | no |
| percent\_processor\_time\_message | Custom message for Redis processor monitor | `string` | `""` | no | | <a name="input_percent_processor_time_message"></a> [percent\_processor\_time\_message](#input\_percent\_processor\_time\_message) | Custom message for Redis processor monitor | `string` | `""` | no |
| percent\_processor\_time\_threshold\_critical | Processor time percent (critical threshold) | `number` | `80` | no | | <a name="input_percent_processor_time_threshold_critical"></a> [percent\_processor\_time\_threshold\_critical](#input\_percent\_processor\_time\_threshold\_critical) | Processor time percent (critical threshold) | `number` | `80` | no |
| percent\_processor\_time\_threshold\_warning | Processor time percent (warning threshold) | `number` | `60` | no | | <a name="input_percent_processor_time_threshold_warning"></a> [percent\_processor\_time\_threshold\_warning](#input\_percent\_processor\_time\_threshold\_warning) | Processor time percent (warning threshold) | `number` | `60` | no |
| percent\_processor\_time\_time\_aggregator | Monitor aggregator for Redis processor [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_percent_processor_time_time_aggregator"></a> [percent\_processor\_time\_time\_aggregator](#input\_percent\_processor\_time\_time\_aggregator) | Monitor aggregator for Redis processor [available values: min, max or avg] | `string` | `"min"` | no |
| percent\_processor\_time\_timeframe | Monitor timeframe for Redis processor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_percent_processor_time_timeframe"></a> [percent\_processor\_time\_timeframe](#input\_percent\_processor\_time\_timeframe) | Monitor timeframe for Redis processor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
| server\_load\_rate\_enabled | Flag to enable Redis server load monitor | `string` | `"true"` | no | | <a name="input_server_load_rate_enabled"></a> [server\_load\_rate\_enabled](#input\_server\_load\_rate\_enabled) | Flag to enable Redis server load monitor | `string` | `"true"` | no |
| server\_load\_rate\_extra\_tags | Extra tags for Redis server load monitor | `list(string)` | `[]` | no | | <a name="input_server_load_rate_extra_tags"></a> [server\_load\_rate\_extra\_tags](#input\_server\_load\_rate\_extra\_tags) | Extra tags for Redis server load monitor | `list(string)` | `[]` | no |
| server\_load\_rate\_message | Custom message for Redis server load monitor | `string` | `""` | no | | <a name="input_server_load_rate_message"></a> [server\_load\_rate\_message](#input\_server\_load\_rate\_message) | Custom message for Redis server load monitor | `string` | `""` | no |
| server\_load\_rate\_threshold\_critical | Server CPU load rate (critical threshold) | `number` | `90` | no | | <a name="input_server_load_rate_threshold_critical"></a> [server\_load\_rate\_threshold\_critical](#input\_server\_load\_rate\_threshold\_critical) | Server CPU load rate (critical threshold) | `number` | `90` | no |
| server\_load\_rate\_threshold\_warning | Server CPU load rate (warning threshold) | `number` | `70` | no | | <a name="input_server_load_rate_threshold_warning"></a> [server\_load\_rate\_threshold\_warning](#input\_server\_load\_rate\_threshold\_warning) | Server CPU load rate (warning threshold) | `number` | `70` | no |
| server\_load\_rate\_time\_aggregator | Monitor aggregator for Redis server load [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_server_load_rate_time_aggregator"></a> [server\_load\_rate\_time\_aggregator](#input\_server\_load\_rate\_time\_aggregator) | Monitor aggregator for Redis server load [available values: min, max or avg] | `string` | `"min"` | no |
| server\_load\_rate\_timeframe | Monitor timeframe for Redis server load [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_server_load_rate_timeframe"></a> [server\_load\_rate\_timeframe](#input\_server\_load\_rate\_timeframe) | Monitor timeframe for Redis server load [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| status\_enabled | Flag to enable Redis status monitor | `string` | `"true"` | no | | <a name="input_status_enabled"></a> [status\_enabled](#input\_status\_enabled) | Flag to enable Redis status monitor | `string` | `"true"` | no |
| status\_extra\_tags | Extra tags for Redis status monitor | `list(string)` | `[]` | no | | <a name="input_status_extra_tags"></a> [status\_extra\_tags](#input\_status\_extra\_tags) | Extra tags for Redis status monitor | `list(string)` | `[]` | no |
| status\_message | Custom message for Redis status monitor | `string` | `""` | no | | <a name="input_status_message"></a> [status\_message](#input\_status\_message) | Custom message for Redis status monitor | `string` | `""` | no |
| status\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | | <a name="input_status_no_data_timeframe"></a> [status\_no\_data\_timeframe](#input\_status\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no |
| status\_time\_aggregator | Monitor aggregator for Redis status [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_status_time_aggregator"></a> [status\_time\_aggregator](#input\_status\_time\_aggregator) | Monitor aggregator for Redis status [available values: min, max or avg] | `string` | `"max"` | no |
| status\_timeframe | Monitor timeframe for Redis status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_status_timeframe"></a> [status\_timeframe](#input\_status\_timeframe) | Monitor timeframe for Redis status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| evictedkeys\_id | id for monitor evictedkeys | | <a name="output_evictedkeys_id"></a> [evictedkeys\_id](#output\_evictedkeys\_id) | id for monitor evictedkeys |
| percent\_processor\_time\_id | id for monitor percent\_processor\_time | | <a name="output_percent_processor_time_id"></a> [percent\_processor\_time\_id](#output\_percent\_processor\_time\_id) | id for monitor percent\_processor\_time |
| server\_load\_id | id for monitor server\_load | | <a name="output_server_load_id"></a> [server\_load\_id](#output\_server\_load\_id) | id for monitor server\_load |
| status\_id | id for monitor status | | <a name="output_status_id"></a> [status\_id](#output\_status\_id) | id for monitor status |
## Related documentation ## Related documentation
DataDog documentation: [https://docs.datadoghq.com/integrations/azure_redis_cache/](https://docs.datadoghq.com/integrations/azure_redis_cache/) DataDog documentation: [https://docs.datadoghq.com/integrations/azure_redis_cache/](https://docs.datadoghq.com/integrations/azure_redis_cache/)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -25,48 +25,68 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.cpu_percentage](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.memory_percentage](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.status](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| cpu\_percentage\_enabled | Flag to enable the serverfarms cpu\_percentage monitor | `string` | `"true"` | no | | <a name="input_cpu_percentage_enabled"></a> [cpu\_percentage\_enabled](#input\_cpu\_percentage\_enabled) | Flag to enable the serverfarms cpu\_percentage monitor | `string` | `"true"` | no |
| cpu\_percentage\_extra\_tags | Extra tags for serverfarms cpu\_percentage monitor | `list(string)` | `[]` | no | | <a name="input_cpu_percentage_extra_tags"></a> [cpu\_percentage\_extra\_tags](#input\_cpu\_percentage\_extra\_tags) | Extra tags for serverfarms cpu\_percentage monitor | `list(string)` | `[]` | no |
| cpu\_percentage\_message | Custom message for serverfarm cpu\_percentage monitor | `string` | `""` | no | | <a name="input_cpu_percentage_message"></a> [cpu\_percentage\_message](#input\_cpu\_percentage\_message) | Custom message for serverfarm cpu\_percentage monitor | `string` | `""` | no |
| cpu\_percentage\_threshold\_critical | CPU percentage (critical threshold) | `number` | `95` | no | | <a name="input_cpu_percentage_threshold_critical"></a> [cpu\_percentage\_threshold\_critical](#input\_cpu\_percentage\_threshold\_critical) | CPU percentage (critical threshold) | `number` | `95` | no |
| cpu\_percentage\_threshold\_warning | CPU percentage (warning threshold) | `number` | `90` | no | | <a name="input_cpu_percentage_threshold_warning"></a> [cpu\_percentage\_threshold\_warning](#input\_cpu\_percentage\_threshold\_warning) | CPU percentage (warning threshold) | `number` | `90` | no |
| cpu\_percentage\_time\_aggregator | Monitor aggregator for serverfarms cpu\_percentage [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_cpu_percentage_time_aggregator"></a> [cpu\_percentage\_time\_aggregator](#input\_cpu\_percentage\_time\_aggregator) | Monitor aggregator for serverfarms cpu\_percentage [available values: min, max or avg] | `string` | `"min"` | no |
| cpu\_percentage\_timeframe | Monitor timeframe for serverfarms cpu\_percentage [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_10m"` | no | | <a name="input_cpu_percentage_timeframe"></a> [cpu\_percentage\_timeframe](#input\_cpu\_percentage\_timeframe) | Monitor timeframe for serverfarms cpu\_percentage [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_10m"` | no |
| environment | Architecture environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_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 | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| memory\_percentage\_enabled | Flag to enable the serverfarms memory\_percentage monitor | `string` | `"true"` | no | | <a name="input_memory_percentage_enabled"></a> [memory\_percentage\_enabled](#input\_memory\_percentage\_enabled) | Flag to enable the serverfarms memory\_percentage monitor | `string` | `"true"` | no |
| memory\_percentage\_extra\_tags | Extra tags for serverfarms memory\_percentage monitor | `list(string)` | `[]` | no | | <a name="input_memory_percentage_extra_tags"></a> [memory\_percentage\_extra\_tags](#input\_memory\_percentage\_extra\_tags) | Extra tags for serverfarms memory\_percentage monitor | `list(string)` | `[]` | no |
| memory\_percentage\_message | Custom message for serverfarm memory\_percentage monitor | `string` | `""` | no | | <a name="input_memory_percentage_message"></a> [memory\_percentage\_message](#input\_memory\_percentage\_message) | Custom message for serverfarm memory\_percentage monitor | `string` | `""` | no |
| memory\_percentage\_threshold\_critical | Memory percentage (critical threshold) | `number` | `95` | no | | <a name="input_memory_percentage_threshold_critical"></a> [memory\_percentage\_threshold\_critical](#input\_memory\_percentage\_threshold\_critical) | Memory percentage (critical threshold) | `number` | `95` | no |
| memory\_percentage\_threshold\_warning | Memory percentage (warning threshold) | `number` | `90` | no | | <a name="input_memory_percentage_threshold_warning"></a> [memory\_percentage\_threshold\_warning](#input\_memory\_percentage\_threshold\_warning) | Memory percentage (warning threshold) | `number` | `90` | no |
| memory\_percentage\_time\_aggregator | Monitor aggregator for serverfarms memory\_percentage [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_memory_percentage_time_aggregator"></a> [memory\_percentage\_time\_aggregator](#input\_memory\_percentage\_time\_aggregator) | Monitor aggregator for serverfarms memory\_percentage [available values: min, max or avg] | `string` | `"min"` | no |
| memory\_percentage\_timeframe | Monitor timeframe for serverfarms memory\_percentage [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_memory_percentage_timeframe"></a> [memory\_percentage\_timeframe](#input\_memory\_percentage\_timeframe) | Monitor timeframe for serverfarms memory\_percentage [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| message | Message sent when a serverfarms monitor is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when a serverfarms monitor is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
| status\_enabled | Flag to enable the serverfarms status monitor | `string` | `"true"` | no | | <a name="input_status_enabled"></a> [status\_enabled](#input\_status\_enabled) | Flag to enable the serverfarms status monitor | `string` | `"true"` | no |
| status\_extra\_tags | Extra tags for serverfarms status monitor | `list(string)` | `[]` | no | | <a name="input_status_extra_tags"></a> [status\_extra\_tags](#input\_status\_extra\_tags) | Extra tags for serverfarms status monitor | `list(string)` | `[]` | no |
| status\_message | Custom message for serverfarm status monitor | `string` | `""` | no | | <a name="input_status_message"></a> [status\_message](#input\_status\_message) | Custom message for serverfarm status monitor | `string` | `""` | no |
| status\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | | <a name="input_status_no_data_timeframe"></a> [status\_no\_data\_timeframe](#input\_status\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no |
| status\_time\_aggregator | Monitor aggregator for serverfarms status [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_status_time_aggregator"></a> [status\_time\_aggregator](#input\_status\_time\_aggregator) | Monitor aggregator for serverfarms status [available values: min, max or avg] | `string` | `"max"` | no |
| status\_timeframe | Monitor timeframe for serverfarms status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_status_timeframe"></a> [status\_timeframe](#input\_status\_timeframe) | Monitor timeframe for serverfarms status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| cpu\_percentage\_id | id for monitor cpu\_percentage | | <a name="output_cpu_percentage_id"></a> [cpu\_percentage\_id](#output\_cpu\_percentage\_id) | id for monitor cpu\_percentage |
| memory\_percentage\_id | id for monitor memory\_percentage | | <a name="output_memory_percentage_id"></a> [memory\_percentage\_id](#output\_memory\_percentage\_id) | id for monitor memory\_percentage |
| status\_id | id for monitor status | | <a name="output_status_id"></a> [status\_id](#output\_status\_id) | id for monitor status |
## Related documentation ## Related documentation

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -26,56 +26,77 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.service_bus_no_active_connections](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.service_bus_server_errors](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.service_bus_user_errors](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.servicebus_status](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| environment | Architecture Environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture Environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| message | Message sent when an alert is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| no\_active\_connections\_enabled | Flag to enable Service Bus no active connections monitor | `string` | `"true"` | no | | <a name="input_no_active_connections_enabled"></a> [no\_active\_connections\_enabled](#input\_no\_active\_connections\_enabled) | Flag to enable Service Bus no active connections monitor | `string` | `"true"` | no |
| no\_active\_connections\_extra\_tags | Extra tags for Service Bus no active connections monitor | `list(string)` | `[]` | no | | <a name="input_no_active_connections_extra_tags"></a> [no\_active\_connections\_extra\_tags](#input\_no\_active\_connections\_extra\_tags) | Extra tags for Service Bus no active connections monitor | `list(string)` | `[]` | no |
| no\_active\_connections\_message | Custom message for Service Bus no active connections monitor | `string` | `""` | no | | <a name="input_no_active_connections_message"></a> [no\_active\_connections\_message](#input\_no\_active\_connections\_message) | Custom message for Service Bus no active connections monitor | `string` | `""` | no |
| no\_active\_connections\_time\_aggregator | Monitor aggregator for Service Bus no active connections [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_no_active_connections_time_aggregator"></a> [no\_active\_connections\_time\_aggregator](#input\_no\_active\_connections\_time\_aggregator) | Monitor aggregator for Service Bus no active connections [available values: min, max or avg] | `string` | `"max"` | no |
| no\_active\_connections\_timeframe | Monitor timeframe for Service Bus no active connections [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_no_active_connections_timeframe"></a> [no\_active\_connections\_timeframe](#input\_no\_active\_connections\_timeframe) | Monitor timeframe for Service Bus no active connections [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
| server\_errors\_enabled | Flag to enable Service Bus server errors monitor | `string` | `"true"` | no | | <a name="input_server_errors_enabled"></a> [server\_errors\_enabled](#input\_server\_errors\_enabled) | Flag to enable Service Bus server errors monitor | `string` | `"true"` | no |
| server\_errors\_extra\_tags | Extra tags for Service Bus server errors monitor | `list(string)` | `[]` | no | | <a name="input_server_errors_extra_tags"></a> [server\_errors\_extra\_tags](#input\_server\_errors\_extra\_tags) | Extra tags for Service Bus server errors monitor | `list(string)` | `[]` | no |
| server\_errors\_message | Custom message for Service Bus server errors monitor | `string` | `""` | no | | <a name="input_server_errors_message"></a> [server\_errors\_message](#input\_server\_errors\_message) | Custom message for Service Bus server errors monitor | `string` | `""` | no |
| server\_errors\_threshold\_critical | Critical threshold for Service Bus server errors monitor | `number` | `90` | no | | <a name="input_server_errors_threshold_critical"></a> [server\_errors\_threshold\_critical](#input\_server\_errors\_threshold\_critical) | Critical threshold for Service Bus server errors monitor | `number` | `90` | no |
| server\_errors\_threshold\_warning | Warning threshold for Service Bus server errors monitor | `number` | `50` | no | | <a name="input_server_errors_threshold_warning"></a> [server\_errors\_threshold\_warning](#input\_server\_errors\_threshold\_warning) | Warning threshold for Service Bus server errors monitor | `number` | `50` | no |
| server\_errors\_time\_aggregator | Monitor aggregator for Service Bus server errors [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_server_errors_time_aggregator"></a> [server\_errors\_time\_aggregator](#input\_server\_errors\_time\_aggregator) | Monitor aggregator for Service Bus server errors [available values: min, max or avg] | `string` | `"min"` | no |
| server\_errors\_timeframe | Monitor timeframe for Service Bus server errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_server_errors_timeframe"></a> [server\_errors\_timeframe](#input\_server\_errors\_timeframe) | Monitor timeframe for Service Bus server errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| servicebus\_status\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | | <a name="input_servicebus_status_no_data_timeframe"></a> [servicebus\_status\_no\_data\_timeframe](#input\_servicebus\_status\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no |
| status\_enabled | Flag to enable Service Bus status monitor | `string` | `"true"` | no | | <a name="input_status_enabled"></a> [status\_enabled](#input\_status\_enabled) | Flag to enable Service Bus status monitor | `string` | `"true"` | no |
| status\_extra\_tags | Extra tags for Service Bus status monitor | `list(string)` | `[]` | no | | <a name="input_status_extra_tags"></a> [status\_extra\_tags](#input\_status\_extra\_tags) | Extra tags for Service Bus status monitor | `list(string)` | `[]` | no |
| status\_message | Custom message for Service Bus status monitor | `string` | `""` | no | | <a name="input_status_message"></a> [status\_message](#input\_status\_message) | Custom message for Service Bus status monitor | `string` | `""` | no |
| status\_time\_aggregator | Monitor aggregator for Service Bus status [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_status_time_aggregator"></a> [status\_time\_aggregator](#input\_status\_time\_aggregator) | Monitor aggregator for Service Bus status [available values: min, max or avg] | `string` | `"max"` | no |
| status\_timeframe | Monitor timeframe for Service Bus status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_status_timeframe"></a> [status\_timeframe](#input\_status\_timeframe) | Monitor timeframe for Service Bus status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| user\_errors\_enabled | Flag to enable Service Bus user errors monitor | `string` | `"true"` | no | | <a name="input_user_errors_enabled"></a> [user\_errors\_enabled](#input\_user\_errors\_enabled) | Flag to enable Service Bus user errors monitor | `string` | `"true"` | no |
| user\_errors\_extra\_tags | Extra tags for Service Bus user errors monitor | `list(string)` | `[]` | no | | <a name="input_user_errors_extra_tags"></a> [user\_errors\_extra\_tags](#input\_user\_errors\_extra\_tags) | Extra tags for Service Bus user errors monitor | `list(string)` | `[]` | no |
| user\_errors\_message | Custom message for Service Bus user errors monitor | `string` | `""` | no | | <a name="input_user_errors_message"></a> [user\_errors\_message](#input\_user\_errors\_message) | Custom message for Service Bus user errors monitor | `string` | `""` | no |
| user\_errors\_threshold\_critical | Critical threshold for Service Bus user errors monitor | `number` | `90` | no | | <a name="input_user_errors_threshold_critical"></a> [user\_errors\_threshold\_critical](#input\_user\_errors\_threshold\_critical) | Critical threshold for Service Bus user errors monitor | `number` | `90` | no |
| user\_errors\_threshold\_warning | Warning threshold for Service Bus user errors monitor | `number` | `50` | no | | <a name="input_user_errors_threshold_warning"></a> [user\_errors\_threshold\_warning](#input\_user\_errors\_threshold\_warning) | Warning threshold for Service Bus user errors monitor | `number` | `50` | no |
| user\_errors\_time\_aggregator | Monitor aggregator for Service Bus user errors [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_user_errors_time_aggregator"></a> [user\_errors\_time\_aggregator](#input\_user\_errors\_time\_aggregator) | Monitor aggregator for Service Bus user errors [available values: min, max or avg] | `string` | `"min"` | no |
| user\_errors\_timeframe | Monitor timeframe for Service Bus user errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_user_errors_timeframe"></a> [user\_errors\_timeframe](#input\_user\_errors\_timeframe) | Monitor timeframe for Service Bus user errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| service\_bus\_no\_active\_connections\_id | id for monitor service\_bus\_no\_active\_connections | | <a name="output_service_bus_no_active_connections_id"></a> [service\_bus\_no\_active\_connections\_id](#output\_service\_bus\_no\_active\_connections\_id) | id for monitor service\_bus\_no\_active\_connections |
| service\_bus\_server\_errors\_id | id for monitor service\_bus\_server\_errors | | <a name="output_service_bus_server_errors_id"></a> [service\_bus\_server\_errors\_id](#output\_service\_bus\_server\_errors\_id) | id for monitor service\_bus\_server\_errors |
| service\_bus\_user\_errors\_id | id for monitor service\_bus\_user\_errors | | <a name="output_service_bus_user_errors_id"></a> [service\_bus\_user\_errors\_id](#output\_service\_bus\_user\_errors\_id) | id for monitor service\_bus\_user\_errors |
| servicebus\_status\_id | id for monitor servicebus\_status | | <a name="output_servicebus_status_id"></a> [servicebus\_status\_id](#output\_servicebus\_status\_id) | id for monitor servicebus\_status |
## Related documentation ## Related documentation
DataDog documentation : [https://docs.datadoghq.com/integrations/azure/](https://docs.datadoghq.com/integrations/azure/) DataDog documentation : [https://docs.datadoghq.com/integrations/azure/](https://docs.datadoghq.com/integrations/azure/)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -27,64 +27,86 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.sql-database_cpu](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.sql-database_deadlocks_count](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.sql-database_dtu_consumption_high](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.sql-database_free_space_low](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.status](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| cpu\_enabled | Flag to enable SQL CPU monitor | `string` | `"true"` | no | | <a name="input_cpu_enabled"></a> [cpu\_enabled](#input\_cpu\_enabled) | Flag to enable SQL CPU monitor | `string` | `"true"` | no |
| cpu\_extra\_tags | Extra tags for SQL CPU monitor | `list(string)` | `[]` | no | | <a name="input_cpu_extra_tags"></a> [cpu\_extra\_tags](#input\_cpu\_extra\_tags) | Extra tags for SQL CPU monitor | `list(string)` | `[]` | no |
| cpu\_message | Custom message for SQL CPU monitor | `string` | `""` | no | | <a name="input_cpu_message"></a> [cpu\_message](#input\_cpu\_message) | Custom message for SQL CPU monitor | `string` | `""` | no |
| cpu\_threshold\_critical | CPU usage in percent (critical threshold) | `string` | `"90"` | no | | <a name="input_cpu_threshold_critical"></a> [cpu\_threshold\_critical](#input\_cpu\_threshold\_critical) | CPU usage in percent (critical threshold) | `string` | `"90"` | no |
| cpu\_threshold\_warning | CPU usage in percent (warning threshold) | `string` | `"80"` | no | | <a name="input_cpu_threshold_warning"></a> [cpu\_threshold\_warning](#input\_cpu\_threshold\_warning) | CPU usage in percent (warning threshold) | `string` | `"80"` | no |
| cpu\_time\_aggregator | Monitor aggregator for SQL CPU [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_cpu_time_aggregator"></a> [cpu\_time\_aggregator](#input\_cpu\_time\_aggregator) | Monitor aggregator for SQL CPU [available values: min, max or avg] | `string` | `"min"` | no |
| cpu\_timeframe | Monitor timeframe for SQL CPU [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | | <a name="input_cpu_timeframe"></a> [cpu\_timeframe](#input\_cpu\_timeframe) | Monitor timeframe for SQL CPU [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no |
| deadlock\_enabled | Flag to enable SQL Deadlock monitor | `string` | `"true"` | no | | <a name="input_deadlock_enabled"></a> [deadlock\_enabled](#input\_deadlock\_enabled) | Flag to enable SQL Deadlock monitor | `string` | `"true"` | no |
| deadlock\_extra\_tags | Extra tags for SQL Deadlock monitor | `list(string)` | `[]` | no | | <a name="input_deadlock_extra_tags"></a> [deadlock\_extra\_tags](#input\_deadlock\_extra\_tags) | Extra tags for SQL Deadlock monitor | `list(string)` | `[]` | no |
| deadlock\_message | Custom message for SQL Deadlock monitor | `string` | `""` | no | | <a name="input_deadlock_message"></a> [deadlock\_message](#input\_deadlock\_message) | Custom message for SQL Deadlock monitor | `string` | `""` | no |
| deadlock\_threshold\_critical | Amount of Deadlocks (critical threshold) | `string` | `"1"` | no | | <a name="input_deadlock_threshold_critical"></a> [deadlock\_threshold\_critical](#input\_deadlock\_threshold\_critical) | Amount of Deadlocks (critical threshold) | `string` | `"1"` | no |
| deadlock\_timeframe | Monitor timeframe for SQL Deadlock [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_deadlock_timeframe"></a> [deadlock\_timeframe](#input\_deadlock\_timeframe) | Monitor timeframe for SQL Deadlock [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| diskspace\_enabled | Flag to enable SQL disk space monitor | `string` | `"true"` | no | | <a name="input_diskspace_enabled"></a> [diskspace\_enabled](#input\_diskspace\_enabled) | Flag to enable SQL disk space monitor | `string` | `"true"` | no |
| diskspace\_extra\_tags | Extra tags for SQL disk space monitor | `list(string)` | `[]` | no | | <a name="input_diskspace_extra_tags"></a> [diskspace\_extra\_tags](#input\_diskspace\_extra\_tags) | Extra tags for SQL disk space monitor | `list(string)` | `[]` | no |
| diskspace\_message | Custom message for SQL disk space monitor | `string` | `""` | no | | <a name="input_diskspace_message"></a> [diskspace\_message](#input\_diskspace\_message) | Custom message for SQL disk space monitor | `string` | `""` | no |
| diskspace\_threshold\_critical | Disk space used in percent (critical threshold) | `string` | `"90"` | no | | <a name="input_diskspace_threshold_critical"></a> [diskspace\_threshold\_critical](#input\_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 | | <a name="input_diskspace_threshold_warning"></a> [diskspace\_threshold\_warning](#input\_diskspace\_threshold\_warning) | Disk space used in percent (warning threshold) | `string` | `"80"` | no |
| diskspace\_time\_aggregator | Monitor aggregator for SQL disk space [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_diskspace_time_aggregator"></a> [diskspace\_time\_aggregator](#input\_diskspace\_time\_aggregator) | Monitor aggregator for SQL disk space [available values: min, max or avg] | `string` | `"max"` | no |
| diskspace\_timeframe | Monitor timeframe for SQL disk space [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | | <a name="input_diskspace_timeframe"></a> [diskspace\_timeframe](#input\_diskspace\_timeframe) | Monitor timeframe for SQL disk space [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no |
| dtu\_enabled | Flag to enable SQL DTU monitor | `string` | `"true"` | no | | <a name="input_dtu_enabled"></a> [dtu\_enabled](#input\_dtu\_enabled) | Flag to enable SQL DTU monitor | `string` | `"true"` | no |
| dtu\_extra\_tags | Extra tags for SQL DTU monitor | `list(string)` | `[]` | no | | <a name="input_dtu_extra_tags"></a> [dtu\_extra\_tags](#input\_dtu\_extra\_tags) | Extra tags for SQL DTU monitor | `list(string)` | `[]` | no |
| dtu\_message | Custom message for SQL DTU monitor | `string` | `""` | no | | <a name="input_dtu_message"></a> [dtu\_message](#input\_dtu\_message) | Custom message for SQL DTU monitor | `string` | `""` | no |
| dtu\_threshold\_critical | Amount of DTU used (critical threshold) | `string` | `"90"` | no | | <a name="input_dtu_threshold_critical"></a> [dtu\_threshold\_critical](#input\_dtu\_threshold\_critical) | Amount of DTU used (critical threshold) | `string` | `"90"` | no |
| dtu\_threshold\_warning | Amount of DTU used (warning threshold) | `string` | `"85"` | no | | <a name="input_dtu_threshold_warning"></a> [dtu\_threshold\_warning](#input\_dtu\_threshold\_warning) | Amount of DTU used (warning threshold) | `string` | `"85"` | no |
| dtu\_time\_aggregator | Monitor aggregator for SQL DTU [available values: min, max or avg] | `string` | `"avg"` | no | | <a name="input_dtu_time_aggregator"></a> [dtu\_time\_aggregator](#input\_dtu\_time\_aggregator) | Monitor aggregator for SQL DTU [available values: min, max or avg] | `string` | `"avg"` | no |
| dtu\_timeframe | Monitor timeframe for SQL DTU [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | | <a name="input_dtu_timeframe"></a> [dtu\_timeframe](#input\_dtu\_timeframe) | Monitor timeframe for SQL DTU [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no |
| environment | Architecture Environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture Environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| message | Message sent when an alert is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
| status\_enabled | Flag to enable Redis status monitor | `string` | `"true"` | no | | <a name="input_status_enabled"></a> [status\_enabled](#input\_status\_enabled) | Flag to enable Redis status monitor | `string` | `"true"` | no |
| status\_extra\_tags | Extra tags for Redis status monitor | `list(string)` | `[]` | no | | <a name="input_status_extra_tags"></a> [status\_extra\_tags](#input\_status\_extra\_tags) | Extra tags for Redis status monitor | `list(string)` | `[]` | no |
| status\_message | Custom message for Redis status monitor | `string` | `""` | no | | <a name="input_status_message"></a> [status\_message](#input\_status\_message) | Custom message for Redis status monitor | `string` | `""` | no |
| status\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | | <a name="input_status_no_data_timeframe"></a> [status\_no\_data\_timeframe](#input\_status\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no |
| status\_time\_aggregator | Monitor aggregator for Redis status [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_status_time_aggregator"></a> [status\_time\_aggregator](#input\_status\_time\_aggregator) | Monitor aggregator for Redis status [available values: min, max or avg] | `string` | `"max"` | no |
| status\_timeframe | Monitor timeframe for Redis status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_status_timeframe"></a> [status\_timeframe](#input\_status\_timeframe) | Monitor timeframe for Redis status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| sql-database\_cpu\_id | id for monitor sql-database\_cpu | | <a name="output_sql-database_cpu_id"></a> [sql-database\_cpu\_id](#output\_sql-database\_cpu\_id) | id for monitor sql-database\_cpu |
| sql-database\_deadlocks\_count\_id | id for monitor sql-database\_deadlocks\_count | | <a name="output_sql-database_deadlocks_count_id"></a> [sql-database\_deadlocks\_count\_id](#output\_sql-database\_deadlocks\_count\_id) | id for monitor sql-database\_deadlocks\_count |
| sql-database\_dtu\_consumption\_high\_id | id for monitor sql-database\_dtu\_consumption\_high | | <a name="output_sql-database_dtu_consumption_high_id"></a> [sql-database\_dtu\_consumption\_high\_id](#output\_sql-database\_dtu\_consumption\_high\_id) | id for monitor sql-database\_dtu\_consumption\_high |
| sql-database\_free\_space\_low\_id | id for monitor sql-database\_free\_space\_low | | <a name="output_sql-database_free_space_low_id"></a> [sql-database\_free\_space\_low\_id](#output\_sql-database\_free\_space\_low\_id) | id for monitor sql-database\_free\_space\_low |
| status\_id | id for monitor status | | <a name="output_status_id"></a> [status\_id](#output\_status\_id) | id for monitor status |
## Related documentation ## Related documentation
DataDog documentation: [https://docs.datadoghq.com/integrations/azure_sql_database/](https://docs.datadoghq.com/integrations/azure_sql_database/) DataDog documentation: [https://docs.datadoghq.com/integrations/azure_sql_database/](https://docs.datadoghq.com/integrations/azure_sql_database/)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -25,52 +25,72 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.sql_elasticpool_cpu](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.sql_elasticpool_dtu_consumption_high](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.sql_elasticpool_free_space_low](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| cpu\_enabled | Flag to enable SQL Elastic Pool CPU monitor | `string` | `"true"` | no | | <a name="input_cpu_enabled"></a> [cpu\_enabled](#input\_cpu\_enabled) | Flag to enable SQL Elastic Pool CPU monitor | `string` | `"true"` | no |
| cpu\_extra\_tags | Extra tags for SQL Elastic Pool CPU monitor | `list(string)` | `[]` | no | | <a name="input_cpu_extra_tags"></a> [cpu\_extra\_tags](#input\_cpu\_extra\_tags) | Extra tags for SQL Elastic Pool CPU monitor | `list(string)` | `[]` | no |
| cpu\_message | Custom message for SQL Elastic Pool CPU monitor | `string` | `""` | no | | <a name="input_cpu_message"></a> [cpu\_message](#input\_cpu\_message) | Custom message for SQL Elastic Pool CPU monitor | `string` | `""` | no |
| cpu\_threshold\_critical | CPU usage in percent (critical threshold) | `string` | `"90"` | no | | <a name="input_cpu_threshold_critical"></a> [cpu\_threshold\_critical](#input\_cpu\_threshold\_critical) | CPU usage in percent (critical threshold) | `string` | `"90"` | no |
| cpu\_threshold\_warning | CPU usage in percent (warning threshold) | `string` | `"80"` | no | | <a name="input_cpu_threshold_warning"></a> [cpu\_threshold\_warning](#input\_cpu\_threshold\_warning) | CPU usage in percent (warning threshold) | `string` | `"80"` | no |
| cpu\_time\_aggregator | Monitor aggregator for SQL Elastic Pool CPU [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_cpu_time_aggregator"></a> [cpu\_time\_aggregator](#input\_cpu\_time\_aggregator) | Monitor aggregator for SQL Elastic Pool CPU [available values: min, max or avg] | `string` | `"min"` | no |
| cpu\_timeframe | Monitor timeframe for SQL Elastic Pool CPU [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | | <a name="input_cpu_timeframe"></a> [cpu\_timeframe](#input\_cpu\_timeframe) | Monitor timeframe for SQL Elastic Pool CPU [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no |
| diskspace\_enabled | Flag to enable SQL Elastic Pool disk space monitor | `string` | `"true"` | no | | <a name="input_diskspace_enabled"></a> [diskspace\_enabled](#input\_diskspace\_enabled) | Flag to enable SQL Elastic Pool disk space monitor | `string` | `"true"` | no |
| diskspace\_extra\_tags | Extra tags for SQL Elastic Pool disk space monitor | `list(string)` | `[]` | no | | <a name="input_diskspace_extra_tags"></a> [diskspace\_extra\_tags](#input\_diskspace\_extra\_tags) | Extra tags for SQL Elastic Pool disk space monitor | `list(string)` | `[]` | no |
| diskspace\_message | Custom message for SQL Elastic Pool disk space monitor | `string` | `""` | no | | <a name="input_diskspace_message"></a> [diskspace\_message](#input\_diskspace\_message) | Custom message for SQL Elastic Pool disk space monitor | `string` | `""` | no |
| diskspace\_threshold\_critical | Disk space used in percent (critical threshold) | `string` | `"90"` | no | | <a name="input_diskspace_threshold_critical"></a> [diskspace\_threshold\_critical](#input\_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 | | <a name="input_diskspace_threshold_warning"></a> [diskspace\_threshold\_warning](#input\_diskspace\_threshold\_warning) | Disk space used in percent (warning threshold) | `string` | `"80"` | no |
| diskspace\_time\_aggregator | Monitor aggregator for SQL Elastic Pool disk space [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_diskspace_time_aggregator"></a> [diskspace\_time\_aggregator](#input\_diskspace\_time\_aggregator) | Monitor aggregator for SQL Elastic Pool disk space [available values: min, max or avg] | `string` | `"max"` | no |
| diskspace\_timeframe | Monitor timeframe for SQL Elastic Pool disk space [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | | <a name="input_diskspace_timeframe"></a> [diskspace\_timeframe](#input\_diskspace\_timeframe) | Monitor timeframe for SQL Elastic Pool disk space [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no |
| dtu\_enabled | Flag to enable SQL Elastic Pool DTU monitor | `string` | `"true"` | no | | <a name="input_dtu_enabled"></a> [dtu\_enabled](#input\_dtu\_enabled) | Flag to enable SQL Elastic Pool DTU monitor | `string` | `"true"` | no |
| dtu\_extra\_tags | Extra tags for SQL Elastic Pool DTU monitor | `list(string)` | `[]` | no | | <a name="input_dtu_extra_tags"></a> [dtu\_extra\_tags](#input\_dtu\_extra\_tags) | Extra tags for SQL Elastic Pool DTU monitor | `list(string)` | `[]` | no |
| dtu\_message | Custom message for SQL Elastic Pool DTU monitor | `string` | `""` | no | | <a name="input_dtu_message"></a> [dtu\_message](#input\_dtu\_message) | Custom message for SQL Elastic Pool DTU monitor | `string` | `""` | no |
| dtu\_threshold\_critical | Amount of DTU used (critical threshold) | `string` | `"90"` | no | | <a name="input_dtu_threshold_critical"></a> [dtu\_threshold\_critical](#input\_dtu\_threshold\_critical) | Amount of DTU used (critical threshold) | `string` | `"90"` | no |
| dtu\_threshold\_warning | Amount of DTU used (warning threshold) | `string` | `"85"` | no | | <a name="input_dtu_threshold_warning"></a> [dtu\_threshold\_warning](#input\_dtu\_threshold\_warning) | Amount of DTU used (warning threshold) | `string` | `"85"` | no |
| dtu\_time\_aggregator | Monitor aggregator for SQL Elastic Pool DTU [available values: min, max or avg] | `string` | `"avg"` | no | | <a name="input_dtu_time_aggregator"></a> [dtu\_time\_aggregator](#input\_dtu\_time\_aggregator) | Monitor aggregator for SQL Elastic Pool DTU [available values: min, max or avg] | `string` | `"avg"` | no |
| dtu\_timeframe | Monitor timeframe for SQL Elastic Pool DTU [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | | <a name="input_dtu_timeframe"></a> [dtu\_timeframe](#input\_dtu\_timeframe) | Monitor timeframe for SQL Elastic Pool DTU [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no |
| environment | Architecture Environment | `string` | n/a | yes | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture Environment | `string` | n/a | yes |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| message | Message sent when an alert is triggered | `any` | n/a | yes | | <a name="input_message"></a> [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
| sql\_elasticpool\_cpu\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `30` | no | | <a name="input_sql_elasticpool_cpu_no_data_timeframe"></a> [sql\_elasticpool\_cpu\_no\_data\_timeframe](#input\_sql\_elasticpool\_cpu\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `30` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| sql\_elasticpool\_cpu\_id | id for monitor sql\_elasticpool\_cpu | | <a name="output_sql_elasticpool_cpu_id"></a> [sql\_elasticpool\_cpu\_id](#output\_sql\_elasticpool\_cpu\_id) | id for monitor sql\_elasticpool\_cpu |
| sql\_elasticpool\_dtu\_consumption\_high\_id | id for monitor sql\_elasticpool\_dtu\_consumption\_high | | <a name="output_sql_elasticpool_dtu_consumption_high_id"></a> [sql\_elasticpool\_dtu\_consumption\_high\_id](#output\_sql\_elasticpool\_dtu\_consumption\_high\_id) | id for monitor sql\_elasticpool\_dtu\_consumption\_high |
| sql\_elasticpool\_free\_space\_low\_id | id for monitor sql\_elasticpool\_free\_space\_low | | <a name="output_sql_elasticpool_free_space_low_id"></a> [sql\_elasticpool\_free\_space\_low\_id](#output\_sql\_elasticpool\_free\_space\_low\_id) | id for monitor sql\_elasticpool\_free\_space\_low |
## Related documentation ## Related documentation
DataDog documentation: [https://docs.datadoghq.com/integrations/azure_sql_elastic_pool/](https://docs.datadoghq.com/integrations/azure_sql_elastic_pool/) DataDog documentation: [https://docs.datadoghq.com/integrations/azure_sql_elastic_pool/](https://docs.datadoghq.com/integrations/azure_sql_elastic_pool/)

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

View File

@ -55,139 +55,189 @@ Creates DataDog monitors with the following checks:
| Name | Version | | Name | Version |
|------|---------| |------|---------|
| terraform | >= 0.12.31 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 0.12.31 |
| <a name="requirement_datadog"></a> [datadog](#requirement\_datadog) | >= 3.1.0 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_datadog"></a> [datadog](#provider\_datadog) | 3.1.2 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| <a name="module_filter-tags"></a> [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a |
| <a name="module_filter-tags-authorization-error"></a> [filter-tags-authorization-error](#module\_filter-tags-authorization-error) | ../../../common/filter-tags | n/a |
| <a name="module_filter-tags-blob"></a> [filter-tags-blob](#module\_filter-tags-blob) | ../../../common/filter-tags | n/a |
| <a name="module_filter-tags-client-other-error"></a> [filter-tags-client-other-error](#module\_filter-tags-client-other-error) | ../../../common/filter-tags | n/a |
| <a name="module_filter-tags-client-other-error-blob"></a> [filter-tags-client-other-error-blob](#module\_filter-tags-client-other-error-blob) | ../../../common/filter-tags | n/a |
| <a name="module_filter-tags-network-error"></a> [filter-tags-network-error](#module\_filter-tags-network-error) | ../../../common/filter-tags | n/a |
| <a name="module_filter-tags-server-other-error"></a> [filter-tags-server-other-error](#module\_filter-tags-server-other-error) | ../../../common/filter-tags | n/a |
| <a name="module_filter-tags-success"></a> [filter-tags-success](#module\_filter-tags-success) | ../../../common/filter-tags | n/a |
| <a name="module_filter-tags-success-blob"></a> [filter-tags-success-blob](#module\_filter-tags-success-blob) | ../../../common/filter-tags | n/a |
| <a name="module_filter-tags-throttling-error"></a> [filter-tags-throttling-error](#module\_filter-tags-throttling-error) | ../../../common/filter-tags | n/a |
| <a name="module_filter-tags-timeout-error"></a> [filter-tags-timeout-error](#module\_filter-tags-timeout-error) | ../../../common/filter-tags | n/a |
## Resources
| Name | Type |
|------|------|
| [datadog_monitor.blob_authorization_error_requests](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.blob_client_other_error_requests](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.blob_network_error_requests](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.blob_server_other_error_requests](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.blob_throttling_error_requests](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.blob_timeout_error_requests](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.blobservices_latency](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.blobservices_requests_error](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.file_authorization_error_requests](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.file_client_other_error_requests](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.file_network_error_requests](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.file_server_other_error_requests](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.file_throttling_error_requests](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.file_timeout_error_requests](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.fileservices_latency](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.fileservices_requests_error](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.queue_authorization_error_requests](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.queue_client_other_error_requests](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.queue_network_error_requests](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.queue_server_other_error_requests](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.queue_throttling_error_requests](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.queue_timeout_error_requests](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.queueservices_latency](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.queueservices_requests_error](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.storage_status](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.table_authorization_error_requests](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.table_client_other_error_requests](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.table_network_error_requests](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.table_server_other_error_requests](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.table_throttling_error_requests](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.table_timeout_error_requests](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.tableservices_latency](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
| [datadog_monitor.tableservices_requests_error](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource |
## Inputs ## Inputs
| Name | Description | Type | Default | Required | | Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:| |------|-------------|------|---------|:--------:|
| authorization\_error\_requests\_enabled | Flag to enable Storage authorization errors monitor | `string` | `"true"` | no | | <a name="input_authorization_error_requests_enabled"></a> [authorization\_error\_requests\_enabled](#input\_authorization\_error\_requests\_enabled) | Flag to enable Storage authorization errors monitor | `string` | `"true"` | no |
| authorization\_error\_requests\_extra\_tags | Extra tags for Storage authorization errors monitor | `list(string)` | `[]` | no | | <a name="input_authorization_error_requests_extra_tags"></a> [authorization\_error\_requests\_extra\_tags](#input\_authorization\_error\_requests\_extra\_tags) | Extra tags for Storage authorization errors monitor | `list(string)` | `[]` | no |
| authorization\_error\_requests\_message | Custom message for Storage authorization errors monitor | `string` | `""` | no | | <a name="input_authorization_error_requests_message"></a> [authorization\_error\_requests\_message](#input\_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(string)` | `{}` | no | | <a name="input_authorization_error_requests_threshold_critical"></a> [authorization\_error\_requests\_threshold\_critical](#input\_authorization\_error\_requests\_threshold\_critical) | Maximum acceptable percent of authorization error requests for a storage | `number` | `90` | no |
| authorization\_error\_requests\_threshold\_critical | Maximum acceptable percent of authorization error requests for a storage | `number` | `90` | no | | <a name="input_authorization_error_requests_threshold_warning"></a> [authorization\_error\_requests\_threshold\_warning](#input\_authorization\_error\_requests\_threshold\_warning) | Warning regarding acceptable percent of authorization error requests for a storage | `number` | `50` | no |
| authorization\_error\_requests\_threshold\_warning | Warning regarding acceptable percent of authorization error requests for a storage | `number` | `50` | no | | <a name="input_authorization_error_requests_time_aggregator"></a> [authorization\_error\_requests\_time\_aggregator](#input\_authorization\_error\_requests\_time\_aggregator) | Monitor aggregator for Storage authorization errors [available values: min, max or avg] | `string` | `"min"` | no |
| authorization\_error\_requests\_time\_aggregator | Monitor aggregator for Storage authorization errors [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_authorization_error_requests_timeframe"></a> [authorization\_error\_requests\_timeframe](#input\_authorization\_error\_requests\_timeframe) | Monitor timeframe for Storage authorization errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| authorization\_error\_requests\_timeframe | Monitor timeframe for Storage authorization errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_availability_enabled"></a> [availability\_enabled](#input\_availability\_enabled) | Flag to enable Storage availability monitor | `string` | `"true"` | no |
| availability\_enabled | Flag to enable Storage availability monitor | `string` | `"true"` | no | | <a name="input_availability_extra_tags"></a> [availability\_extra\_tags](#input\_availability\_extra\_tags) | Extra tags for Storage availability monitor | `list(string)` | `[]` | no |
| availability\_extra\_tags | Extra tags for Storage availability monitor | `list(string)` | `[]` | no | | <a name="input_availability_message"></a> [availability\_message](#input\_availability\_message) | Custom message for Storage availability monitor | `string` | `""` | no |
| availability\_message | Custom message for Storage availability monitor | `string` | `""` | no | | <a name="input_availability_threshold_critical"></a> [availability\_threshold\_critical](#input\_availability\_threshold\_critical) | Minimum acceptable percent of availability for a storage | `number` | `50` | no |
| availability\_silenced | Groups to mute for Storage availability monitor | `map(string)` | `{}` | no | | <a name="input_availability_threshold_warning"></a> [availability\_threshold\_warning](#input\_availability\_threshold\_warning) | Warning regarding acceptable percent of availability for a storage | `number` | `90` | no |
| availability\_threshold\_critical | Minimum acceptable percent of availability for a storage | `number` | `50` | no | | <a name="input_availability_time_aggregator"></a> [availability\_time\_aggregator](#input\_availability\_time\_aggregator) | Monitor aggregator for Storage availability [available values: min, max or avg] | `string` | `"max"` | no |
| availability\_threshold\_warning | Warning regarding acceptable percent of availability for a storage | `number` | `90` | no | | <a name="input_availability_timeframe"></a> [availability\_timeframe](#input\_availability\_timeframe) | Monitor timeframe for Storage availability [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| availability\_time\_aggregator | Monitor aggregator for Storage availability [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_client_other_error_requests_enabled"></a> [client\_other\_error\_requests\_enabled](#input\_client\_other\_error\_requests\_enabled) | Flag to enable Storage other errors monitor | `string` | `"true"` | no |
| availability\_timeframe | Monitor timeframe for Storage availability [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_client_other_error_requests_extra_tags"></a> [client\_other\_error\_requests\_extra\_tags](#input\_client\_other\_error\_requests\_extra\_tags) | Extra tags for Storage other errors monitor | `list(string)` | `[]` | no |
| client\_other\_error\_requests\_enabled | Flag to enable Storage other errors monitor | `string` | `"true"` | no | | <a name="input_client_other_error_requests_message"></a> [client\_other\_error\_requests\_message](#input\_client\_other\_error\_requests\_message) | Custom message for Storage other errors monitor | `string` | `""` | no |
| client\_other\_error\_requests\_extra\_tags | Extra tags for Storage other errors monitor | `list(string)` | `[]` | no | | <a name="input_client_other_error_requests_threshold_critical"></a> [client\_other\_error\_requests\_threshold\_critical](#input\_client\_other\_error\_requests\_threshold\_critical) | Maximum acceptable percent of client other error requests for a storage | `number` | `90` | no |
| client\_other\_error\_requests\_message | Custom message for Storage other errors monitor | `string` | `""` | no | | <a name="input_client_other_error_requests_threshold_warning"></a> [client\_other\_error\_requests\_threshold\_warning](#input\_client\_other\_error\_requests\_threshold\_warning) | Warning regarding acceptable percent of client other error requests for a storage | `number` | `50` | no |
| client\_other\_error\_requests\_silenced | Groups to mute for Storage other errors monitor | `map(string)` | `{}` | no | | <a name="input_client_other_error_requests_time_aggregator"></a> [client\_other\_error\_requests\_time\_aggregator](#input\_client\_other\_error\_requests\_time\_aggregator) | Monitor aggregator for Storage other errors [available values: min, max or avg] | `string` | `"min"` | no |
| client\_other\_error\_requests\_threshold\_critical | Maximum acceptable percent of client other error requests for a storage | `number` | `90` | no | | <a name="input_client_other_error_requests_timeframe"></a> [client\_other\_error\_requests\_timeframe](#input\_client\_other\_error\_requests\_timeframe) | Monitor timeframe for Storage other errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| client\_other\_error\_requests\_threshold\_warning | Warning regarding acceptable percent of client other error requests for a storage | `number` | `50` | no | | <a name="input_environment"></a> [environment](#input\_environment) | Architecture environment | `string` | n/a | yes |
| client\_other\_error\_requests\_time\_aggregator | Monitor aggregator for Storage other errors [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_evaluation_delay"></a> [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no |
| client\_other\_error\_requests\_timeframe | Monitor timeframe for Storage other errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_filter_tags_custom"></a> [filter\_tags\_custom](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no |
| environment | Architecture environment | `string` | n/a | yes | | <a name="input_filter_tags_custom_excluded"></a> [filter\_tags\_custom\_excluded](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no |
| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | | <a name="input_filter_tags_use_defaults"></a> [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no |
| filter\_tags\_custom | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | | <a name="input_latency_enabled"></a> [latency\_enabled](#input\_latency\_enabled) | Flag to enable Storage latency monitor | `string` | `"true"` | no |
| filter\_tags\_custom\_excluded | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | | <a name="input_latency_extra_tags"></a> [latency\_extra\_tags](#input\_latency\_extra\_tags) | Extra tags for Storage latency monitor | `list(string)` | `[]` | no |
| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | | <a name="input_latency_message"></a> [latency\_message](#input\_latency\_message) | Custom message for Storage latency monitor | `string` | `""` | no |
| latency\_enabled | Flag to enable Storage latency monitor | `string` | `"true"` | no | | <a name="input_latency_threshold_critical"></a> [latency\_threshold\_critical](#input\_latency\_threshold\_critical) | Maximum acceptable end to end latency (ms) for a storage | `number` | `2000` | no |
| latency\_extra\_tags | Extra tags for Storage latency monitor | `list(string)` | `[]` | no | | <a name="input_latency_threshold_warning"></a> [latency\_threshold\_warning](#input\_latency\_threshold\_warning) | Warning regarding acceptable end to end latency (ms) for a storage | `number` | `1000` | no |
| latency\_message | Custom message for Storage latency monitor | `string` | `""` | no | | <a name="input_latency_time_aggregator"></a> [latency\_time\_aggregator](#input\_latency\_time\_aggregator) | Monitor aggregator for Storage latency [available values: min, max or avg] | `string` | `"min"` | no |
| latency\_silenced | Groups to mute for Storage latency monitor | `map(string)` | `{}` | no | | <a name="input_latency_timeframe"></a> [latency\_timeframe](#input\_latency\_timeframe) | Monitor timeframe for Storage latency [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| latency\_threshold\_critical | Maximum acceptable end to end latency (ms) for a storage | `number` | `2000` | no | | <a name="input_message"></a> [message](#input\_message) | Message sent when a Redis monitor is triggered | `any` | n/a | yes |
| latency\_threshold\_warning | Warning regarding acceptable end to end latency (ms) for a storage | `number` | `1000` | no | | <a name="input_network_error_requests_enabled"></a> [network\_error\_requests\_enabled](#input\_network\_error\_requests\_enabled) | Flag to enable Storage network errors monitor | `string` | `"true"` | no |
| latency\_time\_aggregator | Monitor aggregator for Storage latency [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_network_error_requests_extra_tags"></a> [network\_error\_requests\_extra\_tags](#input\_network\_error\_requests\_extra\_tags) | Extra tags for Storage network errors monitor | `list(string)` | `[]` | no |
| latency\_timeframe | Monitor timeframe for Storage latency [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_network_error_requests_message"></a> [network\_error\_requests\_message](#input\_network\_error\_requests\_message) | Custom message for Storage network errors monitor | `string` | `""` | no |
| message | Message sent when a Redis monitor is triggered | `any` | n/a | yes | | <a name="input_network_error_requests_threshold_critical"></a> [network\_error\_requests\_threshold\_critical](#input\_network\_error\_requests\_threshold\_critical) | Maximum acceptable percent of network error requests for a storage | `number` | `90` | no |
| network\_error\_requests\_enabled | Flag to enable Storage network errors monitor | `string` | `"true"` | no | | <a name="input_network_error_requests_threshold_warning"></a> [network\_error\_requests\_threshold\_warning](#input\_network\_error\_requests\_threshold\_warning) | Warning regarding acceptable percent of network error requests for a storage | `number` | `50` | no |
| network\_error\_requests\_extra\_tags | Extra tags for Storage network errors monitor | `list(string)` | `[]` | no | | <a name="input_network_error_requests_time_aggregator"></a> [network\_error\_requests\_time\_aggregator](#input\_network\_error\_requests\_time\_aggregator) | Monitor aggregator for Storage network errors [available values: min, max or avg] | `string` | `"min"` | no |
| network\_error\_requests\_message | Custom message for Storage network errors monitor | `string` | `""` | no | | <a name="input_network_error_requests_timeframe"></a> [network\_error\_requests\_timeframe](#input\_network\_error\_requests\_timeframe) | Monitor timeframe for Storage network errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| network\_error\_requests\_silenced | Groups to mute for Storage network errors monitor | `map(string)` | `{}` | no | | <a name="input_new_host_delay"></a> [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no |
| network\_error\_requests\_threshold\_critical | Maximum acceptable percent of network error requests for a storage | `number` | `90` | no | | <a name="input_notify_no_data"></a> [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no |
| network\_error\_requests\_threshold\_warning | Warning regarding acceptable percent of network error requests for a storage | `number` | `50` | no | | <a name="input_prefix_slug"></a> [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no |
| network\_error\_requests\_time\_aggregator | Monitor aggregator for Storage network errors [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_server_other_error_requests_enabled"></a> [server\_other\_error\_requests\_enabled](#input\_server\_other\_error\_requests\_enabled) | Flag to enable Storage server other errors monitor | `string` | `"true"` | no |
| network\_error\_requests\_timeframe | Monitor timeframe for Storage network errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_server_other_error_requests_extra_tags"></a> [server\_other\_error\_requests\_extra\_tags](#input\_server\_other\_error\_requests\_extra\_tags) | Extra tags for Storage server other errors monitor | `list(string)` | `[]` | no |
| new\_host\_delay | Delay in seconds before monitor new resource | `number` | `300` | no | | <a name="input_server_other_error_requests_message"></a> [server\_other\_error\_requests\_message](#input\_server\_other\_error\_requests\_message) | Custom message for Storage server other errors monitor | `string` | `""` | no |
| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | | <a name="input_server_other_error_requests_threshold_critical"></a> [server\_other\_error\_requests\_threshold\_critical](#input\_server\_other\_error\_requests\_threshold\_critical) | Maximum acceptable percent of server other error requests for a storage | `number` | `90` | no |
| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | | <a name="input_server_other_error_requests_threshold_warning"></a> [server\_other\_error\_requests\_threshold\_warning](#input\_server\_other\_error\_requests\_threshold\_warning) | Warning regarding acceptable percent of server other error requests for a storage | `number` | `50` | no |
| server\_other\_error\_requests\_enabled | Flag to enable Storage server other errors monitor | `string` | `"true"` | no | | <a name="input_server_other_error_requests_time_aggregator"></a> [server\_other\_error\_requests\_time\_aggregator](#input\_server\_other\_error\_requests\_time\_aggregator) | Monitor aggregator for Storage other errors [available values: min, max or avg] | `string` | `"min"` | no |
| server\_other\_error\_requests\_extra\_tags | Extra tags for Storage server other errors monitor | `list(string)` | `[]` | no | | <a name="input_server_other_error_requests_timeframe"></a> [server\_other\_error\_requests\_timeframe](#input\_server\_other\_error\_requests\_timeframe) | Monitor timeframe for Storage server other errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| server\_other\_error\_requests\_message | Custom message for Storage server other errors monitor | `string` | `""` | no | | <a name="input_status_enabled"></a> [status\_enabled](#input\_status\_enabled) | Flag to enable App Services status monitor | `string` | `"true"` | no |
| server\_other\_error\_requests\_silenced | Groups to mute for Storage server other errors monitor | `map(string)` | `{}` | no | | <a name="input_status_extra_tags"></a> [status\_extra\_tags](#input\_status\_extra\_tags) | Extra tags for App Services status monitor | `list(string)` | `[]` | no |
| server\_other\_error\_requests\_threshold\_critical | Maximum acceptable percent of server other error requests for a storage | `number` | `90` | no | | <a name="input_status_message"></a> [status\_message](#input\_status\_message) | Custom message for storage Services status monitor | `string` | `""` | no |
| server\_other\_error\_requests\_threshold\_warning | Warning regarding acceptable percent of server other error requests for a storage | `number` | `50` | no | | <a name="input_status_time_aggregator"></a> [status\_time\_aggregator](#input\_status\_time\_aggregator) | Monitor aggregator for Storage Services status [available values: min, max or avg] | `string` | `"max"` | no |
| server\_other\_error\_requests\_time\_aggregator | Monitor aggregator for Storage other errors [available values: min, max or avg] | `string` | `"min"` | no | | <a name="input_status_timeframe"></a> [status\_timeframe](#input\_status\_timeframe) | Monitor timeframe for Storage Services status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| server\_other\_error\_requests\_timeframe | Monitor timeframe for Storage server other errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_storage_status_no_data_timeframe"></a> [storage\_status\_no\_data\_timeframe](#input\_storage\_status\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no |
| status\_enabled | Flag to enable App Services status monitor | `string` | `"true"` | no | | <a name="input_successful_requests_enabled"></a> [successful\_requests\_enabled](#input\_successful\_requests\_enabled) | Flag to enable Storage sucessful requests monitor | `string` | `"true"` | no |
| status\_extra\_tags | Extra tags for App Services status monitor | `list(string)` | `[]` | no | | <a name="input_successful_requests_extra_tags"></a> [successful\_requests\_extra\_tags](#input\_successful\_requests\_extra\_tags) | Extra tags for Storage sucessful requests monitor | `list(string)` | `[]` | no |
| status\_message | Custom message for storage Services status monitor | `string` | `""` | no | | <a name="input_successful_requests_message"></a> [successful\_requests\_message](#input\_successful\_requests\_message) | Custom message for Storage sucessful requests monitor | `string` | `""` | no |
| status\_silenced | Groups to mute for App Services status monitor | `map(string)` | `{}` | no | | <a name="input_successful_requests_time_aggregator"></a> [successful\_requests\_time\_aggregator](#input\_successful\_requests\_time\_aggregator) | Monitor aggregator for Storage sucessful requests [available values: min, max or avg] | `string` | `"max"` | no |
| status\_time\_aggregator | Monitor aggregator for Storage Services status [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_successful_requests_timeframe"></a> [successful\_requests\_timeframe](#input\_successful\_requests\_timeframe) | Monitor timeframe for Storage sucessful requests [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| status\_timeframe | Monitor timeframe for Storage Services status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_successful_storage_requests_threshold_critical"></a> [successful\_storage\_requests\_threshold\_critical](#input\_successful\_storage\_requests\_threshold\_critical) | Minimum acceptable percent of successful requests for a storage | `number` | `90` | no |
| storage\_status\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | | <a name="input_successful_storage_requests_threshold_warning"></a> [successful\_storage\_requests\_threshold\_warning](#input\_successful\_storage\_requests\_threshold\_warning) | Warning regarding acceptable percent of successful requests for a storage | `number` | `70` | no |
| successful\_requests\_enabled | Flag to enable Storage sucessful requests monitor | `string` | `"true"` | no | | <a name="input_throttling_error_requests_enabled"></a> [throttling\_error\_requests\_enabled](#input\_throttling\_error\_requests\_enabled) | Flag to enable Storage throttling error monitor | `string` | `"true"` | no |
| successful\_requests\_extra\_tags | Extra tags for Storage sucessful requests monitor | `list(string)` | `[]` | no | | <a name="input_throttling_error_requests_extra_tags"></a> [throttling\_error\_requests\_extra\_tags](#input\_throttling\_error\_requests\_extra\_tags) | Extra tags for Storage throttling error monitor | `list(string)` | `[]` | no |
| successful\_requests\_message | Custom message for Storage sucessful requests monitor | `string` | `""` | no | | <a name="input_throttling_error_requests_message"></a> [throttling\_error\_requests\_message](#input\_throttling\_error\_requests\_message) | Custom message for Storage throttling error monitor | `string` | `""` | no |
| successful\_requests\_silenced | Groups to mute for Storage sucessful requests monitor | `map(string)` | `{}` | no | | <a name="input_throttling_error_requests_threshold_critical"></a> [throttling\_error\_requests\_threshold\_critical](#input\_throttling\_error\_requests\_threshold\_critical) | Maximum acceptable percent of throttling error requests for a storage | `number` | `90` | no |
| successful\_requests\_time\_aggregator | Monitor aggregator for Storage sucessful requests [available values: min, max or avg] | `string` | `"max"` | no | | <a name="input_throttling_error_requests_threshold_warning"></a> [throttling\_error\_requests\_threshold\_warning](#input\_throttling\_error\_requests\_threshold\_warning) | Warning regarding acceptable percent of throttling error requests for a storage | `number` | `50` | no |
| successful\_requests\_timeframe | Monitor timeframe for Storage sucessful requests [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | | <a name="input_throttling_error_requests_time_aggregator"></a> [throttling\_error\_requests\_time\_aggregator](#input\_throttling\_error\_requests\_time\_aggregator) | Monitor aggregator for Storage throttling errors [available values: min, max or avg] | `string` | `"min"` | no |
| successful\_storage\_requests\_threshold\_critical | Minimum acceptable percent of successful requests for a storage | `number` | `90` | no | | <a name="input_throttling_error_requests_timeframe"></a> [throttling\_error\_requests\_timeframe](#input\_throttling\_error\_requests\_timeframe) | Monitor timeframe for Storage throttling errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| successful\_storage\_requests\_threshold\_warning | Warning regarding acceptable percent of successful requests for a storage | `number` | `70` | no | | <a name="input_timeout_error_requests_enabled"></a> [timeout\_error\_requests\_enabled](#input\_timeout\_error\_requests\_enabled) | Flag to enable Storage timeout monitor | `string` | `"true"` | no |
| throttling\_error\_requests\_enabled | Flag to enable Storage throttling error monitor | `string` | `"true"` | no | | <a name="input_timeout_error_requests_extra_tags"></a> [timeout\_error\_requests\_extra\_tags](#input\_timeout\_error\_requests\_extra\_tags) | Extra tags for Storage timeout monitor | `list(string)` | `[]` | no |
| throttling\_error\_requests\_extra\_tags | Extra tags for Storage throttling error monitor | `list(string)` | `[]` | no | | <a name="input_timeout_error_requests_message"></a> [timeout\_error\_requests\_message](#input\_timeout\_error\_requests\_message) | Custom message for Storage timeout monitor | `string` | `""` | no |
| throttling\_error\_requests\_message | Custom message for Storage throttling error monitor | `string` | `""` | no | | <a name="input_timeout_error_requests_threshold_critical"></a> [timeout\_error\_requests\_threshold\_critical](#input\_timeout\_error\_requests\_threshold\_critical) | Maximum acceptable percent of timeout error requests for a storage | `number` | `90` | no |
| throttling\_error\_requests\_silenced | Groups to mute for Storage throttling error monitor | `map(string)` | `{}` | no | | <a name="input_timeout_error_requests_threshold_warning"></a> [timeout\_error\_requests\_threshold\_warning](#input\_timeout\_error\_requests\_threshold\_warning) | Warning regarding acceptable percent of timeout error requests for a storage | `number` | `50` | no |
| throttling\_error\_requests\_threshold\_critical | Maximum acceptable percent of throttling error requests for a storage | `number` | `90` | no | | <a name="input_timeout_error_requests_time_aggregator"></a> [timeout\_error\_requests\_time\_aggregator](#input\_timeout\_error\_requests\_time\_aggregator) | Monitor aggregator for Storage timeout [available values: min, max or avg] | `string` | `"min"` | no |
| throttling\_error\_requests\_threshold\_warning | Warning regarding acceptable percent of throttling error requests for a storage | `number` | `50` | no | | <a name="input_timeout_error_requests_timeframe"></a> [timeout\_error\_requests\_timeframe](#input\_timeout\_error\_requests\_timeframe) | Monitor timeframe for Storage timeout [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| throttling\_error\_requests\_time\_aggregator | Monitor aggregator for Storage throttling errors [available values: min, max or avg] | `string` | `"min"` | no |
| throttling\_error\_requests\_timeframe | Monitor timeframe for Storage throttling errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
| timeout\_error\_requests\_enabled | Flag to enable Storage timeout monitor | `string` | `"true"` | no |
| timeout\_error\_requests\_extra\_tags | Extra tags for Storage timeout monitor | `list(string)` | `[]` | 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(string)` | `{}` | no |
| timeout\_error\_requests\_threshold\_critical | Maximum acceptable percent of timeout error requests for a storage | `number` | `90` | no |
| timeout\_error\_requests\_threshold\_warning | Warning regarding acceptable percent of timeout error requests for a storage | `number` | `50` | no |
| timeout\_error\_requests\_time\_aggregator | Monitor aggregator for Storage timeout [available values: min, max or avg] | `string` | `"min"` | no |
| timeout\_error\_requests\_timeframe | Monitor timeframe for Storage timeout [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no |
## Outputs ## Outputs
| Name | Description | | Name | Description |
|------|-------------| |------|-------------|
| blob\_authorization\_error\_requests\_id | id for monitor blob\_authorization\_error\_requests | | <a name="output_blob_authorization_error_requests_id"></a> [blob\_authorization\_error\_requests\_id](#output\_blob\_authorization\_error\_requests\_id) | id for monitor blob\_authorization\_error\_requests |
| blob\_client\_other\_error\_requests\_id | id for monitor blob\_client\_other\_error\_requests | | <a name="output_blob_client_other_error_requests_id"></a> [blob\_client\_other\_error\_requests\_id](#output\_blob\_client\_other\_error\_requests\_id) | id for monitor blob\_client\_other\_error\_requests |
| blob\_network\_error\_requests\_id | id for monitor blob\_network\_error\_requests | | <a name="output_blob_network_error_requests_id"></a> [blob\_network\_error\_requests\_id](#output\_blob\_network\_error\_requests\_id) | id for monitor blob\_network\_error\_requests |
| blob\_server\_other\_error\_requests\_id | id for monitor blob\_server\_other\_error\_requests | | <a name="output_blob_server_other_error_requests_id"></a> [blob\_server\_other\_error\_requests\_id](#output\_blob\_server\_other\_error\_requests\_id) | id for monitor blob\_server\_other\_error\_requests |
| blob\_throttling\_error\_requests\_id | id for monitor blob\_throttling\_error\_requests | | <a name="output_blob_throttling_error_requests_id"></a> [blob\_throttling\_error\_requests\_id](#output\_blob\_throttling\_error\_requests\_id) | id for monitor blob\_throttling\_error\_requests |
| blob\_timeout\_error\_requests\_id | id for monitor blob\_timeout\_error\_requests | | <a name="output_blob_timeout_error_requests_id"></a> [blob\_timeout\_error\_requests\_id](#output\_blob\_timeout\_error\_requests\_id) | id for monitor blob\_timeout\_error\_requests |
| blobservices\_latency\_id | id for monitor blobservices\_latency | | <a name="output_blobservices_latency_id"></a> [blobservices\_latency\_id](#output\_blobservices\_latency\_id) | id for monitor blobservices\_latency |
| blobservices\_requests\_error\_id | id for monitor blobservices\_requests\_error | | <a name="output_blobservices_requests_error_id"></a> [blobservices\_requests\_error\_id](#output\_blobservices\_requests\_error\_id) | id for monitor blobservices\_requests\_error |
| file\_authorization\_error\_requests\_id | id for monitor file\_authorization\_error\_requests | | <a name="output_file_authorization_error_requests_id"></a> [file\_authorization\_error\_requests\_id](#output\_file\_authorization\_error\_requests\_id) | id for monitor file\_authorization\_error\_requests |
| file\_client\_other\_error\_requests\_id | id for monitor file\_client\_other\_error\_requests | | <a name="output_file_client_other_error_requests_id"></a> [file\_client\_other\_error\_requests\_id](#output\_file\_client\_other\_error\_requests\_id) | id for monitor file\_client\_other\_error\_requests |
| file\_network\_error\_requests\_id | id for monitor file\_network\_error\_requests | | <a name="output_file_network_error_requests_id"></a> [file\_network\_error\_requests\_id](#output\_file\_network\_error\_requests\_id) | id for monitor file\_network\_error\_requests |
| file\_server\_other\_error\_requests\_id | id for monitor file\_server\_other\_error\_requests | | <a name="output_file_server_other_error_requests_id"></a> [file\_server\_other\_error\_requests\_id](#output\_file\_server\_other\_error\_requests\_id) | id for monitor file\_server\_other\_error\_requests |
| file\_throttling\_error\_requests\_id | id for monitor file\_throttling\_error\_requests | | <a name="output_file_throttling_error_requests_id"></a> [file\_throttling\_error\_requests\_id](#output\_file\_throttling\_error\_requests\_id) | id for monitor file\_throttling\_error\_requests |
| file\_timeout\_error\_requests\_id | id for monitor file\_timeout\_error\_requests | | <a name="output_file_timeout_error_requests_id"></a> [file\_timeout\_error\_requests\_id](#output\_file\_timeout\_error\_requests\_id) | id for monitor file\_timeout\_error\_requests |
| fileservices\_latency\_id | id for monitor fileservices\_latency | | <a name="output_fileservices_latency_id"></a> [fileservices\_latency\_id](#output\_fileservices\_latency\_id) | id for monitor fileservices\_latency |
| fileservices\_requests\_error\_id | id for monitor fileservices\_requests\_error | | <a name="output_fileservices_requests_error_id"></a> [fileservices\_requests\_error\_id](#output\_fileservices\_requests\_error\_id) | id for monitor fileservices\_requests\_error |
| queue\_authorization\_error\_requests\_id | id for monitor queue\_authorization\_error\_requests | | <a name="output_queue_authorization_error_requests_id"></a> [queue\_authorization\_error\_requests\_id](#output\_queue\_authorization\_error\_requests\_id) | id for monitor queue\_authorization\_error\_requests |
| queue\_client\_other\_error\_requests\_id | id for monitor queue\_client\_other\_error\_requests | | <a name="output_queue_client_other_error_requests_id"></a> [queue\_client\_other\_error\_requests\_id](#output\_queue\_client\_other\_error\_requests\_id) | id for monitor queue\_client\_other\_error\_requests |
| queue\_network\_error\_requests\_id | id for monitor queue\_network\_error\_requests | | <a name="output_queue_network_error_requests_id"></a> [queue\_network\_error\_requests\_id](#output\_queue\_network\_error\_requests\_id) | id for monitor queue\_network\_error\_requests |
| queue\_server\_other\_error\_requests\_id | id for monitor queue\_server\_other\_error\_requests | | <a name="output_queue_server_other_error_requests_id"></a> [queue\_server\_other\_error\_requests\_id](#output\_queue\_server\_other\_error\_requests\_id) | id for monitor queue\_server\_other\_error\_requests |
| queue\_throttling\_error\_requests\_id | id for monitor queue\_throttling\_error\_requests | | <a name="output_queue_throttling_error_requests_id"></a> [queue\_throttling\_error\_requests\_id](#output\_queue\_throttling\_error\_requests\_id) | id for monitor queue\_throttling\_error\_requests |
| queue\_timeout\_error\_requests\_id | id for monitor queue\_timeout\_error\_requests | | <a name="output_queue_timeout_error_requests_id"></a> [queue\_timeout\_error\_requests\_id](#output\_queue\_timeout\_error\_requests\_id) | id for monitor queue\_timeout\_error\_requests |
| queueservices\_latency\_id | id for monitor queueservices\_latency | | <a name="output_queueservices_latency_id"></a> [queueservices\_latency\_id](#output\_queueservices\_latency\_id) | id for monitor queueservices\_latency |
| queueservices\_requests\_error\_id | id for monitor queueservices\_requests\_error | | <a name="output_queueservices_requests_error_id"></a> [queueservices\_requests\_error\_id](#output\_queueservices\_requests\_error\_id) | id for monitor queueservices\_requests\_error |
| storage\_status\_id | id for monitor storage\_status | | <a name="output_storage_status_id"></a> [storage\_status\_id](#output\_storage\_status\_id) | id for monitor storage\_status |
| table\_authorization\_error\_requests\_id | id for monitor table\_authorization\_error\_requests | | <a name="output_table_authorization_error_requests_id"></a> [table\_authorization\_error\_requests\_id](#output\_table\_authorization\_error\_requests\_id) | id for monitor table\_authorization\_error\_requests |
| table\_client\_other\_error\_requests\_id | id for monitor table\_client\_other\_error\_requests | | <a name="output_table_client_other_error_requests_id"></a> [table\_client\_other\_error\_requests\_id](#output\_table\_client\_other\_error\_requests\_id) | id for monitor table\_client\_other\_error\_requests |
| table\_network\_error\_requests\_id | id for monitor table\_network\_error\_requests | | <a name="output_table_network_error_requests_id"></a> [table\_network\_error\_requests\_id](#output\_table\_network\_error\_requests\_id) | id for monitor table\_network\_error\_requests |
| table\_server\_other\_error\_requests\_id | id for monitor table\_server\_other\_error\_requests | | <a name="output_table_server_other_error_requests_id"></a> [table\_server\_other\_error\_requests\_id](#output\_table\_server\_other\_error\_requests\_id) | id for monitor table\_server\_other\_error\_requests |
| table\_throttling\_error\_requests\_id | id for monitor table\_throttling\_error\_requests | | <a name="output_table_throttling_error_requests_id"></a> [table\_throttling\_error\_requests\_id](#output\_table\_throttling\_error\_requests\_id) | id for monitor table\_throttling\_error\_requests |
| table\_timeout\_error\_requests\_id | id for monitor table\_timeout\_error\_requests | | <a name="output_table_timeout_error_requests_id"></a> [table\_timeout\_error\_requests\_id](#output\_table\_timeout\_error\_requests\_id) | id for monitor table\_timeout\_error\_requests |
| tableservices\_latency\_id | id for monitor tableservices\_latency | | <a name="output_tableservices_latency_id"></a> [tableservices\_latency\_id](#output\_tableservices\_latency\_id) | id for monitor tableservices\_latency |
| tableservices\_requests\_error\_id | id for monitor tableservices\_requests\_error | | <a name="output_tableservices_requests_error_id"></a> [tableservices\_requests\_error\_id](#output\_tableservices\_requests\_error\_id) | id for monitor tableservices\_requests\_error |
## Related documentation ## Related documentation
DataDog documentation: [https://docs.datadoghq.com/integrations/azure_storage/](https://docs.datadoghq.com/integrations/azure_storage/) DataDog documentation: [https://docs.datadoghq.com/integrations/azure_storage/](https://docs.datadoghq.com/integrations/azure_storage/)

View File

@ -51,12 +51,6 @@ variable "filter_tags_custom_excluded" {
} }
# Azure Storage specific variables # Azure Storage specific variables
variable "availability_silenced" {
description = "Groups to mute for Storage availability monitor"
type = map(string)
default = {}
}
variable "availability_enabled" { variable "availability_enabled" {
description = "Flag to enable Storage availability monitor" description = "Flag to enable Storage availability monitor"
type = string type = string
@ -97,12 +91,6 @@ variable "availability_threshold_warning" {
default = 90 default = 90
} }
variable "successful_requests_silenced" {
description = "Groups to mute for Storage sucessful requests monitor"
type = map(string)
default = {}
}
variable "successful_requests_enabled" { variable "successful_requests_enabled" {
description = "Flag to enable Storage sucessful requests monitor" description = "Flag to enable Storage sucessful requests monitor"
type = string type = string
@ -143,12 +131,6 @@ variable "successful_storage_requests_threshold_warning" {
default = 70 default = 70
} }
variable "latency_silenced" {
description = "Groups to mute for Storage latency monitor"
type = map(string)
default = {}
}
variable "latency_enabled" { variable "latency_enabled" {
description = "Flag to enable Storage latency monitor" description = "Flag to enable Storage latency monitor"
type = string type = string
@ -189,12 +171,6 @@ variable "latency_threshold_warning" {
default = 1000 default = 1000
} }
variable "timeout_error_requests_silenced" {
description = "Groups to mute for Storage timeout monitor"
type = map(string)
default = {}
}
variable "timeout_error_requests_enabled" { variable "timeout_error_requests_enabled" {
description = "Flag to enable Storage timeout monitor" description = "Flag to enable Storage timeout monitor"
type = string type = string
@ -235,12 +211,6 @@ variable "timeout_error_requests_threshold_warning" {
default = 50 default = 50
} }
variable "network_error_requests_silenced" {
description = "Groups to mute for Storage network errors monitor"
type = map(string)
default = {}
}
variable "network_error_requests_enabled" { variable "network_error_requests_enabled" {
description = "Flag to enable Storage network errors monitor" description = "Flag to enable Storage network errors monitor"
type = string type = string
@ -281,12 +251,6 @@ variable "network_error_requests_threshold_warning" {
default = 50 default = 50
} }
variable "throttling_error_requests_silenced" {
description = "Groups to mute for Storage throttling error monitor"
type = map(string)
default = {}
}
variable "throttling_error_requests_enabled" { variable "throttling_error_requests_enabled" {
description = "Flag to enable Storage throttling error monitor" description = "Flag to enable Storage throttling error monitor"
type = string type = string
@ -327,12 +291,6 @@ variable "throttling_error_requests_threshold_warning" {
default = 50 default = 50
} }
variable "server_other_error_requests_silenced" {
description = "Groups to mute for Storage server other errors monitor"
type = map(string)
default = {}
}
variable "server_other_error_requests_enabled" { variable "server_other_error_requests_enabled" {
description = "Flag to enable Storage server other errors monitor" description = "Flag to enable Storage server other errors monitor"
type = string type = string
@ -373,12 +331,6 @@ variable "server_other_error_requests_threshold_warning" {
default = 50 default = 50
} }
variable "client_other_error_requests_silenced" {
description = "Groups to mute for Storage other errors monitor"
type = map(string)
default = {}
}
variable "client_other_error_requests_enabled" { variable "client_other_error_requests_enabled" {
description = "Flag to enable Storage other errors monitor" description = "Flag to enable Storage other errors monitor"
type = string type = string
@ -419,12 +371,6 @@ variable "client_other_error_requests_threshold_warning" {
default = 50 default = 50
} }
variable "authorization_error_requests_silenced" {
description = "Groups to mute for Storage authorization errors monitor"
type = map(string)
default = {}
}
variable "authorization_error_requests_enabled" { variable "authorization_error_requests_enabled" {
description = "Flag to enable Storage authorization errors monitor" description = "Flag to enable Storage authorization errors monitor"
type = string type = string
@ -489,12 +435,6 @@ variable "status_message" {
default = "" default = ""
} }
variable "status_silenced" {
description = "Groups to mute for App Services status monitor"
type = map(string)
default = {}
}
variable "status_extra_tags" { variable "status_extra_tags" {
description = "Extra tags for App Services status monitor" description = "Extra tags for App Services status monitor"
type = list(string) type = list(string)

View File

@ -12,7 +12,6 @@ EOQ
critical = 1 critical = 1
} }
silenced = var.status_silenced
type = "metric alert" type = "metric alert"
notify_no_data = var.notify_no_data notify_no_data = var.notify_no_data
no_data_timeframe = var.storage_status_no_data_timeframe no_data_timeframe = var.storage_status_no_data_timeframe
@ -46,8 +45,6 @@ EOQ
warning = var.successful_storage_requests_threshold_warning warning = var.successful_storage_requests_threshold_warning
} }
silenced = var.successful_requests_silenced
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
@ -79,8 +76,6 @@ EOQ
warning = var.successful_storage_requests_threshold_warning warning = var.successful_storage_requests_threshold_warning
} }
silenced = var.successful_requests_silenced
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
@ -113,8 +108,6 @@ EOQ
warning = var.successful_storage_requests_threshold_warning warning = var.successful_storage_requests_threshold_warning
} }
silenced = var.successful_requests_silenced
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
@ -147,8 +140,6 @@ EOQ
warning = var.successful_storage_requests_threshold_warning warning = var.successful_storage_requests_threshold_warning
} }
silenced = var.successful_requests_silenced
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
@ -180,8 +171,6 @@ EOQ
warning = var.latency_threshold_warning warning = var.latency_threshold_warning
} }
silenced = var.latency_silenced
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
@ -213,8 +202,6 @@ EOQ
warning = var.latency_threshold_warning warning = var.latency_threshold_warning
} }
silenced = var.latency_silenced
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
@ -246,8 +233,6 @@ EOQ
warning = var.latency_threshold_warning warning = var.latency_threshold_warning
} }
silenced = var.latency_silenced
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
@ -279,8 +264,6 @@ EOQ
warning = var.latency_threshold_warning warning = var.latency_threshold_warning
} }
silenced = var.latency_silenced
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
@ -312,8 +295,6 @@ EOQ
warning = var.timeout_error_requests_threshold_warning warning = var.timeout_error_requests_threshold_warning
} }
silenced = var.timeout_error_requests_silenced
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
@ -345,8 +326,6 @@ EOQ
warning = var.timeout_error_requests_threshold_warning warning = var.timeout_error_requests_threshold_warning
} }
silenced = var.timeout_error_requests_silenced
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
@ -379,8 +358,6 @@ EOQ
warning = var.timeout_error_requests_threshold_warning warning = var.timeout_error_requests_threshold_warning
} }
silenced = var.timeout_error_requests_silenced
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
@ -413,8 +390,6 @@ EOQ
warning = var.timeout_error_requests_threshold_warning warning = var.timeout_error_requests_threshold_warning
} }
silenced = var.timeout_error_requests_silenced
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
@ -447,8 +422,6 @@ EOQ
warning = var.network_error_requests_threshold_warning warning = var.network_error_requests_threshold_warning
} }
silenced = var.network_error_requests_silenced
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
@ -481,8 +454,6 @@ EOQ
warning = var.network_error_requests_threshold_warning warning = var.network_error_requests_threshold_warning
} }
silenced = var.network_error_requests_silenced
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
@ -515,8 +486,6 @@ EOQ
warning = var.network_error_requests_threshold_warning warning = var.network_error_requests_threshold_warning
} }
silenced = var.network_error_requests_silenced
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
@ -549,8 +518,6 @@ EOQ
warning = var.network_error_requests_threshold_warning warning = var.network_error_requests_threshold_warning
} }
silenced = var.network_error_requests_silenced
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
@ -583,8 +550,6 @@ EOQ
warning = var.throttling_error_requests_threshold_warning warning = var.throttling_error_requests_threshold_warning
} }
silenced = var.throttling_error_requests_silenced
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
@ -617,8 +582,6 @@ EOQ
warning = var.throttling_error_requests_threshold_warning warning = var.throttling_error_requests_threshold_warning
} }
silenced = var.throttling_error_requests_silenced
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
@ -651,8 +614,6 @@ EOQ
warning = var.throttling_error_requests_threshold_warning warning = var.throttling_error_requests_threshold_warning
} }
silenced = var.throttling_error_requests_silenced
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
@ -685,8 +646,6 @@ EOQ
warning = var.throttling_error_requests_threshold_warning warning = var.throttling_error_requests_threshold_warning
} }
silenced = var.throttling_error_requests_silenced
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
@ -719,8 +678,6 @@ EOQ
warning = var.server_other_error_requests_threshold_warning warning = var.server_other_error_requests_threshold_warning
} }
silenced = var.server_other_error_requests_silenced
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
@ -753,8 +710,6 @@ EOQ
warning = var.server_other_error_requests_threshold_warning warning = var.server_other_error_requests_threshold_warning
} }
silenced = var.server_other_error_requests_silenced
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
@ -787,8 +742,6 @@ EOQ
warning = var.server_other_error_requests_threshold_warning warning = var.server_other_error_requests_threshold_warning
} }
silenced = var.server_other_error_requests_silenced
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
@ -821,8 +774,6 @@ EOQ
warning = var.server_other_error_requests_threshold_warning warning = var.server_other_error_requests_threshold_warning
} }
silenced = var.server_other_error_requests_silenced
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
@ -854,8 +805,6 @@ EOQ
warning = var.client_other_error_requests_threshold_warning warning = var.client_other_error_requests_threshold_warning
} }
silenced = var.client_other_error_requests_silenced
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
@ -888,8 +837,6 @@ EOQ
warning = var.client_other_error_requests_threshold_warning warning = var.client_other_error_requests_threshold_warning
} }
silenced = var.client_other_error_requests_silenced
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
@ -922,8 +869,6 @@ EOQ
warning = var.client_other_error_requests_threshold_warning warning = var.client_other_error_requests_threshold_warning
} }
silenced = var.client_other_error_requests_silenced
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
@ -956,8 +901,6 @@ EOQ
warning = var.client_other_error_requests_threshold_warning warning = var.client_other_error_requests_threshold_warning
} }
silenced = var.client_other_error_requests_silenced
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
@ -990,8 +933,6 @@ EOQ
warning = var.authorization_error_requests_threshold_warning warning = var.authorization_error_requests_threshold_warning
} }
silenced = var.authorization_error_requests_silenced
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
@ -1024,8 +965,6 @@ EOQ
warning = var.authorization_error_requests_threshold_warning warning = var.authorization_error_requests_threshold_warning
} }
silenced = var.authorization_error_requests_silenced
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
@ -1058,8 +997,6 @@ EOQ
warning = var.authorization_error_requests_threshold_warning warning = var.authorization_error_requests_threshold_warning
} }
silenced = var.authorization_error_requests_silenced
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false
@ -1092,8 +1029,6 @@ EOQ
warning = var.authorization_error_requests_threshold_warning warning = var.authorization_error_requests_threshold_warning
} }
silenced = var.authorization_error_requests_silenced
type = "metric alert" type = "metric alert"
notify_no_data = false notify_no_data = false
notify_audit = false notify_audit = false

View File

@ -1,7 +1,7 @@
terraform { terraform {
required_providers { required_providers {
datadog = { datadog = {
source = "DataDog/datadog" source = "DataDog/datadog"
version = ">= 3.1.0" version = ">= 3.1.0"
} }
} }

Some files were not shown because too many files have changed in this diff Show More