diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml new file mode 100644 index 0000000..588cd49 --- /dev/null +++ b/.github/workflows/main.yml @@ -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 diff --git a/.gitignore b/.gitignore index 880a672..5b31b28 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ .terraform terraform.tfvars /.env.sh -.idea \ No newline at end of file +.idea +**/.terraform.lock.hcl diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml deleted file mode 100644 index 3edbf02..0000000 --- a/.gitlab-ci.yml +++ /dev/null @@ -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 - diff --git a/caas/docker/README.md b/caas/docker/README.md index 2107f05..6916623 100644 --- a/caas/docker/README.md +++ b/caas/docker/README.md @@ -24,41 +24,60 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| environment | Architecture Environment | `string` | n/a | yes | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | +| [environment](#input\_environment) | Architecture Environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [memory\_used\_enabled](#input\_memory\_used\_enabled) | Flag to enable Container Memory Usage monitor | `string` | `"false"` | no | +| [memory\_used\_extra\_tags](#input\_memory\_used\_extra\_tags) | Extra tags for Container Memory Usage monitor | `list(string)` | `[]` | no | +| [memory\_used\_message](#input\_memory\_used\_message) | Custom message for the Container Memory Usage monitor | `string` | `""` | no | +| [memory\_used\_threshold\_critical](#input\_memory\_used\_threshold\_critical) | Container Memory Usage critical threshold | `string` | `90` | no | +| [memory\_used\_threshold\_warning](#input\_memory\_used\_threshold\_warning) | Container Memory Usage warning threshold | `string` | `85` | no | +| [memory\_used\_time\_aggregator](#input\_memory\_used\_time\_aggregator) | Time aggregator for the Container Memory Usage monitor | `string` | `"min"` | no | +| [memory\_used\_timeframe](#input\_memory\_used\_timeframe) | Timeframe for the Container Memory Usage monitor | `string` | `"last_5m"` | no | +| [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [not\_responding\_enabled](#input\_not\_responding\_enabled) | Flag to enable Docker does not respond monitor | `string` | `"true"` | no | +| [not\_responding\_extra\_tags](#input\_not\_responding\_extra\_tags) | Extra tags for Docker does not respond monitor | `list(string)` | `[]` | no | +| [not\_responding\_message](#input\_not\_responding\_message) | Custom message for Docker does not respond monitor | `string` | `""` | no | +| [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](#input\_not\_responding\_threshold\_warning) | Docker does not respond monitor (warning threshold) | `string` | `3` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | ## Outputs | Name | Description | |------|-------------| -| memory\_used\_id | id for monitor memory\_used | -| not\_responding\_id | id for monitor not\_responding | - +| [memory\_used\_id](#output\_memory\_used\_id) | id for monitor memory\_used | +| [not\_responding\_id](#output\_not\_responding\_id) | id for monitor not\_responding | ## Related documentation * [Datadog Docker integration](https://docs.datadoghq.com/integrations/docker_daemon/) diff --git a/caas/docker/versions.tf b/caas/docker/versions.tf index 1c28e79..a5c6a87 100644 --- a/caas/docker/versions.tf +++ b/caas/docker/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/caas/kubernetes/ark/README.md b/caas/kubernetes/ark/README.md index 5a3c62e..d981b7d 100644 --- a/caas/kubernetes/ark/README.md +++ b/caas/kubernetes/ark/README.md @@ -23,33 +23,51 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | +| [ark\_schedules\_enabled](#input\_ark\_schedules\_enabled) | Flag to enable Ark schedules monitor | `string` | `"true"` | no | +| [ark\_schedules\_extra\_tags](#input\_ark\_schedules\_extra\_tags) | Extra tags for Ark schedules monitor | `list(string)` | `[]` | no | +| [ark\_schedules\_monitor\_message](#input\_ark\_schedules\_monitor\_message) | Custom message for Ark schedules monitor | `string` | `""` | no | +| [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](#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](#input\_environment) | Architecture environment | `any` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | ## Outputs | Name | Description | |------|-------------| -| ark\_schedules\_monitor\_id | id for monitor ark\_schedules\_monitor | - +| [ark\_schedules\_monitor\_id](#output\_ark\_schedules\_monitor\_id) | id for monitor ark\_schedules\_monitor | ## Related documentation DataDog blog: https://www.datadoghq.com/blog/monitor-prometheus-metrics diff --git a/caas/kubernetes/ark/versions.tf b/caas/kubernetes/ark/versions.tf index 1c28e79..a5c6a87 100644 --- a/caas/kubernetes/ark/versions.tf +++ b/caas/kubernetes/ark/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/caas/kubernetes/cluster/README.md b/caas/kubernetes/cluster/README.md index 425a449..9f14cbd 100644 --- a/caas/kubernetes/cluster/README.md +++ b/caas/kubernetes/cluster/README.md @@ -23,33 +23,51 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| apiserver\_enabled | Flag to enable API server monitor | `string` | `"true"` | no | -| apiserver\_extra\_tags | Extra tags for API server monitor | `list(string)` | `[]` | no | -| apiserver\_message | Custom message for API server monitor | `string` | `""` | no | -| 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 | -| environment | Architecture environment | `any` | n/a | yes | -| 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 | -| 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 | -| 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 | -| 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 | +| [apiserver\_enabled](#input\_apiserver\_enabled) | Flag to enable API server monitor | `string` | `"true"` | no | +| [apiserver\_extra\_tags](#input\_apiserver\_extra\_tags) | Extra tags for API server monitor | `list(string)` | `[]` | no | +| [apiserver\_message](#input\_apiserver\_message) | Custom message for API server monitor | `string` | `""` | no | +| [apiserver\_no\_data\_timeframe](#input\_apiserver\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no | +| [apiserver\_threshold\_warning](#input\_apiserver\_threshold\_warning) | API server monitor (warning threshold) | `string` | `3` | no | +| [environment](#input\_environment) | Architecture environment | `any` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | ## Outputs | Name | Description | |------|-------------| -| apiserver\_id | id for monitor apiserver | - +| [apiserver\_id](#output\_apiserver\_id) | id for monitor apiserver | ## Related documentation * [Datadog metrics](https://docs.datadoghq.com/agent/kubernetes/metrics/) diff --git a/caas/kubernetes/cluster/versions.tf b/caas/kubernetes/cluster/versions.tf index 1c28e79..a5c6a87 100644 --- a/caas/kubernetes/cluster/versions.tf +++ b/caas/kubernetes/cluster/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/caas/kubernetes/ingress/vts/README.md b/caas/kubernetes/ingress/vts/README.md index acc8094..38865a9 100644 --- a/caas/kubernetes/ingress/vts/README.md +++ b/caas/kubernetes/ingress/vts/README.md @@ -24,44 +24,65 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [filter-tags](#module\_filter-tags) | ../../../../common/filter-tags | n/a | +| [filter-tags-4xx](#module\_filter-tags-4xx) | ../../../../common/filter-tags | n/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 | 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 | -| environment | Architecture Environment | `string` | n/a | yes | -| 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 | -| 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 | -| 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 | -| ingress\_4xx\_message | Message sent when an alert is triggered | `string` | `""` | no | -| ingress\_4xx\_threshold\_critical | 4xx critical threshold in percentage | `string` | `"40"` | no | -| 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 | -| 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 | -| 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 | -| ingress\_5xx\_threshold\_critical | 5xx critical threshold in percentage | `string` | `"20"` | no | -| 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 | -| 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 | -| 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 | -| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [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](#input\_environment) | Architecture Environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [ingress\_4xx\_enabled](#input\_ingress\_4xx\_enabled) | Flag to enable Ingress 4xx errors monitor | `string` | `"true"` | no | +| [ingress\_4xx\_extra\_tags](#input\_ingress\_4xx\_extra\_tags) | Extra tags for Ingress 4xx errors monitor | `list(string)` | `[]` | no | +| [ingress\_4xx\_message](#input\_ingress\_4xx\_message) | Message sent when an alert is triggered | `string` | `""` | no | +| [ingress\_4xx\_threshold\_critical](#input\_ingress\_4xx\_threshold\_critical) | 4xx critical threshold in percentage | `string` | `"40"` | no | +| [ingress\_4xx\_threshold\_warning](#input\_ingress\_4xx\_threshold\_warning) | 4xx warning threshold in percentage | `string` | `"20"` | no | +| [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](#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](#input\_ingress\_5xx\_enabled) | Flag to enable Ingress 5xx errors monitor | `string` | `"true"` | no | +| [ingress\_5xx\_extra\_tags](#input\_ingress\_5xx\_extra\_tags) | Extra tags for Ingress 5xx errors monitor | `list(string)` | `[]` | no | +| [ingress\_5xx\_message](#input\_ingress\_5xx\_message) | Message sent when an alert is triggered | `string` | `""` | no | +| [ingress\_5xx\_threshold\_critical](#input\_ingress\_5xx\_threshold\_critical) | 5xx critical threshold in percentage | `string` | `"20"` | no | +| [ingress\_5xx\_threshold\_warning](#input\_ingress\_5xx\_threshold\_warning) | 5xx warning threshold in percentage | `string` | `"10"` | no | +| [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](#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](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | ## Outputs | Name | Description | |------|-------------| -| 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 | - +| [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](#output\_nginx\_ingress\_too\_many\_5xx\_id) | id for monitor nginx\_ingress\_too\_many\_5xx | ## Related documentation DataDog blog: https://www.datadoghq.com/blog/monitor-prometheus-metrics diff --git a/caas/kubernetes/ingress/vts/versions.tf b/caas/kubernetes/ingress/vts/versions.tf index 1c28e79..a5c6a87 100644 --- a/caas/kubernetes/ingress/vts/versions.tf +++ b/caas/kubernetes/ingress/vts/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/caas/kubernetes/node/README.md b/caas/kubernetes/node/README.md index cc05848..8dc15bd 100644 --- a/caas/kubernetes/node/README.md +++ b/caas/kubernetes/node/README.md @@ -32,87 +32,115 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| 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 | -| 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 | -| 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 | -| disk\_pressure\_message | Custom message for Disk pressure monitor | `string` | `""` | no | -| disk\_pressure\_threshold\_warning | Disk pressure monitor (warning threshold) | `string` | `3` | no | -| environment | Architecture environment | `any` | n/a | yes | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| memory\_pressure\_extra\_tags | Extra tags for Memory pressure monitor | `list(string)` | `[]` | no | -| memory\_pressure\_message | Custom message for Memory pressure monitor | `string` | `""` | no | -| memory\_pressure\_threshold\_warning | Memory pressure monitor (warning threshold) | `string` | `3` | no | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| ready\_extra\_tags | Extra tags for Node ready monitor | `list(string)` | `[]` | no | -| ready\_message | Custom message for Node ready monitor | `string` | `""` | no | -| 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 | -| 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 | -| 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 | -| 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 | -| volume\_inodes\_extra\_tags | Extra tags for Volume inodes monitor | `list(string)` | `[]` | no | -| volume\_inodes\_message | Custom message for Volume inodes monitor | `string` | `""` | no | -| volume\_inodes\_threshold\_critical | Volume inodes critical threshold | `number` | `95` | no | -| 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 | -| 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 | -| volume\_space\_extra\_tags | Extra tags for Volume space monitor | `list(string)` | `[]` | no | -| volume\_space\_message | Custom message for Volume space monitor | `string` | `""` | no | -| volume\_space\_threshold\_critical | Volume space critical threshold | `number` | `95` | no | -| 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 | -| 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 | +| [disk\_out\_enabled](#input\_disk\_out\_enabled) | Flag to enable Out of disk monitor | `string` | `"true"` | no | +| [disk\_out\_extra\_tags](#input\_disk\_out\_extra\_tags) | Extra tags for Out of disk monitor | `list(string)` | `[]` | no | +| [disk\_out\_message](#input\_disk\_out\_message) | Custom message for Out of disk monitor | `string` | `""` | no | +| [disk\_out\_threshold\_warning](#input\_disk\_out\_threshold\_warning) | Out of disk monitor (warning threshold) | `string` | `3` | no | +| [disk\_pressure\_enabled](#input\_disk\_pressure\_enabled) | Flag to enable Disk pressure monitor | `string` | `"true"` | no | +| [disk\_pressure\_extra\_tags](#input\_disk\_pressure\_extra\_tags) | Extra tags for Disk pressure monitor | `list(string)` | `[]` | no | +| [disk\_pressure\_message](#input\_disk\_pressure\_message) | Custom message for Disk pressure monitor | `string` | `""` | no | +| [disk\_pressure\_threshold\_warning](#input\_disk\_pressure\_threshold\_warning) | Disk pressure monitor (warning threshold) | `string` | `3` | no | +| [environment](#input\_environment) | Architecture environment | `any` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [kubelet\_ping\_enabled](#input\_kubelet\_ping\_enabled) | Flag to enable Kubelet ping monitor | `string` | `"true"` | no | +| [kubelet\_ping\_extra\_tags](#input\_kubelet\_ping\_extra\_tags) | Extra tags for Kubelet ping monitor | `list(string)` | `[]` | no | +| [kubelet\_ping\_message](#input\_kubelet\_ping\_message) | Custom message for Kubelet ping monitor | `string` | `""` | no | +| [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](#input\_kubelet\_ping\_threshold\_warning) | Kubelet ping monitor (warning threshold) | `string` | `3` | no | +| [kubelet\_syncloop\_enabled](#input\_kubelet\_syncloop\_enabled) | Flag to enable Kubelet sync loop monitor | `string` | `"true"` | no | +| [kubelet\_syncloop\_extra\_tags](#input\_kubelet\_syncloop\_extra\_tags) | Extra tags for Kubelet sync loop monitor | `list(string)` | `[]` | no | +| [kubelet\_syncloop\_message](#input\_kubelet\_syncloop\_message) | Custom message for Kubelet sync loop monitor | `string` | `""` | no | +| [kubelet\_syncloop\_threshold\_warning](#input\_kubelet\_syncloop\_threshold\_warning) | Kubelet sync loop monitor (warning threshold) | `string` | `3` | no | +| [memory\_pressure\_enabled](#input\_memory\_pressure\_enabled) | Flag to enable Memory pressure monitor | `string` | `"true"` | no | +| [memory\_pressure\_extra\_tags](#input\_memory\_pressure\_extra\_tags) | Extra tags for Memory pressure monitor | `list(string)` | `[]` | no | +| [memory\_pressure\_message](#input\_memory\_pressure\_message) | Custom message for Memory pressure monitor | `string` | `""` | no | +| [memory\_pressure\_threshold\_warning](#input\_memory\_pressure\_threshold\_warning) | Memory pressure monitor (warning threshold) | `string` | `3` | no | +| [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [node\_unschedulable\_enabled](#input\_node\_unschedulable\_enabled) | Flag to enable node unschedulable monitor | `string` | `"true"` | no | +| [node\_unschedulable\_extra\_tags](#input\_node\_unschedulable\_extra\_tags) | Extra tags for node unschedulable monitor | `list(string)` | `[]` | no | +| [node\_unschedulable\_message](#input\_node\_unschedulable\_message) | Custom message for node unschedulable monitor | `string` | `""` | no | +| [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](#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](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [ready\_enabled](#input\_ready\_enabled) | Flag to enable Node ready monitor | `string` | `"true"` | no | +| [ready\_extra\_tags](#input\_ready\_extra\_tags) | Extra tags for Node ready monitor | `list(string)` | `[]` | no | +| [ready\_message](#input\_ready\_message) | Custom message for Node ready monitor | `string` | `""` | no | +| [ready\_threshold\_warning](#input\_ready\_threshold\_warning) | Node ready monitor (warning threshold) | `string` | `3` | no | +| [unregister\_net\_device\_enabled](#input\_unregister\_net\_device\_enabled) | Flag to enable Unregister net device monitor | `string` | `"true"` | no | +| [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](#input\_unregister\_net\_device\_message) | Custom message for Unregister net device monitor | `string` | `""` | no | +| [unregister\_net\_device\_threshold\_critical](#input\_unregister\_net\_device\_threshold\_critical) | Unregister net device critical threshold | `number` | `3` | no | +| [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](#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](#input\_volume\_inodes\_enabled) | Flag to enable Volume inodes monitor | `string` | `"true"` | no | +| [volume\_inodes\_extra\_tags](#input\_volume\_inodes\_extra\_tags) | Extra tags for Volume inodes monitor | `list(string)` | `[]` | no | +| [volume\_inodes\_message](#input\_volume\_inodes\_message) | Custom message for Volume inodes monitor | `string` | `""` | no | +| [volume\_inodes\_threshold\_critical](#input\_volume\_inodes\_threshold\_critical) | Volume inodes critical threshold | `number` | `95` | no | +| [volume\_inodes\_threshold\_warning](#input\_volume\_inodes\_threshold\_warning) | Volume inodes warning threshold | `number` | `90` | no | +| [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](#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](#input\_volume\_space\_enabled) | Flag to enable Volume space monitor | `string` | `"true"` | no | +| [volume\_space\_extra\_tags](#input\_volume\_space\_extra\_tags) | Extra tags for Volume space monitor | `list(string)` | `[]` | no | +| [volume\_space\_message](#input\_volume\_space\_message) | Custom message for Volume space monitor | `string` | `""` | no | +| [volume\_space\_threshold\_critical](#input\_volume\_space\_threshold\_critical) | Volume space critical threshold | `number` | `95` | no | +| [volume\_space\_threshold\_warning](#input\_volume\_space\_threshold\_warning) | Volume space warning threshold | `number` | `90` | no | +| [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](#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 | Name | Description | |------|-------------| -| disk\_out\_id | id for monitor disk\_out | -| disk\_pressure\_id | id for monitor disk\_pressure | -| kubelet\_ping\_id | id for monitor kubelet\_ping | -| kubelet\_syncloop\_id | id for monitor kubelet\_syncloop | -| memory\_pressure\_id | id for monitor memory\_pressure | -| node\_unschedulable\_id | id for monitor node\_unschedulable | -| ready\_id | id for monitor ready | -| unregister\_net\_device\_id | id for monitor unregister\_net\_device | -| volume\_inodes\_id | id for monitor volume\_inodes | -| volume\_space\_id | id for monitor volume\_space | - +| [disk\_out\_id](#output\_disk\_out\_id) | id for monitor disk\_out | +| [disk\_pressure\_id](#output\_disk\_pressure\_id) | id for monitor disk\_pressure | +| [kubelet\_ping\_id](#output\_kubelet\_ping\_id) | id for monitor kubelet\_ping | +| [kubelet\_syncloop\_id](#output\_kubelet\_syncloop\_id) | id for monitor kubelet\_syncloop | +| [memory\_pressure\_id](#output\_memory\_pressure\_id) | id for monitor memory\_pressure | +| [node\_unschedulable\_id](#output\_node\_unschedulable\_id) | id for monitor node\_unschedulable | +| [ready\_id](#output\_ready\_id) | id for monitor ready | +| [unregister\_net\_device\_id](#output\_unregister\_net\_device\_id) | id for monitor unregister\_net\_device | +| [volume\_inodes\_id](#output\_volume\_inodes\_id) | id for monitor volume\_inodes | +| [volume\_space\_id](#output\_volume\_space\_id) | id for monitor volume\_space | ## Related documentation * [Datadog metrics](https://docs.datadoghq.com/agent/kubernetes/metrics/) diff --git a/caas/kubernetes/node/versions.tf b/caas/kubernetes/node/versions.tf index 1c28e79..a5c6a87 100644 --- a/caas/kubernetes/node/versions.tf +++ b/caas/kubernetes/node/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/caas/kubernetes/pod/README.md b/caas/kubernetes/pod/README.md index b9196e5..947267f 100644 --- a/caas/kubernetes/pod/README.md +++ b/caas/kubernetes/pod/README.md @@ -25,49 +25,71 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a | +| [filter-tags-nocontainercreating](#module\_filter-tags-nocontainercreating) | ../../../common/filter-tags | n/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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| environment | Architecture environment | `any` | n/a | yes | -| error\_enabled | Flag to enable Pod errors monitor | `string` | `"true"` | no | -| error\_extra\_tags | Extra tags for Pod errors monitor | `list(string)` | `[]` | no | -| error\_message | Custom message for Pod errors monitor | `string` | `""` | no | -| error\_threshold\_critical | error critical threshold | `number` | `0.5` | no | -| 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 | -| 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 | -| 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 | -| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| terminated\_extra\_tags | Extra tags for Pod terminated monitor | `list(string)` | `[]` | no | -| terminated\_message | Custom message for Pod terminated monitor | `string` | `""` | no | -| terminated\_threshold\_critical | terminated critical threshold | `number` | `0.5` | no | -| 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 | -| 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 | +| [environment](#input\_environment) | Architecture environment | `any` | n/a | yes | +| [error\_enabled](#input\_error\_enabled) | Flag to enable Pod errors monitor | `string` | `"true"` | no | +| [error\_extra\_tags](#input\_error\_extra\_tags) | Extra tags for Pod errors monitor | `list(string)` | `[]` | no | +| [error\_message](#input\_error\_message) | Custom message for Pod errors monitor | `string` | `""` | no | +| [error\_threshold\_critical](#input\_error\_threshold\_critical) | error critical threshold | `number` | `0.5` | no | +| [error\_threshold\_warning](#input\_error\_threshold\_warning) | error warning threshold | `number` | `0` | no | +| [error\_time\_aggregator](#input\_error\_time\_aggregator) | Monitor aggregator for Pod errors [available values: min, max or avg] | `string` | `"min"` | no | +| [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](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [pod\_phase\_status\_enabled](#input\_pod\_phase\_status\_enabled) | Flag to enable Pod phase status monitor | `string` | `"true"` | no | +| [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](#input\_pod\_phase\_status\_message) | Custom message for Pod phase status monitor | `string` | `""` | no | +| [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](#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](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [terminated\_enabled](#input\_terminated\_enabled) | Flag to enable Pod terminated monitor | `string` | `"true"` | no | +| [terminated\_extra\_tags](#input\_terminated\_extra\_tags) | Extra tags for Pod terminated monitor | `list(string)` | `[]` | no | +| [terminated\_message](#input\_terminated\_message) | Custom message for Pod terminated monitor | `string` | `""` | no | +| [terminated\_threshold\_critical](#input\_terminated\_threshold\_critical) | terminated critical threshold | `number` | `0.5` | no | +| [terminated\_threshold\_warning](#input\_terminated\_threshold\_warning) | terminated warning threshold | `number` | `0` | no | +| [terminated\_time\_aggregator](#input\_terminated\_time\_aggregator) | Monitor aggregator for Pod terminated [available values: min, max or avg] | `string` | `"sum"` | no | +| [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 | Name | Description | |------|-------------| -| error\_id | id for monitor error | -| pod\_phase\_status\_id | id for monitor pod\_phase\_status | -| terminated\_id | id for monitor terminated | - +| [error\_id](#output\_error\_id) | id for monitor error | +| [pod\_phase\_status\_id](#output\_pod\_phase\_status\_id) | id for monitor pod\_phase\_status | +| [terminated\_id](#output\_terminated\_id) | id for monitor terminated | ## Related documentation * [Datadog metrics](https://docs.datadoghq.com/agent/kubernetes/metrics/) diff --git a/caas/kubernetes/pod/versions.tf b/caas/kubernetes/pod/versions.tf index 1c28e79..a5c6a87 100644 --- a/caas/kubernetes/pod/versions.tf +++ b/caas/kubernetes/pod/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/caas/kubernetes/velero/README.md b/caas/kubernetes/velero/README.md index c1f5589..7df2d36 100644 --- a/caas/kubernetes/velero/README.md +++ b/caas/kubernetes/velero/README.md @@ -27,53 +27,76 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| environment | Architecture environment | `any` | n/a | yes | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | +| [environment](#input\_environment) | Architecture environment | `any` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [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](#input\_velero\_backup\_deletion\_failure\_extra\_tags) | Extra tags for Velero backup deletion failure monitor | `list(string)` | `[]` | no | +| [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](#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](#input\_velero\_backup\_failure\_enabled) | Flag to enable Velero backup failure monitor | `string` | `"true"` | no | +| [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](#input\_velero\_backup\_failure\_monitor\_message) | Custom message for Velero backup failure monitor | `string` | `""` | no | +| [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](#input\_velero\_backup\_partial\_failure\_enabled) | Flag to enable Velero backup partial failure monitor | `string` | `"true"` | no | +| [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](#input\_velero\_backup\_partial\_failure\_monitor\_message) | Custom message for Velero backup partial failure monitor | `string` | `""` | no | +| [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](#input\_velero\_scheduled\_backup\_missing\_enabled) | Flag to enable Velero scheduled backup missing monitor | `string` | `"true"` | no | +| [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](#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](#input\_velero\_scheduled\_backup\_missing\_monitor\_no\_data\_timeframe) | No data timeframe in minutes | `number` | `2880` | no | +| [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](#input\_velero\_volume\_snapshot\_failure\_enabled) | Flag to enable Velero volume snapshot failure monitor | `string` | `"true"` | no | +| [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](#input\_velero\_volume\_snapshot\_failure\_monitor\_message) | Custom message for Velero volume snapshot failure monitor | `string` | `""` | no | +| [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 | Name | Description | |------|-------------| -| velero\_backup\_deletion\_failure\_id | id for monitor velero\_backup\_deletion\_failure | -| velero\_backup\_failure\_id | id for monitor velero\_backup\_failure | -| velero\_backup\_partial\_failure\_id | id for monitor velero\_backup\_partial\_failure | -| velero\_scheduled\_backup\_missing\_id | id for monitor velero\_scheduled\_backup\_missing | -| velero\_volume\_snapshot\_failure\_id | id for monitor velero\_volume\_snapshot\_failure | - +| [velero\_backup\_deletion\_failure\_id](#output\_velero\_backup\_deletion\_failure\_id) | id for monitor velero\_backup\_deletion\_failure | +| [velero\_backup\_failure\_id](#output\_velero\_backup\_failure\_id) | id for monitor velero\_backup\_failure | +| [velero\_backup\_partial\_failure\_id](#output\_velero\_backup\_partial\_failure\_id) | id for monitor velero\_backup\_partial\_failure | +| [velero\_scheduled\_backup\_missing\_id](#output\_velero\_scheduled\_backup\_missing\_id) | id for monitor velero\_scheduled\_backup\_missing | +| [velero\_volume\_snapshot\_failure\_id](#output\_velero\_volume\_snapshot\_failure\_id) | id for monitor velero\_volume\_snapshot\_failure | ## Related documentation Documentation for Datadog prometheus intergration: https://docs.datadoghq.com/integrations/prometheus/ diff --git a/caas/kubernetes/velero/versions.tf b/caas/kubernetes/velero/versions.tf index 1c28e79..a5c6a87 100644 --- a/caas/kubernetes/velero/versions.tf +++ b/caas/kubernetes/velero/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/caas/kubernetes/workload/README.md b/caas/kubernetes/workload/README.md index 5a6f329..1503175 100644 --- a/caas/kubernetes/workload/README.md +++ b/caas/kubernetes/workload/README.md @@ -27,58 +27,80 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| cronjob\_enabled | Flag to enable Cronjob monitor | `string` | `"true"` | no | -| cronjob\_extra\_tags | Extra tags for Cronjob monitor | `list(string)` | `[]` | no | -| cronjob\_message | Custom message for Cronjob monitor | `string` | `""` | no | -| cronjob\_threshold\_warning | Cronjob monitor (warning threshold) | `string` | `3` | no | -| environment | Architecture environment | `any` | n/a | yes | -| 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 | -| 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 | -| job\_enabled | Flag to enable Job monitor | `string` | `"true"` | no | -| job\_extra\_tags | Extra tags for Job monitor | `list(string)` | `[]` | no | -| job\_message | Custom message for Job monitor | `string` | `""` | no | -| job\_threshold\_warning | Job monitor (warning threshold) | `string` | `3` | no | -| 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 | -| 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 | -| replica\_available\_enabled | Flag to enable Available replica monitor | `string` | `"true"` | no | -| replica\_available\_extra\_tags | Extra tags for Available replicamonitor | `list(string)` | `[]` | no | -| replica\_available\_message | Custom message for Available replica monitor | `string` | `""` | no | -| 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 | -| 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 | -| replica\_current\_extra\_tags | Extra tags for Current replica monitor | `list(string)` | `[]` | no | -| replica\_current\_message | Custom message for Current replica monitor | `string` | `""` | no | -| 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 | -| 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 | -| replica\_ready\_extra\_tags | Extra tags for Ready replica monitor | `list(string)` | `[]` | no | -| replica\_ready\_message | Custom message for Ready replica monitor | `string` | `""` | no | -| 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 | -| 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 | +| [cronjob\_enabled](#input\_cronjob\_enabled) | Flag to enable Cronjob monitor | `string` | `"true"` | no | +| [cronjob\_extra\_tags](#input\_cronjob\_extra\_tags) | Extra tags for Cronjob monitor | `list(string)` | `[]` | no | +| [cronjob\_message](#input\_cronjob\_message) | Custom message for Cronjob monitor | `string` | `""` | no | +| [cronjob\_threshold\_warning](#input\_cronjob\_threshold\_warning) | Cronjob monitor (warning threshold) | `string` | `3` | no | +| [environment](#input\_environment) | Architecture environment | `any` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [job\_enabled](#input\_job\_enabled) | Flag to enable Job monitor | `string` | `"true"` | no | +| [job\_extra\_tags](#input\_job\_extra\_tags) | Extra tags for Job monitor | `list(string)` | `[]` | no | +| [job\_message](#input\_job\_message) | Custom message for Job monitor | `string` | `""` | no | +| [job\_threshold\_warning](#input\_job\_threshold\_warning) | Job monitor (warning threshold) | `string` | `3` | no | +| [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [replica\_available\_enabled](#input\_replica\_available\_enabled) | Flag to enable Available replica monitor | `string` | `"true"` | no | +| [replica\_available\_extra\_tags](#input\_replica\_available\_extra\_tags) | Extra tags for Available replicamonitor | `list(string)` | `[]` | no | +| [replica\_available\_message](#input\_replica\_available\_message) | Custom message for Available replica monitor | `string` | `""` | no | +| [replica\_available\_threshold\_critical](#input\_replica\_available\_threshold\_critical) | Available replica critical threshold | `number` | `1` | no | +| [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](#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](#input\_replica\_current\_enabled) | Flag to enable Current replica monitor | `string` | `"true"` | no | +| [replica\_current\_extra\_tags](#input\_replica\_current\_extra\_tags) | Extra tags for Current replica monitor | `list(string)` | `[]` | no | +| [replica\_current\_message](#input\_replica\_current\_message) | Custom message for Current replica monitor | `string` | `""` | no | +| [replica\_current\_threshold\_critical](#input\_replica\_current\_threshold\_critical) | Current replica critical threshold | `number` | `1` | no | +| [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](#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](#input\_replica\_ready\_enabled) | Flag to enable Ready replica monitor | `string` | `"true"` | no | +| [replica\_ready\_extra\_tags](#input\_replica\_ready\_extra\_tags) | Extra tags for Ready replica monitor | `list(string)` | `[]` | no | +| [replica\_ready\_message](#input\_replica\_ready\_message) | Custom message for Ready replica monitor | `string` | `""` | no | +| [replica\_ready\_threshold\_critical](#input\_replica\_ready\_threshold\_critical) | Ready replica critical threshold | `number` | `1` | no | +| [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](#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 | Name | Description | |------|-------------| -| cronjob\_id | id for monitor cronjob | -| job\_id | id for monitor job | -| replica\_available\_id | id for monitor replica\_available | -| replica\_current\_id | id for monitor replica\_current | -| replica\_ready\_id | id for monitor replica\_ready | - +| [cronjob\_id](#output\_cronjob\_id) | id for monitor cronjob | +| [job\_id](#output\_job\_id) | id for monitor job | +| [replica\_available\_id](#output\_replica\_available\_id) | id for monitor replica\_available | +| [replica\_current\_id](#output\_replica\_current\_id) | id for monitor replica\_current | +| [replica\_ready\_id](#output\_replica\_ready\_id) | id for monitor replica\_ready | ## Related documentation * [Datadog metrics](https://docs.datadoghq.com/agent/kubernetes/metrics/) diff --git a/caas/kubernetes/workload/versions.tf b/caas/kubernetes/workload/versions.tf index 1c28e79..a5c6a87 100644 --- a/caas/kubernetes/workload/versions.tf +++ b/caas/kubernetes/workload/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/aws/alb/README.md b/cloud/aws/alb/README.md index 7017038..c377a9c 100644 --- a/cloud/aws/alb/README.md +++ b/cloud/aws/alb/README.md @@ -28,76 +28,99 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| 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 | -| 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 | -| 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 | -| 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 | -| environment | Architecture environment | `string` | n/a | yes | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| latency\_enabled | Flag to enable ALB latency monitor | `string` | `"true"` | no | -| latency\_extra\_tags | Extra tags for ALB latency monitor | `list(string)` | `[]` | no | -| latency\_message | Custom message for ALB latency monitor | `string` | `""` | no | -| latency\_threshold\_critical | latency critical threshold in seconds | `number` | `3` | no | -| 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 | -| 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 | -| 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 | -| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [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](#input\_alb\_no\_healthy\_instances\_extra\_tags) | Extra tags for ALB no healthy instances monitor | `list(string)` | `[]` | no | +| [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](#input\_alb\_no\_healthy\_instances\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no | +| [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](#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](#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](#input\_artificial\_requests\_count) | Number of false requests used to mitigate false positive in case of low trafic | `number` | `5` | no | +| [environment](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [httpcode\_alb\_4xx\_enabled](#input\_httpcode\_alb\_4xx\_enabled) | Flag to enable ALB httpcode 4xx monitor | `string` | `"true"` | no | +| [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](#input\_httpcode\_alb\_4xx\_message) | Custom message for ALB httpcode 4xx monitor | `string` | `""` | no | +| [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](#input\_httpcode\_alb\_4xx\_threshold\_warning) | loadbalancer 4xx warning threshold in percentage | `number` | `60` | no | +| [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](#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](#input\_httpcode\_alb\_5xx\_enabled) | Flag to enable ALB httpcode 5xx monitor | `string` | `"true"` | no | +| [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](#input\_httpcode\_alb\_5xx\_message) | Custom message for ALB httpcode 5xx monitor | `string` | `""` | no | +| [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](#input\_httpcode\_alb\_5xx\_threshold\_warning) | loadbalancer 5xx warning threshold in percentage | `number` | `60` | no | +| [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](#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](#input\_httpcode\_target\_4xx\_enabled) | Flag to enable ALB target httpcode 4xx monitor | `string` | `"true"` | no | +| [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](#input\_httpcode\_target\_4xx\_message) | Custom message for ALB target httpcode 4xx monitor | `string` | `""` | no | +| [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](#input\_httpcode\_target\_4xx\_threshold\_warning) | target 4xx warning threshold in percentage | `number` | `60` | no | +| [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](#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](#input\_httpcode\_target\_5xx\_enabled) | Flag to enable ALB target httpcode 5xx monitor | `string` | `"true"` | no | +| [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](#input\_httpcode\_target\_5xx\_message) | Custom message for ALB target httpcode 5xx monitor | `string` | `""` | no | +| [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](#input\_httpcode\_target\_5xx\_threshold\_warning) | target 5xx warning threshold in percentage | `number` | `60` | no | +| [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](#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](#input\_latency\_enabled) | Flag to enable ALB latency monitor | `string` | `"true"` | no | +| [latency\_extra\_tags](#input\_latency\_extra\_tags) | Extra tags for ALB latency monitor | `list(string)` | `[]` | no | +| [latency\_message](#input\_latency\_message) | Custom message for ALB latency monitor | `string` | `""` | no | +| [latency\_threshold\_critical](#input\_latency\_threshold\_critical) | latency critical threshold in seconds | `number` | `3` | no | +| [latency\_threshold\_warning](#input\_latency\_threshold\_warning) | latency warning threshold in seconds | `number` | `1` | no | +| [latency\_time\_aggregator](#input\_latency\_time\_aggregator) | Monitor aggregator for ALB latency [available values: min, max or avg] | `string` | `"min"` | no | +| [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](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | ## Outputs | Name | Description | |------|-------------| -| ALB\_httpcode\_4xx\_id | id for monitor ALB\_httpcode\_4xx | -| ALB\_httpcode\_5xx\_id | id for monitor ALB\_httpcode\_5xx | -| ALB\_httpcode\_target\_4xx\_id | id for monitor ALB\_httpcode\_target\_4xx | -| ALB\_httpcode\_target\_5xx\_id | id for monitor ALB\_httpcode\_target\_5xx | -| ALB\_latency\_id | id for monitor ALB\_latency | -| ALB\_no\_healthy\_instances\_id | id for monitor ALB\_no\_healthy\_instances | - +| [ALB\_httpcode\_4xx\_id](#output\_ALB\_httpcode\_4xx\_id) | id for monitor ALB\_httpcode\_4xx | +| [ALB\_httpcode\_5xx\_id](#output\_ALB\_httpcode\_5xx\_id) | id for monitor ALB\_httpcode\_5xx | +| [ALB\_httpcode\_target\_4xx\_id](#output\_ALB\_httpcode\_target\_4xx\_id) | id for monitor ALB\_httpcode\_target\_4xx | +| [ALB\_httpcode\_target\_5xx\_id](#output\_ALB\_httpcode\_target\_5xx\_id) | id for monitor ALB\_httpcode\_target\_5xx | +| [ALB\_latency\_id](#output\_ALB\_latency\_id) | id for monitor ALB\_latency | +| [ALB\_no\_healthy\_instances\_id](#output\_ALB\_no\_healthy\_instances\_id) | id for monitor ALB\_no\_healthy\_instances | ## Related documentation DataDog blog: [https://www.datadoghq.com/blog/monitor-application-load-balancer/](https://www.datadoghq.com/blog/monitor-application-load-balancer/) diff --git a/cloud/aws/alb/versions.tf b/cloud/aws/alb/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/aws/alb/versions.tf +++ b/cloud/aws/alb/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/aws/apigateway/README.md b/cloud/aws/apigateway/README.md index faf74ef..a080e78 100644 --- a/cloud/aws/apigateway/README.md +++ b/cloud/aws/apigateway/README.md @@ -25,50 +25,68 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [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 | 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 | -| environment | Environment | `string` | n/a | yes | -| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | -| filter\_tags | Tags used for filtering | `string` | `"*"` | no | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| latency\_message | Custom message for API Gateway latency monitor | `string` | `""` | no | -| latency\_threshold\_critical | Alerting threshold in milliseconds | `number` | `3000` | no | -| 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 | -| 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 | -| 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 | -| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [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](#input\_environment) | Environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [filter\_tags](#input\_filter\_tags) | Tags used for filtering | `string` | `"*"` | no | +| [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](#input\_http\_4xx\_requests\_extra\_tags) | Extra tags for API Gateway HTTP 4xx requests monitor | `list(string)` | `[]` | no | +| [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](#input\_http\_4xx\_requests\_threshold\_critical) | Maximum critical acceptable percent of 4xx errors | `number` | `30` | no | +| [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](#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](#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](#input\_http\_5xx\_requests\_enabled) | Flag to enable API Gateway HTTP 5xx requests monitor | `string` | `"true"` | no | +| [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](#input\_http\_5xx\_requests\_message) | Custom message for API Gateway HTTP 5xx requests monitor | `string` | `""` | no | +| [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](#input\_http\_5xx\_requests\_threshold\_warning) | Maximum warning acceptable percent of 5xx errors | `number` | `10` | no | +| [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](#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](#input\_latency\_enabled) | Flag to enable API Gateway latency monitor | `string` | `"true"` | no | +| [latency\_extra\_tags](#input\_latency\_extra\_tags) | Extra tags for API Gateway latency monitor | `list(string)` | `[]` | no | +| [latency\_message](#input\_latency\_message) | Custom message for API Gateway latency monitor | `string` | `""` | no | +| [latency\_threshold\_critical](#input\_latency\_threshold\_critical) | Alerting threshold in milliseconds | `number` | `3000` | no | +| [latency\_threshold\_warning](#input\_latency\_threshold\_warning) | Warning threshold in milliseconds | `number` | `1000` | no | +| [latency\_time\_aggregator](#input\_latency\_time\_aggregator) | Monitor aggregator for API Gateway latency [available values: min, max or avg] | `string` | `"min"` | no | +| [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](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | ## Outputs | Name | Description | |------|-------------| -| API\_Gateway\_latency\_id | id for monitor API\_Gateway\_latency | -| 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 | - +| [API\_Gateway\_latency\_id](#output\_API\_Gateway\_latency\_id) | id for monitor API\_Gateway\_latency | +| [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](#output\_API\_http\_5xx\_errors\_count\_id) | id for monitor API\_http\_5xx\_errors\_count | ## Related documentation DataDog documentation: [https://docs.datadoghq.com/integrations/amazon_api_gateway/](https://docs.datadoghq.com/integrations/amazon_api_gateway/) diff --git a/cloud/aws/apigateway/versions.tf b/cloud/aws/apigateway/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/aws/apigateway/versions.tf +++ b/cloud/aws/apigateway/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/aws/beanstalk/README.md b/cloud/aws/beanstalk/README.md index 61ec6ea..7239061 100644 --- a/cloud/aws/beanstalk/README.md +++ b/cloud/aws/beanstalk/README.md @@ -26,61 +26,83 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| environment | Architecture Environment | `string` | n/a | yes | -| 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 | -| 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 | -| health\_enabled | Flag to enable Beanstalk Health monitor | `string` | `"true"` | no | -| health\_extra\_tags | Extra tags for health monitor | `list(string)` | `[]` | no | -| health\_message | Custom message for health monitor | `string` | `""` | no | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| root\_filesystem\_usage\_timeout\_h | File system usage auto-resolving state (in hours) | `number` | `0` | no | +| [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](#input\_application\_5xx\_error\_rate\_extra\_tags) | Extra tags for application 5xx error rate monitor | `list(string)` | `[]` | no | +| [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](#input\_application\_5xx\_error\_rate\_threshold\_critical) | 5xx Error rate critical threshold in percent | `number` | `5` | no | +| [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](#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](#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](#input\_application\_latency\_p90\_enabled) | Flag to enable Beanstalk application latency P90 monitor | `string` | `"true"` | no | +| [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](#input\_application\_latency\_p90\_message) | Custom message for application latency P90 monitor | `string` | `""` | no | +| [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](#input\_application\_latency\_p90\_threshold\_warning) | P90 Latency warning threshold in seconds | `string` | `0.3` | no | +| [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](#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](#input\_environment) | Architecture Environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [health\_enabled](#input\_health\_enabled) | Flag to enable Beanstalk Health monitor | `string` | `"true"` | no | +| [health\_extra\_tags](#input\_health\_extra\_tags) | Extra tags for health monitor | `list(string)` | `[]` | no | +| [health\_message](#input\_health\_message) | Custom message for health monitor | `string` | `""` | no | +| [health\_no\_data\_timeframe](#input\_health\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `20` | no | +| [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](#input\_health\_threshold\_warning) | Health critical threshold (see the `aws.elasticbeanstalk.environment_health` values in the Datadog documentation) | `number` | `15` | no | +| [health\_time\_aggregator](#input\_health\_time\_aggregator) | Monitor aggregator for beanstalk health [available values: min, max or avg] | `string` | `"min"` | no | +| [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](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [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](#input\_root\_filesystem\_usage\_enabled) | Flag to enable Beanstalk instance file system usage monitor | `string` | `"true"` | no | +| [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](#input\_root\_filesystem\_usage\_message) | Custom message for application file system usage | `string` | `""` | no | +| [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](#input\_root\_filesystem\_usage\_threshold\_warning) | File system usage warning threshold in percent | `string` | `80` | no | +| [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](#input\_root\_filesystem\_usage\_timeout\_h) | File system usage auto-resolving state (in hours) | `number` | `0` | no | ## Outputs | Name | Description | |------|-------------| -| application\_5xx\_error\_rate\_id | id for monitor application\_5xx\_error\_rate | -| application\_latency\_p90\_id | id for monitor application\_latency\_p90 | -| health\_id | id for monitor health | -| root\_filesystem\_usage\_id | id for monitor root\_filesystem\_usage | - +| [application\_5xx\_error\_rate\_id](#output\_application\_5xx\_error\_rate\_id) | id for monitor application\_5xx\_error\_rate | +| [application\_latency\_p90\_id](#output\_application\_latency\_p90\_id) | id for monitor application\_latency\_p90 | +| [health\_id](#output\_health\_id) | id for monitor health | +| [root\_filesystem\_usage\_id](#output\_root\_filesystem\_usage\_id) | id for monitor root\_filesystem\_usage | ## Related documentation Datadog documentation: [https://docs.datadoghq.com/integrations/amazon_elasticbeanstalk/](https://docs.datadoghq.com/integrations/amazon_elasticbeanstalk/) diff --git a/cloud/aws/beanstalk/versions.tf b/cloud/aws/beanstalk/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/aws/beanstalk/versions.tf +++ b/cloud/aws/beanstalk/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/aws/ecs/common/README.md b/cloud/aws/ecs/common/README.md index 9264227..6e029a1 100644 --- a/cloud/aws/ecs/common/README.md +++ b/cloud/aws/ecs/common/README.md @@ -25,51 +25,71 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| environment | Architecture environment | `string` | n/a | yes | -| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| service\_missing\_tasks\_timeframe | Timeframe for the Service Missing Tasks monitor | `string` | `"last_5m"` | no | +| [environment](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [filter\_tags](#input\_filter\_tags) | Tags used for filtering | `string` | `"*"` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [service\_cpu\_utilization\_enabled](#input\_service\_cpu\_utilization\_enabled) | Flag to enable Service CPU Utilization monitor | `string` | `"false"` | no | +| [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](#input\_service\_cpu\_utilization\_message) | Custom message for the Service CPU Utilization monitor | `string` | `""` | no | +| [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](#input\_service\_cpu\_utilization\_threshold\_warning) | Warning threshold for the Service CPU Utilization monitor | `string` | `"80"` | no | +| [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](#input\_service\_cpu\_utilization\_timeframe) | Timeframe for the Service CPU Utilization monitor | `string` | `"last_5m"` | no | +| [service\_memory\_utilization\_enabled](#input\_service\_memory\_utilization\_enabled) | Flag to enable Service Memory Utilization monitor | `string` | `"false"` | no | +| [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](#input\_service\_memory\_utilization\_message) | Custom message for the Service Memory Utilization monitor | `string` | `""` | no | +| [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](#input\_service\_memory\_utilization\_threshold\_warning) | Warning threshold for the Service Memory Utilization monitor | `string` | `85` | no | +| [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](#input\_service\_memory\_utilization\_timeframe) | Timeframe for the Service Memory Utilization monitor | `string` | `"last_5m"` | no | +| [service\_missing\_tasks\_enabled](#input\_service\_missing\_tasks\_enabled) | Flag to enable Service Missing Tasks monitor | `string` | `"true"` | no | +| [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](#input\_service\_missing\_tasks\_message) | Custom message for the Service Missing Tasks monitor | `string` | `""` | no | +| [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](#input\_service\_missing\_tasks\_threshold\_warning) | Warning threshold for the Service Missing Tasks monitor | `string` | `80` | no | +| [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](#input\_service\_missing\_tasks\_timeframe) | Timeframe for the Service Missing Tasks monitor | `string` | `"last_5m"` | no | ## Outputs | Name | Description | |------|-------------| -| service\_cpu\_utilization\_id | id for monitor service\_cpu\_utilization | -| service\_memory\_utilization\_id | id for monitor service\_memory\_utilization | -| service\_missing\_tasks\_id | id for monitor service\_missing\_tasks | - +| [service\_cpu\_utilization\_id](#output\_service\_cpu\_utilization\_id) | id for monitor service\_cpu\_utilization | +| [service\_memory\_utilization\_id](#output\_service\_memory\_utilization\_id) | id for monitor service\_memory\_utilization | +| [service\_missing\_tasks\_id](#output\_service\_missing\_tasks\_id) | id for monitor service\_missing\_tasks | ## Related documentation diff --git a/cloud/aws/ecs/common/versions.tf b/cloud/aws/ecs/common/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/aws/ecs/common/versions.tf +++ b/cloud/aws/ecs/common/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/aws/ecs/ec2-cluster/README.md b/cloud/aws/ecs/ec2-cluster/README.md index c7a7229..1a34126 100644 --- a/cloud/aws/ecs/ec2-cluster/README.md +++ b/cloud/aws/ecs/ec2-cluster/README.md @@ -25,48 +25,68 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| cluster\_memory\_reservation\_timeframe | Timeframe for the Cluster Memory Reservation monitor | `string` | `"last_5m"` | no | -| environment | Architecture environment | `string` | n/a | yes | -| 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 | -| 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 | -| 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 | -| 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 | +| [agent\_status\_enabled](#input\_agent\_status\_enabled) | Flag to enable Agent Status monitor | `string` | `"true"` | no | +| [agent\_status\_extra\_tags](#input\_agent\_status\_extra\_tags) | Extra tags for Agent Status monitor | `list(string)` | `[]` | no | +| [agent\_status\_message](#input\_agent\_status\_message) | Custom message for the Agent Status monitor | `string` | `""` | no | +| [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](#input\_agent\_status\_threshold\_warning) | Warning threshold for the Agent Status monitor | `string` | `3` | no | +| [cluster\_cpu\_utilization\_enabled](#input\_cluster\_cpu\_utilization\_enabled) | Flag to enable Cluster CPU utilization monitor | `string` | `"false"` | no | +| [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](#input\_cluster\_cpu\_utilization\_message) | Custom message for the Cluster CPU Utilization monitor | `string` | `""` | no | +| [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](#input\_cluster\_cpu\_utilization\_threshold\_warning) | Warning threshold for the Cluster CPU Utilization monitor | `string` | `85` | no | +| [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](#input\_cluster\_cpu\_utilization\_timeframe) | Timeframe for the Cluster CPU Utilization monitor | `string` | `"last_5m"` | no | +| [cluster\_memory\_reservation\_enabled](#input\_cluster\_memory\_reservation\_enabled) | Flag to enable Cluster memory reservation monitor | `string` | `"false"` | no | +| [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](#input\_cluster\_memory\_reservation\_message) | Custom message for the Cluster Memory Reservation monitor | `string` | `""` | no | +| [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](#input\_cluster\_memory\_reservation\_threshold\_warning) | Warning threshold for the Cluster Memory Reservation monitor | `string` | `85` | no | +| [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](#input\_cluster\_memory\_reservation\_timeframe) | Timeframe for the Cluster Memory Reservation monitor | `string` | `"last_5m"` | no | +| [environment](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | ## Outputs | Name | Description | |------|-------------| -| cluster\_cpu\_utilization\_id | id for monitor cluster\_cpu\_utilization | -| cluster\_memory\_reservation\_id | id for monitor cluster\_memory\_reservation | -| ecs\_agent\_status\_id | id for monitor ecs\_agent\_status | - +| [cluster\_cpu\_utilization\_id](#output\_cluster\_cpu\_utilization\_id) | id for monitor cluster\_cpu\_utilization | +| [cluster\_memory\_reservation\_id](#output\_cluster\_memory\_reservation\_id) | id for monitor cluster\_memory\_reservation | +| [ecs\_agent\_status\_id](#output\_ecs\_agent\_status\_id) | id for monitor ecs\_agent\_status | ## Related documentation diff --git a/cloud/aws/ecs/ec2-cluster/versions.tf b/cloud/aws/ecs/ec2-cluster/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/aws/ecs/ec2-cluster/versions.tf +++ b/cloud/aws/ecs/ec2-cluster/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/aws/ecs/fargate/README.md b/cloud/aws/ecs/fargate/README.md index 8488a71..28f3ce0 100644 --- a/cloud/aws/ecs/fargate/README.md +++ b/cloud/aws/ecs/fargate/README.md @@ -25,49 +25,69 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| cpu\_utilization\_enabled | Flag to enable monitor | `string` | `"false"` | no | -| cpu\_utilization\_extra\_tags | Extra tags for the monitor | `list(string)` | `[]` | no | -| cpu\_utilization\_message | Custom message for the monitor | `string` | `""` | no | -| cpu\_utilization\_threshold\_critical | Critical threshold for the monitor | `string` | `90` | no | -| 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 | -| cpu\_utilization\_timeframe | Timeframe for the monitor | `string` | `"last_5m"` | no | -| environment | Architecture environment | `string` | n/a | yes | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | -| service\_check\_enabled | Flag to enable monitor | `bool` | `true` | no | -| service\_check\_extra\_tags | Extra tags for the monitor | `list(string)` | `[]` | no | -| service\_check\_message | Custom message for the monitor | `string` | `""` | no | -| service\_check\_no\_data\_timeframe | No data timeframe in minutes | `number` | `10` | no | -| service\_check\_threshold\_warning | Warning threshold | `number` | `3` | no | +| [cpu\_utilization\_enabled](#input\_cpu\_utilization\_enabled) | Flag to enable monitor | `string` | `"false"` | no | +| [cpu\_utilization\_extra\_tags](#input\_cpu\_utilization\_extra\_tags) | Extra tags for the monitor | `list(string)` | `[]` | no | +| [cpu\_utilization\_message](#input\_cpu\_utilization\_message) | Custom message for the monitor | `string` | `""` | no | +| [cpu\_utilization\_threshold\_critical](#input\_cpu\_utilization\_threshold\_critical) | Critical threshold for the monitor | `string` | `90` | no | +| [cpu\_utilization\_threshold\_warning](#input\_cpu\_utilization\_threshold\_warning) | Warning threshold for the monitor | `string` | `85` | no | +| [cpu\_utilization\_time\_aggregator](#input\_cpu\_utilization\_time\_aggregator) | Monitor aggregator (min, max or avg) | `string` | `"min"` | no | +| [cpu\_utilization\_timeframe](#input\_cpu\_utilization\_timeframe) | Timeframe for the monitor | `string` | `"last_5m"` | no | +| [environment](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `bool` | `true` | no | +| [memory\_utilization\_enabled](#input\_memory\_utilization\_enabled) | Flag to enable Fargate Memory utilization monitor | `string` | `"false"` | no | +| [memory\_utilization\_extra\_tags](#input\_memory\_utilization\_extra\_tags) | Extra tags for Fargate Memory utilization monitor | `list(string)` | `[]` | no | +| [memory\_utilization\_message](#input\_memory\_utilization\_message) | Custom message for the Fargate Memory Utilization monitor | `string` | `""` | no | +| [memory\_utilization\_threshold\_critical](#input\_memory\_utilization\_threshold\_critical) | Critical threshold for the Fargate Memory Utilization monitor | `string` | `90` | no | +| [memory\_utilization\_threshold\_warning](#input\_memory\_utilization\_threshold\_warning) | Warning threshold for the Fargate Memory Utilization monitor | `string` | `85` | no | +| [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](#input\_memory\_utilization\_timeframe) | Timeframe for the Fargate Memory Utilization monitor | `string` | `"last_5m"` | no | +| [message](#input\_message) | Message sent when a monitor is triggered | `string` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [service\_check\_enabled](#input\_service\_check\_enabled) | Flag to enable monitor | `bool` | `true` | no | +| [service\_check\_extra\_tags](#input\_service\_check\_extra\_tags) | Extra tags for the monitor | `list(string)` | `[]` | no | +| [service\_check\_message](#input\_service\_check\_message) | Custom message for the monitor | `string` | `""` | no | +| [service\_check\_no\_data\_timeframe](#input\_service\_check\_no\_data\_timeframe) | No data timeframe in minutes | `number` | `10` | no | +| [service\_check\_threshold\_warning](#input\_service\_check\_threshold\_warning) | Warning threshold | `number` | `3` | no | ## Outputs | Name | Description | |------|-------------| -| cpu\_utilization\_id | id for monitor cpu\_utilization | -| memory\_utilization\_id | id for monitor memory\_utilization | -| service\_check\_id | id for monitor service\_check | - +| [cpu\_utilization\_id](#output\_cpu\_utilization\_id) | id for monitor cpu\_utilization | +| [memory\_utilization\_id](#output\_memory\_utilization\_id) | id for monitor memory\_utilization | +| [service\_check\_id](#output\_service\_check\_id) | id for monitor service\_check | ## Related documentation [Official DataDog documentation on ECS Fargate](https://docs.datadoghq.com/integrations/ecs_fargate/) diff --git a/cloud/aws/ecs/fargate/monitors-ecs-fargate.tf b/cloud/aws/ecs/fargate/monitors-ecs-fargate.tf index e183f8c..d8d58fb 100644 --- a/cloud/aws/ecs/fargate/monitors-ecs-fargate.tf +++ b/cloud/aws/ecs/fargate/monitors-ecs-fargate.tf @@ -27,7 +27,7 @@ EOQ 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" { diff --git a/cloud/aws/ecs/fargate/versions.tf b/cloud/aws/ecs/fargate/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/aws/ecs/fargate/versions.tf +++ b/cloud/aws/ecs/fargate/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/aws/elasticache/common/README.md b/cloud/aws/elasticache/common/README.md index dc20ae6..c7b8a57 100644 --- a/cloud/aws/elasticache/common/README.md +++ b/cloud/aws/elasticache/common/README.md @@ -28,71 +28,94 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| elasticache\_max\_connection\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | -| environment | Infrastructure Environment | `string` | n/a | yes | -| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | -| eviction\_enabled | Flag to enable Elasticache eviction monitor | `string` | `"true"` | no | -| 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 | -| 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 | -| 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 | -| 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 | -| eviction\_message | Custom message for Elasticache eviction monitor | `string` | `""` | no | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| swap\_extra\_tags | Extra tags for Elasticache swap monitor | `list(string)` | `[]` | no | -| swap\_message | Custom message for Elasticache swap monitor | `string` | `""` | no | -| swap\_threshold\_critical | Elasticache swap critical threshold in bytes | `string` | `50000000` | no | -| 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 | -| 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 | +| [elasticache\_max\_connection\_no\_data\_timeframe](#input\_elasticache\_max\_connection\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no | +| [environment](#input\_environment) | Infrastructure Environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [eviction\_enabled](#input\_eviction\_enabled) | Flag to enable Elasticache eviction monitor | `string` | `"true"` | no | +| [eviction\_extra\_tags](#input\_eviction\_extra\_tags) | Extra tags for Elasticache eviction monitor | `list(string)` | `[]` | no | +| [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](#input\_eviction\_growing\_enabled) | Flag to enable Elasticache eviction growing monitor | `string` | `"true"` | no | +| [eviction\_growing\_extra\_tags](#input\_eviction\_growing\_extra\_tags) | Extra tags for Elasticache eviction growing monitor | `list(string)` | `[]` | no | +| [eviction\_growing\_message](#input\_eviction\_growing\_message) | Custom message for Elasticache eviction growing monitor | `string` | `""` | no | +| [eviction\_growing\_threshold\_critical](#input\_eviction\_growing\_threshold\_critical) | Elasticache eviction growing critical threshold in percentage | `string` | `30` | no | +| [eviction\_growing\_threshold\_warning](#input\_eviction\_growing\_threshold\_warning) | Elasticache eviction growing warning threshold in percentage | `string` | `10` | no | +| [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](#input\_eviction\_message) | Custom message for Elasticache eviction monitor | `string` | `""` | no | +| [eviction\_threshold\_critical](#input\_eviction\_threshold\_critical) | Elasticache free memory critical threshold in percentage | `string` | `30` | no | +| [eviction\_threshold\_warning](#input\_eviction\_threshold\_warning) | Elasticache free memory warning threshold in percentage | `string` | `0` | no | +| [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](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | +| [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](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [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](#input\_free\_memory\_enabled) | Flag to enable Elasticache free memory monitor | `string` | `"true"` | no | +| [free\_memory\_extra\_tags](#input\_free\_memory\_extra\_tags) | Extra tags for Elasticache free memory monitor | `list(string)` | `[]` | no | +| [free\_memory\_message](#input\_free\_memory\_message) | Custom message for Elasticache free memory monitor | `string` | `""` | no | +| [free\_memory\_threshold\_critical](#input\_free\_memory\_threshold\_critical) | Elasticache free memory critical threshold in percentage | `string` | `-70` | no | +| [free\_memory\_threshold\_warning](#input\_free\_memory\_threshold\_warning) | Elasticache free memory warning threshold in percentage | `string` | `-50` | no | +| [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](#input\_max\_connection\_enabled) | Flag to enable Elasticache max connection monitor | `string` | `"true"` | no | +| [max\_connection\_extra\_tags](#input\_max\_connection\_extra\_tags) | Extra tags for Elasticache max connection monitor | `list(string)` | `[]` | no | +| [max\_connection\_message](#input\_max\_connection\_message) | Custom message for Elasticache max connection monitor | `string` | `""` | no | +| [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](#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](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [no\_connection\_enabled](#input\_no\_connection\_enabled) | Flag to enable Elasticache no connection monitor | `string` | `"true"` | no | +| [no\_connection\_extra\_tags](#input\_no\_connection\_extra\_tags) | Extra tags for Elasticache no connection monitor | `list(string)` | `[]` | no | +| [no\_connection\_message](#input\_no\_connection\_message) | Custom message for Elasticache no connection monitor | `string` | `""` | no | +| [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](#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](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [swap\_enabled](#input\_swap\_enabled) | Flag to enable Elasticache swap monitor | `string` | `"true"` | no | +| [swap\_extra\_tags](#input\_swap\_extra\_tags) | Extra tags for Elasticache swap monitor | `list(string)` | `[]` | no | +| [swap\_message](#input\_swap\_message) | Custom message for Elasticache swap monitor | `string` | `""` | no | +| [swap\_threshold\_critical](#input\_swap\_threshold\_critical) | Elasticache swap critical threshold in bytes | `string` | `50000000` | no | +| [swap\_threshold\_warning](#input\_swap\_threshold\_warning) | Elasticache swap warning threshold in bytes | `string` | `0` | no | +| [swap\_time\_aggregator](#input\_swap\_time\_aggregator) | Monitor aggregator for Elasticache memcached swap [available values: min, max or avg] | `string` | `"min"` | no | +| [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 | Name | Description | |------|-------------| -| elasticache\_eviction\_growing\_id | id for monitor elasticache\_eviction\_growing | -| elasticache\_eviction\_id | id for monitor elasticache\_eviction | -| elasticache\_free\_memory\_id | id for monitor elasticache\_free\_memory | -| elasticache\_max\_connection\_id | id for monitor elasticache\_max\_connection | -| elasticache\_no\_connection\_id | id for monitor elasticache\_no\_connection | -| elasticache\_swap\_id | id for monitor elasticache\_swap | - +| [elasticache\_eviction\_growing\_id](#output\_elasticache\_eviction\_growing\_id) | id for monitor elasticache\_eviction\_growing | +| [elasticache\_eviction\_id](#output\_elasticache\_eviction\_id) | id for monitor elasticache\_eviction | +| [elasticache\_free\_memory\_id](#output\_elasticache\_free\_memory\_id) | id for monitor elasticache\_free\_memory | +| [elasticache\_max\_connection\_id](#output\_elasticache\_max\_connection\_id) | id for monitor elasticache\_max\_connection | +| [elasticache\_no\_connection\_id](#output\_elasticache\_no\_connection\_id) | id for monitor elasticache\_no\_connection | +| [elasticache\_swap\_id](#output\_elasticache\_swap\_id) | id for monitor elasticache\_swap | ## Related documentation DataDog documentation: [https://docs.datadoghq.com/integrations/amazon_elasticache/](https://docs.datadoghq.com/integrations/amazon_elasticache/) diff --git a/cloud/aws/elasticache/common/versions.tf b/cloud/aws/elasticache/common/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/aws/elasticache/common/versions.tf +++ b/cloud/aws/elasticache/common/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/aws/elasticache/memcached/README.md b/cloud/aws/elasticache/memcached/README.md index 23c00b7..078f471 100644 --- a/cloud/aws/elasticache/memcached/README.md +++ b/cloud/aws/elasticache/memcached/README.md @@ -24,44 +24,63 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | +| [cpu\_high\_enabled](#input\_cpu\_high\_enabled) | Flag to enable Elasticache memcached cpu high monitor | `string` | `"true"` | no | +| [cpu\_high\_extra\_tags](#input\_cpu\_high\_extra\_tags) | Extra tags for Elasticache memcached cpu high monitor | `list(string)` | `[]` | no | +| [cpu\_high\_message](#input\_cpu\_high\_message) | Custom message for Elasticache memcached cpu high monitor | `string` | `""` | no | +| [cpu\_high\_threshold\_critical](#input\_cpu\_high\_threshold\_critical) | Elasticache memcached cpu high critical threshold in percentage | `string` | `90` | no | +| [cpu\_high\_threshold\_warning](#input\_cpu\_high\_threshold\_warning) | Elasticache memcached cpu high warning threshold in percentage | `string` | `75` | no | +| [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](#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](#input\_environment) | Infrastructure Environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [get\_hits\_enabled](#input\_get\_hits\_enabled) | Flag to enable Elasticache memcached get hits monitor | `string` | `"true"` | no | +| [get\_hits\_extra\_tags](#input\_get\_hits\_extra\_tags) | Extra tags for Elasticache memcached get hits monitor | `list(string)` | `[]` | no | +| [get\_hits\_message](#input\_get\_hits\_message) | Custom message for Elasticache memcached get hits monitor | `string` | `""` | no | +| [get\_hits\_threshold\_critical](#input\_get\_hits\_threshold\_critical) | Elasticache memcached get hits critical threshold in percentage | `string` | `60` | no | +| [get\_hits\_threshold\_warning](#input\_get\_hits\_threshold\_warning) | Elasticache memcached get hits warning threshold in percentage | `string` | `80` | no | +| [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](#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](#input\_memcached\_cpu\_high\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `30` | no | +| [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | ## Outputs | Name | Description | |------|-------------| -| memcached\_cpu\_high\_id | id for monitor memcached\_cpu\_high | -| memcached\_get\_hits\_id | id for monitor memcached\_get\_hits | - +| [memcached\_cpu\_high\_id](#output\_memcached\_cpu\_high\_id) | id for monitor memcached\_cpu\_high | +| [memcached\_get\_hits\_id](#output\_memcached\_get\_hits\_id) | id for monitor memcached\_get\_hits | ## Related documentation DataDog documentation: diff --git a/cloud/aws/elasticache/memcached/versions.tf b/cloud/aws/elasticache/memcached/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/aws/elasticache/memcached/versions.tf +++ b/cloud/aws/elasticache/memcached/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/aws/elasticache/redis/README.md b/cloud/aws/elasticache/redis/README.md index a13d960..07c2bd0 100644 --- a/cloud/aws/elasticache/redis/README.md +++ b/cloud/aws/elasticache/redis/README.md @@ -26,57 +26,78 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| 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 | -| 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 | -| 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 | -| 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 | -| commands\_extra\_tags | Extra tags for Elasticache redis commands monitor | `list(string)` | `[]` | no | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | +| [cache\_hits\_enabled](#input\_cache\_hits\_enabled) | Flag to enable Elasticache redis cache hits monitor | `string` | `"true"` | no | +| [cache\_hits\_extra\_tags](#input\_cache\_hits\_extra\_tags) | Extra tags for Elasticache redis cache hits monitor | `list(string)` | `[]` | no | +| [cache\_hits\_message](#input\_cache\_hits\_message) | Custom message for Elasticache redis cache hits monitor | `string` | `""` | no | +| [cache\_hits\_threshold\_critical](#input\_cache\_hits\_threshold\_critical) | Elasticache redis cache hits critical threshold in percentage | `string` | `60` | no | +| [cache\_hits\_threshold\_warning](#input\_cache\_hits\_threshold\_warning) | Elasticache redis cache hits warning threshold in percentage | `string` | `80` | no | +| [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](#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](#input\_commands\_enabled) | Flag to enable Elasticache redis commands monitor | `string` | `"true"` | no | +| [commands\_extra\_tags](#input\_commands\_extra\_tags) | Extra tags for Elasticache redis commands monitor | `list(string)` | `[]` | no | +| [commands\_message](#input\_commands\_message) | Custom message for Elasticache redis commands monitor | `string` | `""` | no | +| [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](#input\_cpu\_high\_enabled) | Flag to enable Elasticache redis cpu high monitor | `string` | `"true"` | no | +| [cpu\_high\_extra\_tags](#input\_cpu\_high\_extra\_tags) | Extra tags for Elasticache redis cpu high monitor | `list(string)` | `[]` | no | +| [cpu\_high\_message](#input\_cpu\_high\_message) | Custom message for Elasticache redis cpu high monitor | `string` | `""` | no | +| [cpu\_high\_threshold\_critical](#input\_cpu\_high\_threshold\_critical) | Elasticache redis cpu high critical threshold in percentage | `string` | `90` | no | +| [cpu\_high\_threshold\_warning](#input\_cpu\_high\_threshold\_warning) | Elasticache redis cpu high warning threshold in percentage | `string` | `75` | no | +| [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](#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](#input\_environment) | Infrastructure Environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [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](#input\_replication\_lag\_enabled) | Flag to enable Elasticache redis replication lag monitor | `string` | `"true"` | no | +| [replication\_lag\_extra\_tags](#input\_replication\_lag\_extra\_tags) | Extra tags for Elasticache redis replication lag monitor | `list(string)` | `[]` | no | +| [replication\_lag\_message](#input\_replication\_lag\_message) | Custom message for Elasticache redis replication lag monitor | `string` | `""` | no | +| [replication\_lag\_threshold\_critical](#input\_replication\_lag\_threshold\_critical) | Elasticache redis replication lag critical threshold in seconds | `string` | `180` | no | +| [replication\_lag\_threshold\_warning](#input\_replication\_lag\_threshold\_warning) | Elasticache redis replication lag warning threshold in seconds | `string` | `90` | no | +| [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](#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 | Name | Description | |------|-------------| -| redis\_cache\_hits\_id | id for monitor redis\_cache\_hits | -| redis\_commands\_id | id for monitor redis\_commands | -| redis\_cpu\_high\_id | id for monitor redis\_cpu\_high | -| redis\_replication\_lag\_id | id for monitor redis\_replication\_lag | - +| [redis\_cache\_hits\_id](#output\_redis\_cache\_hits\_id) | id for monitor redis\_cache\_hits | +| [redis\_commands\_id](#output\_redis\_commands\_id) | id for monitor redis\_commands | +| [redis\_cpu\_high\_id](#output\_redis\_cpu\_high\_id) | id for monitor redis\_cpu\_high | +| [redis\_replication\_lag\_id](#output\_redis\_replication\_lag\_id) | id for monitor redis\_replication\_lag | ## Related documentation * [https://docs.datadoghq.com/integrations/amazon_elasticache/](https://docs.datadoghq.com/integrations/amazon_elasticache/) diff --git a/cloud/aws/elasticache/redis/versions.tf b/cloud/aws/elasticache/redis/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/aws/elasticache/redis/versions.tf +++ b/cloud/aws/elasticache/redis/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/aws/elasticsearch/README.md b/cloud/aws/elasticsearch/README.md index d22364d..790412f 100644 --- a/cloud/aws/elasticsearch/README.md +++ b/cloud/aws/elasticsearch/README.md @@ -27,50 +27,70 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| 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 | -| cpu\_message | Custom message for ES cluster cpu monitor | `string` | `""` | no | -| cpu\_threshold\_critical | CPU usage in percent (critical threshold) | `string` | `"90"` | no | -| cpu\_threshold\_warning | CPU usage in percent (warning threshold) | `string` | `"80"` | no | -| cpu\_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 | -| 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 | -| diskspace\_message | Custom message for ES cluster diskspace monitor | `string` | `""` | no | -| 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 | -| 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 | -| environment | Architecture Environment | `string` | n/a | yes | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | +| [cpu\_enabled](#input\_cpu\_enabled) | Flag to enable ES cluster cpu monitor | `string` | `"true"` | no | +| [cpu\_extra\_tags](#input\_cpu\_extra\_tags) | Extra tags for ES cluster cpu monitor | `list(string)` | `[]` | no | +| [cpu\_message](#input\_cpu\_message) | Custom message for ES cluster cpu monitor | `string` | `""` | no | +| [cpu\_threshold\_critical](#input\_cpu\_threshold\_critical) | CPU usage in percent (critical threshold) | `string` | `"90"` | no | +| [cpu\_threshold\_warning](#input\_cpu\_threshold\_warning) | CPU usage in percent (warning threshold) | `string` | `"80"` | no | +| [cpu\_time\_aggregator](#input\_cpu\_time\_aggregator) | Monitor aggregator for ES cluster cpu [available values: min, max or avg] | `string` | `"min"` | no | +| [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](#input\_diskspace\_enabled) | Flag to enable ES cluster diskspace monitor | `string` | `"true"` | no | +| [diskspace\_extra\_tags](#input\_diskspace\_extra\_tags) | Extra tags for ES cluster diskspace monitor | `list(string)` | `[]` | no | +| [diskspace\_message](#input\_diskspace\_message) | Custom message for ES cluster diskspace monitor | `string` | `""` | no | +| [diskspace\_threshold\_critical](#input\_diskspace\_threshold\_critical) | Disk free space in percent (critical threshold) | `string` | `"10"` | no | +| [diskspace\_threshold\_warning](#input\_diskspace\_threshold\_warning) | Disk free space in percent (warning threshold) | `string` | `"20"` | no | +| [diskspace\_time\_aggregator](#input\_diskspace\_time\_aggregator) | Monitor aggregator for ES cluster diskspace [available values: min, max or avg] | `string` | `"max"` | no | +| [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](#input\_environment) | Architecture Environment | `string` | n/a | yes | +| [es\_cluster\_status\_enabled](#input\_es\_cluster\_status\_enabled) | Flag to enable ES cluster status monitor | `string` | `"true"` | no | +| [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](#input\_es\_cluster\_status\_message) | Custom message for ES cluster status monitor | `string` | `""` | no | +| [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](#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](#input\_es\_cluster\_volume\_size) | ElasticSearch Domain volume size (in GB) | `any` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | ## Outputs | Name | Description | |------|-------------| -| es\_cluster\_status\_id | id for monitor es\_cluster\_status | -| es\_cpu\_90\_15min\_id | id for monitor es\_cpu\_90\_15min | -| es\_free\_space\_low\_id | id for monitor es\_free\_space\_low | - +| [es\_cluster\_status\_id](#output\_es\_cluster\_status\_id) | id for monitor es\_cluster\_status | +| [es\_cpu\_90\_15min\_id](#output\_es\_cpu\_90\_15min\_id) | id for monitor es\_cpu\_90\_15min | +| [es\_free\_space\_low\_id](#output\_es\_free\_space\_low\_id) | id for monitor es\_free\_space\_low | ## Related documentation DataDog documentation: [https://docs.datadoghq.com/integrations/amazon_es/](https://docs.datadoghq.com/integrations/amazon_es/) diff --git a/cloud/aws/elasticsearch/versions.tf b/cloud/aws/elasticsearch/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/aws/elasticsearch/versions.tf +++ b/cloud/aws/elasticsearch/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/aws/elb/README.md b/cloud/aws/elb/README.md index eefea2f..174cf84 100644 --- a/cloud/aws/elb/README.md +++ b/cloud/aws/elb/README.md @@ -28,72 +28,95 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| environment | Architecture Environment | `string` | n/a | yes | -| 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 | -| 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 | -| 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 | -| 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 | +| [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](#input\_elb\_4xx\_enabled) | Flag to enable ELB 4xx errors monitor | `string` | `"true"` | no | +| [elb\_4xx\_extra\_tags](#input\_elb\_4xx\_extra\_tags) | Extra tags for ELB 4xx errors monitor | `list(string)` | `[]` | no | +| [elb\_4xx\_message](#input\_elb\_4xx\_message) | Custom message for ELB 4xx errors monitor | `string` | `""` | no | +| [elb\_4xx\_threshold\_critical](#input\_elb\_4xx\_threshold\_critical) | loadbalancer 4xx critical threshold in percentage | `number` | `10` | no | +| [elb\_4xx\_threshold\_warning](#input\_elb\_4xx\_threshold\_warning) | loadbalancer 4xx warning threshold in percentage | `number` | `5` | no | +| [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](#input\_elb\_5xx\_enabled) | Flag to enable ELB 5xx errors monitor | `string` | `"true"` | no | +| [elb\_5xx\_extra\_tags](#input\_elb\_5xx\_extra\_tags) | Extra tags for ELB 5xx errors monitor | `list(string)` | `[]` | no | +| [elb\_5xx\_message](#input\_elb\_5xx\_message) | Custom message for ELB 5xx errors monitor | `string` | `""` | no | +| [elb\_5xx\_threshold\_critical](#input\_elb\_5xx\_threshold\_critical) | loadbalancer 5xx critical threshold in percentage | `number` | `10` | no | +| [elb\_5xx\_threshold\_warning](#input\_elb\_5xx\_threshold\_warning) | loadbalancer 5xx warning threshold in percentage | `number` | `5` | no | +| [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](#input\_elb\_backend\_4xx\_enabled) | Flag to enable ELB backend 4xx errors monitor | `string` | `"true"` | no | +| [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](#input\_elb\_backend\_4xx\_message) | Custom message for ELB backend 4xx errors monitor | `string` | `""` | no | +| [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](#input\_elb\_backend\_4xx\_threshold\_warning) | loadbalancer backend 4xx warning threshold in percentage | `number` | `5` | no | +| [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](#input\_elb\_backend\_5xx\_enabled) | Flag to enable ELB backend 5xx errors monitor | `string` | `"true"` | no | +| [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](#input\_elb\_backend\_5xx\_message) | Custom message for ELB backend 5xx errors monitor | `string` | `""` | no | +| [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](#input\_elb\_backend\_5xx\_threshold\_warning) | loadbalancer backend 5xx warning threshold in percentage | `number` | `5` | no | +| [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](#input\_elb\_backend\_latency\_critical) | latency critical threshold in seconds | `number` | `3` | no | +| [elb\_backend\_latency\_enabled](#input\_elb\_backend\_latency\_enabled) | Flag to enable ELB backend latency monitor | `string` | `"true"` | no | +| [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](#input\_elb\_backend\_latency\_message) | Custom message for ELB backend latency monitor | `string` | `""` | no | +| [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](#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](#input\_elb\_backend\_latency\_warning) | latency warning threshold in seconds | `number` | `1` | no | +| [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](#input\_elb\_no\_healthy\_instance\_extra\_tags) | Extra tags for ELB no healty instance monitor | `list(string)` | `[]` | no | +| [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](#input\_elb\_no\_healthy\_instance\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no | +| [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](#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](#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](#input\_environment) | Architecture Environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | ## Outputs | Name | Description | |------|-------------| -| ELB\_backend\_latency\_id | id for monitor ELB\_backend\_latency | -| 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 | -| 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 | -| ELB\_too\_much\_5xx\_id | id for monitor ELB\_too\_much\_5xx | - +| [ELB\_backend\_latency\_id](#output\_ELB\_backend\_latency\_id) | id for monitor ELB\_backend\_latency | +| [ELB\_no\_healthy\_instances\_id](#output\_ELB\_no\_healthy\_instances\_id) | id for monitor ELB\_no\_healthy\_instances | +| [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](#output\_ELB\_too\_much\_4xx\_id) | id for monitor ELB\_too\_much\_4xx | +| [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](#output\_ELB\_too\_much\_5xx\_id) | id for monitor ELB\_too\_much\_5xx | ## Related documentation DataDog blog: [https://www.datadoghq.com/blog/monitor-application-load-balancer/](https://www.datadoghq.com/blog/monitor-application-load-balancer/) diff --git a/cloud/aws/elb/versions.tf b/cloud/aws/elb/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/aws/elb/versions.tf +++ b/cloud/aws/elb/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/aws/kinesis-firehose/README.md b/cloud/aws/kinesis-firehose/README.md index 7ed2416..ef2d55c 100644 --- a/cloud/aws/kinesis-firehose/README.md +++ b/cloud/aws/kinesis-firehose/README.md @@ -23,33 +23,51 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| environment | Environment | `string` | n/a | yes | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [environment](#input\_environment) | Environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [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](#input\_incoming\_records\_enabled) | Flag to enable Kinesis Firehorse incoming records monitor | `string` | `"true"` | no | +| [incoming\_records\_extra\_tags](#input\_incoming\_records\_extra\_tags) | Extra tags for Kinesis Firehorse incoming records monitor | `list(string)` | `[]` | no | +| [incoming\_records\_message](#input\_incoming\_records\_message) | Custom message for Kinesis Firehorse incoming records monitor | `string` | `""` | no | +| [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](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | ## Outputs | Name | Description | |------|-------------| -| firehose\_incoming\_records\_id | id for monitor firehose\_incoming\_records | - +| [firehose\_incoming\_records\_id](#output\_firehose\_incoming\_records\_id) | id for monitor firehose\_incoming\_records | ## Related documentation DataDog documentation: [https://docs.datadoghq.com/integrations/amazon_firehose/](https://docs.datadoghq.com/integrations/amazon_firehose/) diff --git a/cloud/aws/kinesis-firehose/versions.tf b/cloud/aws/kinesis-firehose/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/aws/kinesis-firehose/versions.tf +++ b/cloud/aws/kinesis-firehose/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/aws/lambda/README.md b/cloud/aws/lambda/README.md index 65363bc..f0040ec 100644 --- a/cloud/aws/lambda/README.md +++ b/cloud/aws/lambda/README.md @@ -26,60 +26,81 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| environment | Architecture environment | `string` | n/a | yes | -| errors\_enabled | Flag to enable Errors monitor | `string` | `"false"` | no | -| errors\_extra\_tags | Extra tags for Errors monitor | `list(string)` | `[]` | no | -| errors\_message | Custom message for Errors monitor | `string` | `""` | no | -| errors\_threshold\_critical | Alerting threshold in milliseconds | `number` | `3` | no | -| 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 | -| 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 | -| 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 | -| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | -| invocations\_enabled | Flag to enable Invocations monitor | `string` | `"false"` | no | -| invocations\_extra\_tags | Extra tags for Invocations monitor | `list(string)` | `[]` | no | -| 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 | -| invocations\_threshold\_critical | Alerting threshold in number of invocations | `number` | `1` | no | -| 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 | -| 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 | -| 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 | -| 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 | -| pct\_errors\_message | Custom message for Percentage of errors monitor | `string` | `""` | no | -| pct\_errors\_threshold\_critical | Alerting threshold in percentage | `number` | `30` | no | -| 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 | -| 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 | -| throttles\_enabled | Flag to enable Throttles monitor | `string` | `"true"` | no | -| throttles\_extra\_tags | Extra tags for Throttles monitor | `list(string)` | `[]` | no | -| throttles\_message | Custom message for Throttles monitor | `string` | `""` | no | -| throttles\_threshold\_critical | Alerting threshold in number of throttles | `number` | `3` | no | -| 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 | -| 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 | +| [environment](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [errors\_enabled](#input\_errors\_enabled) | Flag to enable Errors monitor | `string` | `"false"` | no | +| [errors\_extra\_tags](#input\_errors\_extra\_tags) | Extra tags for Errors monitor | `list(string)` | `[]` | no | +| [errors\_message](#input\_errors\_message) | Custom message for Errors monitor | `string` | `""` | no | +| [errors\_threshold\_critical](#input\_errors\_threshold\_critical) | Alerting threshold in milliseconds | `number` | `3` | no | +| [errors\_threshold\_warning](#input\_errors\_threshold\_warning) | Warning threshold in milliseconds | `number` | `1` | no | +| [errors\_time\_aggregator](#input\_errors\_time\_aggregator) | Monitor aggregator for Errors [available values: min, max or avg] | `string` | `"sum"` | no | +| [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](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [invocations\_enabled](#input\_invocations\_enabled) | Flag to enable Invocations monitor | `string` | `"false"` | no | +| [invocations\_extra\_tags](#input\_invocations\_extra\_tags) | Extra tags for Invocations monitor | `list(string)` | `[]` | no | +| [invocations\_message](#input\_invocations\_message) | Custom message for Invocations monitor | `string` | `""` | no | +| [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](#input\_invocations\_threshold\_critical) | Alerting threshold in number of invocations | `number` | `1` | no | +| [invocations\_threshold\_warning](#input\_invocations\_threshold\_warning) | Warning threshold in number of invocations | `number` | `2` | no | +| [invocations\_time\_aggregator](#input\_invocations\_time\_aggregator) | Monitor aggregator for Invocations [available values: min, max or avg] | `string` | `"sum"` | no | +| [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](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [pct\_errors\_enabled](#input\_pct\_errors\_enabled) | Flag to enable Percentage of errors monitor | `string` | `"true"` | no | +| [pct\_errors\_extra\_tags](#input\_pct\_errors\_extra\_tags) | Extra tags for Percentage of errors monitor | `list(string)` | `[]` | no | +| [pct\_errors\_message](#input\_pct\_errors\_message) | Custom message for Percentage of errors monitor | `string` | `""` | no | +| [pct\_errors\_threshold\_critical](#input\_pct\_errors\_threshold\_critical) | Alerting threshold in percentage | `number` | `30` | no | +| [pct\_errors\_threshold\_warning](#input\_pct\_errors\_threshold\_warning) | Warning threshold in percentage | `number` | `20` | no | +| [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](#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](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [throttles\_enabled](#input\_throttles\_enabled) | Flag to enable Throttles monitor | `string` | `"true"` | no | +| [throttles\_extra\_tags](#input\_throttles\_extra\_tags) | Extra tags for Throttles monitor | `list(string)` | `[]` | no | +| [throttles\_message](#input\_throttles\_message) | Custom message for Throttles monitor | `string` | `""` | no | +| [throttles\_threshold\_critical](#input\_throttles\_threshold\_critical) | Alerting threshold in number of throttles | `number` | `3` | no | +| [throttles\_threshold\_warning](#input\_throttles\_threshold\_warning) | Warning threshold in number of throttles | `number` | `1` | no | +| [throttles\_time\_aggregator](#input\_throttles\_time\_aggregator) | Monitor aggregator for Throttles [available values: min, max or avg] | `string` | `"sum"` | no | +| [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 | Name | Description | |------|-------------| -| errors\_id | id for monitor errors | -| invocations\_id | id for monitor invocations | -| pct\_errors\_id | id for monitor pct\_errors | -| throttles\_id | id for monitor throttles | - +| [errors\_id](#output\_errors\_id) | id for monitor errors | +| [invocations\_id](#output\_invocations\_id) | id for monitor invocations | +| [pct\_errors\_id](#output\_pct\_errors\_id) | id for monitor pct\_errors | +| [throttles\_id](#output\_throttles\_id) | id for monitor throttles | ## Related documentation * [Datadog Documentation](https://docs.datadoghq.com/integrations/amazon_lambda/) * [Service documentation](https://docs.aws.amazon.com/lambda/index.html) diff --git a/cloud/aws/lambda/versions.tf b/cloud/aws/lambda/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/aws/lambda/versions.tf +++ b/cloud/aws/lambda/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/aws/nlb/README.md b/cloud/aws/nlb/README.md index 2f753a5..2e234f6 100644 --- a/cloud/aws/nlb/README.md +++ b/cloud/aws/nlb/README.md @@ -23,35 +23,53 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| environment | Architecture environment | `string` | n/a | yes | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [environment](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [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](#input\_nlb\_no\_healthy\_instances\_extra\_tags) | Extra tags for NLB no healthy instances monitor | `list(string)` | `[]` | no | +| [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](#input\_nlb\_no\_healthy\_instances\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no | +| [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](#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](#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](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | ## Outputs | Name | Description | |------|-------------| -| NLB\_no\_healthy\_instances\_id | id for monitor NLB\_no\_healthy\_instances | - +| [NLB\_no\_healthy\_instances\_id](#output\_NLB\_no\_healthy\_instances\_id) | id for monitor NLB\_no\_healthy\_instances | ## Related documentation DataDog blog: [https://www.datadoghq.com/blog/monitor-aws-network-load-balancer/](https://www.datadoghq.com/blog/monitor-aws-network-load-balancer/) diff --git a/cloud/aws/nlb/versions.tf b/cloud/aws/nlb/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/aws/nlb/versions.tf +++ b/cloud/aws/nlb/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/aws/rds/aurora/mysql/README.md b/cloud/aws/rds/aurora/mysql/README.md index f9fbf83..8e99a8a 100644 --- a/cloud/aws/rds/aurora/mysql/README.md +++ b/cloud/aws/rds/aurora/mysql/README.md @@ -23,36 +23,54 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| rds\_aurora\_mysql\_replica\_lag\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | +| [aurora\_replicalag\_enabled](#input\_aurora\_replicalag\_enabled) | Flag to enable RDS Aurora replica lag monitor | `string` | `"true"` | no | +| [aurora\_replicalag\_extra\_tags](#input\_aurora\_replicalag\_extra\_tags) | Extra tags for RDS Aurora replica lag monitor | `list(string)` | `[]` | no | +| [aurora\_replicalag\_message](#input\_aurora\_replicalag\_message) | Custom message for RDS Aurora replica lag monitor | `string` | `""` | no | +| [aurora\_replicalag\_threshold\_critical](#input\_aurora\_replicalag\_threshold\_critical) | Aurora replica lag in milliseconds (critical threshold) | `string` | `"200"` | no | +| [aurora\_replicalag\_threshold\_warning](#input\_aurora\_replicalag\_threshold\_warning) | Aurora replica lag in milliseconds (warning threshold) | `string` | `"100"` | no | +| [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](#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](#input\_environment) | Architecture Environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [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](#input\_rds\_aurora\_mysql\_replica\_lag\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no | ## Outputs | Name | Description | |------|-------------| -| rds\_aurora\_mysql\_replica\_lag\_id | id for monitor rds\_aurora\_mysql\_replica\_lag | - +| [rds\_aurora\_mysql\_replica\_lag\_id](#output\_rds\_aurora\_mysql\_replica\_lag\_id) | id for monitor rds\_aurora\_mysql\_replica\_lag | ## Related documentation DataDog documentation: [https://docs.datadoghq.com/integrations/amazon_rds/](https://docs.datadoghq.com/integrations/amazon_rds/) diff --git a/cloud/aws/rds/aurora/mysql/versions.tf b/cloud/aws/rds/aurora/mysql/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/aws/rds/aurora/mysql/versions.tf +++ b/cloud/aws/rds/aurora/mysql/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/aws/rds/aurora/postgresql/README.md b/cloud/aws/rds/aurora/postgresql/README.md index 61bd925..7397fae 100644 --- a/cloud/aws/rds/aurora/postgresql/README.md +++ b/cloud/aws/rds/aurora/postgresql/README.md @@ -23,36 +23,54 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| rds\_aurora\_postgresql\_replica\_lag\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | +| [aurora\_replicalag\_enabled](#input\_aurora\_replicalag\_enabled) | Flag to enable RDS Aurora replica lag monitor | `string` | `"true"` | no | +| [aurora\_replicalag\_extra\_tags](#input\_aurora\_replicalag\_extra\_tags) | Extra tags for RDS Aurora replica lag monitor | `list(string)` | `[]` | no | +| [aurora\_replicalag\_message](#input\_aurora\_replicalag\_message) | Custom message for RDS Aurora replica lag monitor | `string` | `""` | no | +| [aurora\_replicalag\_threshold\_critical](#input\_aurora\_replicalag\_threshold\_critical) | Aurora replica lag in milliseconds (critical threshold) | `string` | `"200"` | no | +| [aurora\_replicalag\_threshold\_warning](#input\_aurora\_replicalag\_threshold\_warning) | Aurora replica lag in milliseconds (warning threshold) | `string` | `"100"` | no | +| [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](#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](#input\_environment) | Architecture Environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [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](#input\_rds\_aurora\_postgresql\_replica\_lag\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no | ## Outputs | Name | Description | |------|-------------| -| rds\_aurora\_postgresql\_replica\_lag\_id | id for monitor rds\_aurora\_postgresql\_replica\_lag | - +| [rds\_aurora\_postgresql\_replica\_lag\_id](#output\_rds\_aurora\_postgresql\_replica\_lag\_id) | id for monitor rds\_aurora\_postgresql\_replica\_lag | ## Related documentation DataDog documentation: [https://docs.datadoghq.com/integrations/amazon_rds/](https://docs.datadoghq.com/integrations/amazon_rds/) diff --git a/cloud/aws/rds/aurora/postgresql/versions.tf b/cloud/aws/rds/aurora/postgresql/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/aws/rds/aurora/postgresql/versions.tf +++ b/cloud/aws/rds/aurora/postgresql/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/aws/rds/common/README.md b/cloud/aws/rds/common/README.md index 3855c93..daefac8 100644 --- a/cloud/aws/rds/common/README.md +++ b/cloud/aws/rds/common/README.md @@ -25,52 +25,72 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| 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 | -| cpu\_message | Custom message for RDS CPU usage monitor | `string` | `""` | no | -| cpu\_threshold\_critical | CPU usage in percent (critical threshold) | `string` | `"90"` | no | -| cpu\_threshold\_warning | CPU usage in percent (warning threshold) | `string` | `"80"` | no | -| cpu\_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 | -| 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 | -| diskspace\_message | Custom message for RDS free diskspace monitor | `string` | `""` | no | -| 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 | -| 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 | -| environment | Architecture Environment | `string` | n/a | yes | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| replicalag\_extra\_tags | Extra tags for RDS replica lag monitor | `list(string)` | `[]` | no | -| replicalag\_message | Custom message for RDS replica lag monitor | `string` | `""` | no | -| replicalag\_threshold\_critical | replica lag in seconds (critical threshold) | `string` | `"300"` | no | -| 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 | -| 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 | +| [cpu\_enabled](#input\_cpu\_enabled) | Flag to enable RDS CPU usage monitor | `string` | `"true"` | no | +| [cpu\_extra\_tags](#input\_cpu\_extra\_tags) | Extra tags for RDS CPU usage monitor | `list(string)` | `[]` | no | +| [cpu\_message](#input\_cpu\_message) | Custom message for RDS CPU usage monitor | `string` | `""` | no | +| [cpu\_threshold\_critical](#input\_cpu\_threshold\_critical) | CPU usage in percent (critical threshold) | `string` | `"90"` | no | +| [cpu\_threshold\_warning](#input\_cpu\_threshold\_warning) | CPU usage in percent (warning threshold) | `string` | `"80"` | no | +| [cpu\_time\_aggregator](#input\_cpu\_time\_aggregator) | Monitor aggregator for RDS CPU usage [available values: min, max or avg] | `string` | `"min"` | no | +| [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](#input\_diskspace\_enabled) | Flag to enable RDS free diskspace monitor | `string` | `"true"` | no | +| [diskspace\_extra\_tags](#input\_diskspace\_extra\_tags) | Extra tags for RDS free diskspace monitor | `list(string)` | `[]` | no | +| [diskspace\_message](#input\_diskspace\_message) | Custom message for RDS free diskspace monitor | `string` | `""` | no | +| [diskspace\_threshold\_critical](#input\_diskspace\_threshold\_critical) | Disk free space in percent (critical threshold) | `string` | `"10"` | no | +| [diskspace\_threshold\_warning](#input\_diskspace\_threshold\_warning) | Disk free space in percent (warning threshold) | `string` | `"20"` | no | +| [diskspace\_time\_aggregator](#input\_diskspace\_time\_aggregator) | Monitor aggregator for RDS free diskspace [available values: min, max or avg] | `string` | `"min"` | no | +| [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](#input\_environment) | Architecture Environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [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](#input\_replicalag\_enabled) | Flag to enable RDS replica lag monitor | `string` | `"true"` | no | +| [replicalag\_extra\_tags](#input\_replicalag\_extra\_tags) | Extra tags for RDS replica lag monitor | `list(string)` | `[]` | no | +| [replicalag\_message](#input\_replicalag\_message) | Custom message for RDS replica lag monitor | `string` | `""` | no | +| [replicalag\_threshold\_critical](#input\_replicalag\_threshold\_critical) | replica lag in seconds (critical threshold) | `string` | `"300"` | no | +| [replicalag\_threshold\_warning](#input\_replicalag\_threshold\_warning) | replica lag in seconds (warning threshold) | `string` | `"200"` | no | +| [replicalag\_time\_aggregator](#input\_replicalag\_time\_aggregator) | Monitor aggregator for RDS replica lag [available values: min, max or avg] | `string` | `"min"` | no | +| [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 | Name | Description | |------|-------------| -| rds\_cpu\_90\_15min\_id | id for monitor rds\_cpu\_90\_15min | -| rds\_free\_space\_low\_id | id for monitor rds\_free\_space\_low | -| rds\_replica\_lag\_id | id for monitor rds\_replica\_lag | - +| [rds\_cpu\_90\_15min\_id](#output\_rds\_cpu\_90\_15min\_id) | id for monitor rds\_cpu\_90\_15min | +| [rds\_free\_space\_low\_id](#output\_rds\_free\_space\_low\_id) | id for monitor rds\_free\_space\_low | +| [rds\_replica\_lag\_id](#output\_rds\_replica\_lag\_id) | id for monitor rds\_replica\_lag | ## Related documentation DataDog documentation: [https://docs.datadoghq.com/integrations/amazon_rds/](https://docs.datadoghq.com/integrations/amazon_rds/) diff --git a/cloud/aws/rds/common/versions.tf b/cloud/aws/rds/common/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/aws/rds/common/versions.tf +++ b/cloud/aws/rds/common/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/aws/sqs/README.md b/cloud/aws/sqs/README.md index 0fdc0a3..050663c 100644 --- a/cloud/aws/sqs/README.md +++ b/cloud/aws/sqs/README.md @@ -24,43 +24,62 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | +| [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](#input\_age\_of\_oldest\_message\_extra\_tags) | Extra tags for Age of Oldest Message monitor | `list(string)` | `[]` | no | +| [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](#input\_age\_of\_oldest\_message\_threshold\_critical) | Alerting threshold in seconds | `number` | `600` | no | +| [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](#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](#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](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [visible\_messages\_enabled](#input\_visible\_messages\_enabled) | Flag to enable Number of Visible Messages monitor | `string` | `"false"` | no | +| [visible\_messages\_extra\_tags](#input\_visible\_messages\_extra\_tags) | Extra tags for Number of Visible Messages monitor | `list(string)` | `[]` | no | +| [visible\_messages\_message](#input\_visible\_messages\_message) | Custom message for Number of Visible Messages monitor | `string` | `""` | no | +| [visible\_messages\_threshold\_critical](#input\_visible\_messages\_threshold\_critical) | Alerting threshold in number of messages | `number` | `2` | no | +| [visible\_messages\_threshold\_warning](#input\_visible\_messages\_threshold\_warning) | Warning threshold in number of messages | `number` | `1` | no | +| [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](#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 | Name | Description | |------|-------------| -| age\_of\_oldest\_message\_id | id for monitor age\_of\_oldest\_message | -| visible\_messages\_id | id for monitor visible\_messages | - +| [age\_of\_oldest\_message\_id](#output\_age\_of\_oldest\_message\_id) | id for monitor age\_of\_oldest\_message | +| [visible\_messages\_id](#output\_visible\_messages\_id) | id for monitor visible\_messages | ## Related documentation * [Datadog Documentation](https://docs.datadoghq.com/integrations/amazon_sqs/) * [Service Documentation](https://docs.aws.amazon.com/sqs/index.html) diff --git a/cloud/aws/sqs/versions.tf b/cloud/aws/sqs/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/aws/sqs/versions.tf +++ b/cloud/aws/sqs/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/aws/vpn/README.md b/cloud/aws/vpn/README.md index ec79422..09257ac 100644 --- a/cloud/aws/vpn/README.md +++ b/cloud/aws/vpn/README.md @@ -23,32 +23,48 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| environment | Architecture Environment | `string` | n/a | yes | -| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | -| filter\_tags | Tags used for metrics filtering | `string` | `"*"` | no | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | +| [environment](#input\_environment) | Architecture Environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [filter\_tags](#input\_filter\_tags) | Tags used for metrics filtering | `string` | `"*"` | no | +| [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [vpn\_status\_enabled](#input\_vpn\_status\_enabled) | Flag to enable VPN status monitor | `string` | `"true"` | no | +| [vpn\_status\_extra\_tags](#input\_vpn\_status\_extra\_tags) | Extra tags for VPN status monitor | `list(string)` | `[]` | no | +| [vpn\_status\_message](#input\_vpn\_status\_message) | Custom message for VPN status monitor | `string` | `""` | no | +| [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](#input\_vpn\_status\_time\_aggregator) | Monitor aggregator for VPN status [available values: min, max or avg] | `string` | `"max"` | no | +| [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 | Name | Description | |------|-------------| -| VPN\_status\_id | id for monitor VPN\_status | - +| [VPN\_status\_id](#output\_VPN\_status\_id) | id for monitor VPN\_status | ## Related documentation DataDog documentation: [https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/vpn-metricscollected.html](https://docs.datadoghq.com/integrations/amazon_web_services/) diff --git a/cloud/aws/vpn/versions.tf b/cloud/aws/vpn/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/aws/vpn/versions.tf +++ b/cloud/aws/vpn/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/azure/apimanagement/README.md b/cloud/azure/apimanagement/README.md index 5144325..116e863 100644 --- a/cloud/azure/apimanagement/README.md +++ b/cloud/azure/apimanagement/README.md @@ -27,66 +27,88 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| apimgt\_status\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | -| environment | Architecture environment | `string` | n/a | yes | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | +| [apimgt\_status\_no\_data\_timeframe](#input\_apimgt\_status\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no | +| [environment](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [failed\_requests\_enabled](#input\_failed\_requests\_enabled) | Flag to enable API Management failed requests monitor | `string` | `"true"` | no | +| [failed\_requests\_extra\_tags](#input\_failed\_requests\_extra\_tags) | Extra tags for API Management failed requests monitor | `list(string)` | `[]` | no | +| [failed\_requests\_message](#input\_failed\_requests\_message) | Custom message for API Management failed requests monitor | `string` | `""` | no | +| [failed\_requests\_threshold\_critical](#input\_failed\_requests\_threshold\_critical) | Maximum acceptable percent of failed requests | `number` | `90` | no | +| [failed\_requests\_threshold\_warning](#input\_failed\_requests\_threshold\_warning) | Warning regarding acceptable percent of failed requests | `number` | `50` | no | +| [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](#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](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | +| [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](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when a Redis monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [other\_requests\_enabled](#input\_other\_requests\_enabled) | Flag to enable API Management other requests monitor | `string` | `"true"` | no | +| [other\_requests\_extra\_tags](#input\_other\_requests\_extra\_tags) | Extra tags for API Management other requests monitor | `list(string)` | `[]` | no | +| [other\_requests\_message](#input\_other\_requests\_message) | Custom message for API Management other requests monitor | `string` | `""` | no | +| [other\_requests\_threshold\_critical](#input\_other\_requests\_threshold\_critical) | Maximum acceptable percent of other requests | `number` | `90` | no | +| [other\_requests\_threshold\_warning](#input\_other\_requests\_threshold\_warning) | Warning regarding acceptable percent of other requests | `number` | `50` | no | +| [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](#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](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [status\_enabled](#input\_status\_enabled) | Flag to enable API Management status monitor | `string` | `"true"` | no | +| [status\_extra\_tags](#input\_status\_extra\_tags) | Extra tags for API Management status monitor | `list(string)` | `[]` | no | +| [status\_message](#input\_status\_message) | Custom message for API Management status monitor | `string` | `""` | no | +| [status\_time\_aggregator](#input\_status\_time\_aggregator) | Monitor aggregator for API Management status [available values: min, max or avg] | `string` | `"max"` | no | +| [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](#input\_successful\_requests\_enabled) | Flag to enable API Management successful requests monitor | `string` | `"true"` | no | +| [successful\_requests\_extra\_tags](#input\_successful\_requests\_extra\_tags) | Extra tags for API Management successful requests monitor | `list(string)` | `[]` | no | +| [successful\_requests\_message](#input\_successful\_requests\_message) | Custom message for API Management successful requests monitor | `string` | `""` | no | +| [successful\_requests\_threshold\_critical](#input\_successful\_requests\_threshold\_critical) | Minimum acceptable percent of successful requests | `number` | `10` | no | +| [successful\_requests\_threshold\_warning](#input\_successful\_requests\_threshold\_warning) | Warning regarding acceptable percent of successful requests | `number` | `30` | no | +| [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](#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](#input\_unauthorized\_requests\_enabled) | Flag to enable API Management unauthorized requests monitor | `string` | `"true"` | no | +| [unauthorized\_requests\_extra\_tags](#input\_unauthorized\_requests\_extra\_tags) | Extra tags for API Management unauthorized requests monitor | `list(string)` | `[]` | no | +| [unauthorized\_requests\_message](#input\_unauthorized\_requests\_message) | Custom message for API Management unauthorized requests monitor | `string` | `""` | no | +| [unauthorized\_requests\_threshold\_critical](#input\_unauthorized\_requests\_threshold\_critical) | Maximum acceptable percent of unauthorized requests | `number` | `90` | no | +| [unauthorized\_requests\_threshold\_warning](#input\_unauthorized\_requests\_threshold\_warning) | Warning regarding acceptable percent of unauthorized requests | `number` | `50` | no | +| [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](#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 | Name | Description | |------|-------------| -| apimgt\_failed\_requests\_id | id for monitor apimgt\_failed\_requests | -| apimgt\_other\_requests\_id | id for monitor apimgt\_other\_requests | -| apimgt\_status\_id | id for monitor apimgt\_status | -| apimgt\_successful\_requests\_id | id for monitor apimgt\_successful\_requests | -| apimgt\_unauthorized\_requests\_id | id for monitor apimgt\_unauthorized\_requests | - +| [apimgt\_failed\_requests\_id](#output\_apimgt\_failed\_requests\_id) | id for monitor apimgt\_failed\_requests | +| [apimgt\_other\_requests\_id](#output\_apimgt\_other\_requests\_id) | id for monitor apimgt\_other\_requests | +| [apimgt\_status\_id](#output\_apimgt\_status\_id) | id for monitor apimgt\_status | +| [apimgt\_successful\_requests\_id](#output\_apimgt\_successful\_requests\_id) | id for monitor apimgt\_successful\_requests | +| [apimgt\_unauthorized\_requests\_id](#output\_apimgt\_unauthorized\_requests\_id) | id for monitor apimgt\_unauthorized\_requests | ## 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) diff --git a/cloud/azure/apimanagement/versions.tf b/cloud/azure/apimanagement/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/azure/apimanagement/versions.tf +++ b/cloud/azure/apimanagement/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/azure/app-gateway/README.md b/cloud/azure/app-gateway/README.md index a9f4f1b..eefb08d 100644 --- a/cloud/azure/app-gateway/README.md +++ b/cloud/azure/app-gateway/README.md @@ -31,95 +31,125 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a | +| [filter-tags-4xx-error](#module\_filter-tags-4xx-error) | ../../../common/filter-tags | n/a | +| [filter-tags-5xx-error](#module\_filter-tags-5xx-error) | ../../../common/filter-tags | n/a | +| [filter-tags-backend-4xx-error](#module\_filter-tags-backend-4xx-error) | ../../../common/filter-tags | n/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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| environment | Architecture environment | `string` | n/a | yes | -| 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 | -| 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 | -| 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 | -| 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 | -| status\_enabled | Flag to enable App Gateway status | `string` | `"true"` | no | -| status\_extra\_tags | Extra tags for App Gateway status | `list(string)` | `[]` | no | -| 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 | -| 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 | -| 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 | -| 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 | +| [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](#input\_appgateway\_backend\_connect\_time\_extra\_tags) | Extra tags for App Gateway backend\_connect\_time monitor | `list(string)` | `[]` | no | +| [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](#input\_appgateway\_backend\_connect\_time\_threshold\_critical) | Maximum critical backend\_connect\_time errors in milliseconds | `number` | `50` | no | +| [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](#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](#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](#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](#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](#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](#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](#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](#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](#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](#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](#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](#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](#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](#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](#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](#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](#input\_appgateway\_failed\_requests\_enabled) | Flag to enable App Gateway failed requests monitor | `string` | `"true"` | no | +| [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](#input\_appgateway\_failed\_requests\_message) | Custom message for App Gateway failed requests monitor | `string` | `""` | no | +| [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](#input\_appgateway\_failed\_requests\_threshold\_warning) | Warning regarding acceptable percent of failed errors | `number` | `80` | no | +| [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](#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](#input\_appgateway\_http\_4xx\_errors\_enabled) | Flag to enable App Gateway http 4xx errors monitor | `string` | `"true"` | no | +| [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](#input\_appgateway\_http\_4xx\_errors\_message) | Custom message for App Gateway http 4xx errors monitor | `string` | `""` | no | +| [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](#input\_appgateway\_http\_4xx\_errors\_threshold\_warning) | Warning regarding acceptable percent of 4xx error | `number` | `80` | no | +| [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](#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](#input\_appgateway\_http\_5xx\_errors\_enabled) | Flag to enable App Gateway http 5xx errors monitor | `string` | `"true"` | no | +| [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](#input\_appgateway\_http\_5xx\_errors\_message) | Custom message for App Gateway http 5xx errors monitor | `string` | `""` | no | +| [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](#input\_appgateway\_http\_5xx\_errors\_threshold\_warning) | Warning regarding acceptable percent of 5xx error | `number` | `80` | no | +| [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](#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](#input\_appgateway\_status\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no | +| [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](#input\_appgateway\_unhealthy\_host\_ratio\_extra\_tags) | Extra tags for App Gateway unhealthy host ratio monitor | `list(string)` | `[]` | no | +| [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](#input\_appgateway\_unhealthy\_host\_ratio\_threshold\_critical) | Maximum critical acceptable ratio of unhealthy host | `number` | `75` | no | +| [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](#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](#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](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [status\_enabled](#input\_status\_enabled) | Flag to enable App Gateway status | `string` | `"true"` | no | +| [status\_extra\_tags](#input\_status\_extra\_tags) | Extra tags for App Gateway status | `list(string)` | `[]` | no | +| [status\_message](#input\_status\_message) | Custom message for App Gateway status | `string` | `""` | no | +| [status\_time\_aggregator](#input\_status\_time\_aggregator) | Monitor aggregator for App Gateway status [available values: min, max or avg] | `string` | `"max"` | no | +| [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](#input\_total\_requests\_enabled) | Flag to enable App Gateway current connections monitor | `string` | `"true"` | no | +| [total\_requests\_extra\_tags](#input\_total\_requests\_extra\_tags) | Extra tags for App Gateway current connections monitor | `list(string)` | `[]` | no | +| [total\_requests\_message](#input\_total\_requests\_message) | Custom message for App Gateway current connections monitor | `string` | `""` | no | +| [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](#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 | Name | Description | |------|-------------| -| 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 | -| appgateway\_backend\_http\_5xx\_errors\_id | id for monitor appgateway\_backend\_http\_5xx\_errors | -| appgateway\_failed\_requests\_id | id for monitor appgateway\_failed\_requests | -| appgateway\_healthy\_host\_ratio\_id | id for monitor appgateway\_healthy\_host\_ratio | -| appgateway\_http\_4xx\_errors\_id | id for monitor appgateway\_http\_4xx\_errors | -| appgateway\_http\_5xx\_errors\_id | id for monitor appgateway\_http\_5xx\_errors | -| appgateway\_status\_id | id for monitor appgateway\_status | -| total\_requests\_id | id for monitor total\_requests | - +| [appgateway\_backend\_connect\_time\_id](#output\_appgateway\_backend\_connect\_time\_id) | id for monitor appgateway\_backend\_connect\_time | +| [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](#output\_appgateway\_backend\_http\_5xx\_errors\_id) | id for monitor appgateway\_backend\_http\_5xx\_errors | +| [appgateway\_failed\_requests\_id](#output\_appgateway\_failed\_requests\_id) | id for monitor appgateway\_failed\_requests | +| [appgateway\_healthy\_host\_ratio\_id](#output\_appgateway\_healthy\_host\_ratio\_id) | id for monitor appgateway\_healthy\_host\_ratio | +| [appgateway\_http\_4xx\_errors\_id](#output\_appgateway\_http\_4xx\_errors\_id) | id for monitor appgateway\_http\_4xx\_errors | +| [appgateway\_http\_5xx\_errors\_id](#output\_appgateway\_http\_5xx\_errors\_id) | id for monitor appgateway\_http\_5xx\_errors | +| [appgateway\_status\_id](#output\_appgateway\_status\_id) | id for monitor appgateway\_status | +| [total\_requests\_id](#output\_total\_requests\_id) | id for monitor total\_requests | ## Related documentation diff --git a/cloud/azure/app-gateway/versions.tf b/cloud/azure/app-gateway/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/azure/app-gateway/versions.tf +++ b/cloud/azure/app-gateway/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/azure/app-services/README.md b/cloud/azure/app-services/README.md index f1aab0e..fbd62be 100644 --- a/cloud/azure/app-services/README.md +++ b/cloud/azure/app-services/README.md @@ -28,74 +28,97 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| appservices\_status\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | -| environment | Architecture environment | `string` | n/a | yes | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| memory\_usage\_threshold\_critical | Alerting threshold in Mib | `number` | `1073741824` | no | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | +| [appservices\_status\_no\_data\_timeframe](#input\_appservices\_status\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no | +| [environment](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [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](#input\_http\_4xx\_requests\_extra\_tags) | Extra tags for App Services 4xx requests monitor | `list(string)` | `[]` | no | +| [http\_4xx\_requests\_message](#input\_http\_4xx\_requests\_message) | Custom message for App Services 4xx requests monitor | `string` | `""` | no | +| [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](#input\_http\_4xx\_requests\_threshold\_warning) | Warning regarding acceptable percent of 4xx errors | `number` | `50` | no | +| [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](#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](#input\_http\_5xx\_requests\_enabled) | Flag to enable App Services 5xx requests monitor | `string` | `"true"` | no | +| [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](#input\_http\_5xx\_requests\_message) | Custom message for App Services 5xx requests monitor | `string` | `""` | no | +| [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](#input\_http\_5xx\_requests\_threshold\_warning) | Warning regarding acceptable percent of 5xx errors | `number` | `50` | no | +| [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](#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](#input\_http\_successful\_requests\_enabled) | Flag to enable App Services successful requests monitor | `string` | `"true"` | no | +| [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](#input\_http\_successful\_requests\_message) | Custom message for App Services successful requests monitor | `string` | `""` | no | +| [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](#input\_http\_successful\_requests\_threshold\_warning) | Warning regarding acceptable percent of 2xx & 3xx requests | `number` | `30` | no | +| [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](#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](#input\_memory\_usage\_enabled) | Flag to enable App Services memory usage monitor | `string` | `"true"` | no | +| [memory\_usage\_extra\_tags](#input\_memory\_usage\_extra\_tags) | Extra tags for App Services memory usage monitor | `list(string)` | `[]` | no | +| [memory\_usage\_message](#input\_memory\_usage\_message) | Custom message for App Services memory usage monitor | `string` | `""` | no | +| [memory\_usage\_threshold\_critical](#input\_memory\_usage\_threshold\_critical) | Alerting threshold in Mib | `number` | `1073741824` | no | +| [memory\_usage\_threshold\_warning](#input\_memory\_usage\_threshold\_warning) | Warning threshold in MiB | `number` | `536870912` | no | +| [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](#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](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [response\_time\_enabled](#input\_response\_time\_enabled) | Flag to enable App Services response time monitor | `string` | `"true"` | no | +| [response\_time\_extra\_tags](#input\_response\_time\_extra\_tags) | Extra tags for App Services response time monitor | `list(string)` | `[]` | no | +| [response\_time\_message](#input\_response\_time\_message) | Custom message for App Services response time monitor | `string` | `""` | no | +| [response\_time\_threshold\_critical](#input\_response\_time\_threshold\_critical) | Alerting threshold for response time in seconds | `number` | `10` | no | +| [response\_time\_threshold\_warning](#input\_response\_time\_threshold\_warning) | Warning threshold for response time in seconds | `number` | `5` | no | +| [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](#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](#input\_status\_enabled) | Flag to enable App Services status monitor | `string` | `"true"` | no | +| [status\_extra\_tags](#input\_status\_extra\_tags) | Extra tags for App Services status monitor | `list(string)` | `[]` | no | +| [status\_message](#input\_status\_message) | Custom message for App Services status monitor | `string` | `""` | no | +| [status\_time\_aggregator](#input\_status\_time\_aggregator) | Monitor aggregator for App Services status [available values: min, max or avg] | `string` | `"max"` | no | +| [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 | Name | Description | |------|-------------| -| 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 | -| 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 | -| appservices\_response\_time\_id | id for monitor appservices\_response\_time | -| appservices\_status\_id | id for monitor appservices\_status | - +| [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](#output\_appservices\_http\_5xx\_errors\_count\_id) | id for monitor appservices\_http\_5xx\_errors\_count | +| [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](#output\_appservices\_memory\_usage\_count\_id) | id for monitor appservices\_memory\_usage\_count | +| [appservices\_response\_time\_id](#output\_appservices\_response\_time\_id) | id for monitor appservices\_response\_time | +| [appservices\_status\_id](#output\_appservices\_status\_id) | id for monitor appservices\_status | ## Related documentation DataDog documentation: [https://docs.datadoghq.com/integrations/azure_app_services](https://docs.datadoghq.com/integrations/azure_app_services) diff --git a/cloud/azure/app-services/versions.tf b/cloud/azure/app-services/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/azure/app-services/versions.tf +++ b/cloud/azure/app-services/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/azure/azure-search/README.md b/cloud/azure/azure-search/README.md index 6d0cf32..cbef36b 100644 --- a/cloud/azure/azure-search/README.md +++ b/cloud/azure/azure-search/README.md @@ -24,44 +24,63 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| azure\_search\_latency\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | -| environment | Architecture environment | `string` | n/a | yes | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | +| [azure\_search\_latency\_no\_data\_timeframe](#input\_azure\_search\_latency\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no | +| [environment](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [latency\_enabled](#input\_latency\_enabled) | Flag to enable Azure Search latency monitor | `string` | `"true"` | no | +| [latency\_extra\_tags](#input\_latency\_extra\_tags) | Extra tags for Azure Search latency monitor | `list(string)` | `[]` | no | +| [latency\_message](#input\_latency\_message) | Custom message for Azure Search latency monitor | `string` | `""` | no | +| [latency\_threshold\_critical](#input\_latency\_threshold\_critical) | Alerting threshold for Azure Search latency in seconds | `number` | `4` | no | +| [latency\_threshold\_warning](#input\_latency\_threshold\_warning) | Warning threshold for Azure Search latency in seconds | `number` | `2` | no | +| [latency\_time\_aggregator](#input\_latency\_time\_aggregator) | Monitor aggregator for Azure Search latency [available values: min, max or avg] | `string` | `"min"` | no | +| [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](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [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](#input\_throttled\_queries\_rate\_extra\_tags) | Extra tags for Azure Search throttled queries rate monitor | `list(string)` | `[]` | no | +| [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](#input\_throttled\_queries\_rate\_threshold\_critical) | Alerting threshold for Azure Search throttled queries rate | `number` | `50` | no | +| [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](#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](#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 | Name | Description | |------|-------------| -| azure\_search\_latency\_id | id for monitor azure\_search\_latency | -| azure\_search\_throttled\_queries\_rate\_id | id for monitor azure\_search\_throttled\_queries\_rate | - +| [azure\_search\_latency\_id](#output\_azure\_search\_latency\_id) | id for monitor azure\_search\_latency | +| [azure\_search\_throttled\_queries\_rate\_id](#output\_azure\_search\_throttled\_queries\_rate\_id) | id for monitor azure\_search\_throttled\_queries\_rate | ## Related documentation DataDog documentation: [https://docs.datadoghq.com/integrations/azure_app_services](https://docs.datadoghq.com/integrations/azure_app_services) diff --git a/cloud/azure/azure-search/versions.tf b/cloud/azure/azure-search/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/azure/azure-search/versions.tf +++ b/cloud/azure/azure-search/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/azure/cosmosdb/README.md b/cloud/azure/cosmosdb/README.md index c545185..3db2e4b 100644 --- a/cloud/azure/cosmosdb/README.md +++ b/cloud/azure/cosmosdb/README.md @@ -26,58 +26,80 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| environment | Architecture environment | `string` | n/a | yes | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | +| [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](#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](#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](#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](#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](#input\_cosmos\_db\_4xx\_requests\_enabled) | Flag to enable Cosmos DB 4xx requests monitor | `string` | `"true"` | no | +| [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](#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](#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](#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](#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](#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](#input\_cosmos\_db\_5xx\_requests\_enabled) | Flag to enable Cosmos DB 5xx requests monitor | `string` | `"true"` | no | +| [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](#input\_cosmos\_db\_scaling\_enabled) | Flag to enable Cosmos DB scaling monitor | `string` | `"true"` | no | +| [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](#input\_cosmos\_db\_scaling\_error\_rate\_threshold\_warning) | Warning threshold for Cosmos DB scaling monitor | `number` | `5` | no | +| [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](#input\_cosmos\_db\_scaling\_message) | Custom message for Cosmos DB scaling monitor | `string` | `""` | no | +| [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](#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](#input\_cosmos\_db\_status\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no | +| [environment](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [status\_enabled](#input\_status\_enabled) | Flag to enable Cosmos DB status monitor | `string` | `"true"` | no | +| [status\_extra\_tags](#input\_status\_extra\_tags) | Extra tags for Cosmos DB status monitor | `list(string)` | `[]` | no | +| [status\_message](#input\_status\_message) | Custom message for Cosmos DB status monitor | `string` | `""` | no | +| [status\_time\_aggregator](#input\_status\_time\_aggregator) | Monitor aggregator for Cosmos DB status [available values: min, max or avg] | `string` | `"max"` | no | +| [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 | Name | Description | |------|-------------| -| cosmos\_db\_4xx\_requests\_id | id for monitor cosmos\_db\_4xx\_requests | -| cosmos\_db\_5xx\_requests\_id | id for monitor cosmos\_db\_5xx\_requests | -| cosmos\_db\_scaling\_id | id for monitor cosmos\_db\_scaling | -| cosmos\_db\_status\_id | id for monitor cosmos\_db\_status | - +| [cosmos\_db\_4xx\_requests\_id](#output\_cosmos\_db\_4xx\_requests\_id) | id for monitor cosmos\_db\_4xx\_requests | +| [cosmos\_db\_5xx\_requests\_id](#output\_cosmos\_db\_5xx\_requests\_id) | id for monitor cosmos\_db\_5xx\_requests | +| [cosmos\_db\_scaling\_id](#output\_cosmos\_db\_scaling\_id) | id for monitor cosmos\_db\_scaling | +| [cosmos\_db\_status\_id](#output\_cosmos\_db\_status\_id) | id for monitor cosmos\_db\_status | ## Related documentation DataDog documentation : [https://docs.datadoghq.com/integrations/azure/](https://docs.datadoghq.com/integrations/azure/) diff --git a/cloud/azure/cosmosdb/versions.tf b/cloud/azure/cosmosdb/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/azure/cosmosdb/versions.tf +++ b/cloud/azure/cosmosdb/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/azure/datalakestore/README.md b/cloud/azure/datalakestore/README.md index e321f1f..180af1a 100644 --- a/cloud/azure/datalakestore/README.md +++ b/cloud/azure/datalakestore/README.md @@ -23,34 +23,52 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| datalakestore\_status\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | -| environment | Architecture environment | `string` | n/a | yes | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | +| [datalakestore\_status\_no\_data\_timeframe](#input\_datalakestore\_status\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no | +| [environment](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [status\_enabled](#input\_status\_enabled) | Flag to enable Datalake Store status monitor | `string` | `"true"` | no | +| [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](#input\_status\_message) | Custom message for Datalake Store status monitor | `string` | `""` | no | +| [status\_time\_aggregator](#input\_status\_time\_aggregator) | Monitor aggregator for Datalake Store status [available values: min, max or avg] | `string` | `"max"` | no | +| [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 | Name | Description | |------|-------------| -| datalakestore\_status\_id | id for monitor datalakestore\_status | - +| [datalakestore\_status\_id](#output\_datalakestore\_status\_id) | id for monitor datalakestore\_status | ## Related documentation DataDog documentation : [https://docs.datadoghq.com/integrations/azure/](https://docs.datadoghq.com/integrations/azure/) diff --git a/cloud/azure/datalakestore/versions.tf b/cloud/azure/datalakestore/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/azure/datalakestore/versions.tf +++ b/cloud/azure/datalakestore/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/azure/eventgrid/README.md b/cloud/azure/eventgrid/README.md index 5b0ee4d..39c4d0b 100644 --- a/cloud/azure/eventgrid/README.md +++ b/cloud/azure/eventgrid/README.md @@ -25,50 +25,70 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| environment | Architecture environment | `string` | n/a | yes | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | +| [environment](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [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](#input\_failed\_messages\_rate\_enabled) | Flag to enable Event Grid failed messages monitor | `string` | `"true"` | no | +| [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](#input\_failed\_messages\_rate\_message) | Custom message for Event Grid failed messages monitor | `string` | `""` | no | +| [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](#input\_failed\_messages\_rate\_thresold\_warning) | Failed messages ratio (percentage) to trigger a warning alert | `number` | `50` | no | +| [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](#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](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | +| [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](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [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](#input\_no\_successful\_message\_rate\_extra\_tags) | Extra tags for Event Grid no successful message monitor | `list(string)` | `[]` | no | +| [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](#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](#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](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [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](#input\_unmatched\_events\_rate\_extra\_tags) | Extra tags for Event Grid unmatched events monitor | `list(string)` | `[]` | no | +| [unmatched\_events\_rate\_message](#input\_unmatched\_events\_rate\_message) | Custom message for Event Grid unmatched events monitor | `string` | `""` | no | +| [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](#input\_unmatched\_events\_rate\_thresold\_warning) | Unmatched events ratio (percentage) to trigger a warning alert | `number` | `50` | no | +| [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](#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 | Name | Description | |------|-------------| -| eventgrid\_failed\_messages\_id | id for monitor eventgrid\_failed\_messages | -| eventgrid\_no\_successful\_message\_id | id for monitor eventgrid\_no\_successful\_message | -| eventgrid\_unmatched\_events\_id | id for monitor eventgrid\_unmatched\_events | - +| [eventgrid\_failed\_messages\_id](#output\_eventgrid\_failed\_messages\_id) | id for monitor eventgrid\_failed\_messages | +| [eventgrid\_no\_successful\_message\_id](#output\_eventgrid\_no\_successful\_message\_id) | id for monitor eventgrid\_no\_successful\_message | +| [eventgrid\_unmatched\_events\_id](#output\_eventgrid\_unmatched\_events\_id) | id for monitor eventgrid\_unmatched\_events | ## Related documentation Datadog Azure documentation: [https://docs.datadoghq.com/integrations/azure/](https://docs.datadoghq.com/integrations/azure/) diff --git a/cloud/azure/eventgrid/versions.tf b/cloud/azure/eventgrid/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/azure/eventgrid/versions.tf +++ b/cloud/azure/eventgrid/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/azure/eventhub/README.md b/cloud/azure/eventhub/README.md index 682fa3b..264e0d3 100644 --- a/cloud/azure/eventhub/README.md +++ b/cloud/azure/eventhub/README.md @@ -25,50 +25,70 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| environment | Architecture environment | `string` | n/a | yes | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | +| [environment](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [errors\_rate\_enabled](#input\_errors\_rate\_enabled) | Flag to enable Event Hub errors monitor | `string` | `"true"` | no | +| [errors\_rate\_extra\_tags](#input\_errors\_rate\_extra\_tags) | Extra tags for Event Hub errors monitor | `list(string)` | `[]` | no | +| [errors\_rate\_message](#input\_errors\_rate\_message) | Custom message for Event Hub errors monitor | `string` | `""` | no | +| [errors\_rate\_thresold\_critical](#input\_errors\_rate\_thresold\_critical) | Errors ratio (percentage) to trigger the critical alert | `number` | `90` | no | +| [errors\_rate\_thresold\_warning](#input\_errors\_rate\_thresold\_warning) | Errors ratio (percentage) to trigger a warning alert | `number` | `50` | no | +| [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](#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](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [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](#input\_failed\_requests\_rate\_enabled) | Flag to enable Event Hub failed requests monitor | `string` | `"true"` | no | +| [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](#input\_failed\_requests\_rate\_message) | Custom message for Event Hub failed requests monitor | `string` | `""` | no | +| [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](#input\_failed\_requests\_rate\_thresold\_warning) | Failed requests ratio (percentage) to trigger a warning alert | `number` | `50` | no | +| [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](#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](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | +| [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](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [status\_enabled](#input\_status\_enabled) | Flag to enable Event Hub status monitor | `string` | `"true"` | no | +| [status\_extra\_tags](#input\_status\_extra\_tags) | Extra tags for Event Hub status monitor | `list(string)` | `[]` | no | +| [status\_message](#input\_status\_message) | Custom message for Event Hub status monitor | `string` | `""` | no | +| [status\_time\_aggregator](#input\_status\_time\_aggregator) | Monitor aggregator for Event Hub status [available values: min, max or avg] | `string` | `"max"` | no | +| [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 | Name | Description | |------|-------------| -| eventhub\_errors\_id | id for monitor eventhub\_errors | -| eventhub\_failed\_requests\_id | id for monitor eventhub\_failed\_requests | -| eventhub\_status\_id | id for monitor eventhub\_status | - +| [eventhub\_errors\_id](#output\_eventhub\_errors\_id) | id for monitor eventhub\_errors | +| [eventhub\_failed\_requests\_id](#output\_eventhub\_failed\_requests\_id) | id for monitor eventhub\_failed\_requests | +| [eventhub\_status\_id](#output\_eventhub\_status\_id) | id for monitor eventhub\_status | ## Related documentation Datadog documentation : [https://docs.datadoghq.com/integrations/azure_event_hub/](https://docs.datadoghq.com/integrations/azure_event_hub/) diff --git a/cloud/azure/eventhub/versions.tf b/cloud/azure/eventhub/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/azure/eventhub/versions.tf +++ b/cloud/azure/eventhub/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/azure/functions/README.md b/cloud/azure/functions/README.md index 62c6aca..5b8bbdd 100644 --- a/cloud/azure/functions/README.md +++ b/cloud/azure/functions/README.md @@ -25,51 +25,71 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| environment | Architecture environment | `string` | n/a | yes | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [environment](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [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](#input\_high\_connections\_count\_extra\_tags) | Extra tags for Functions high connections count monitor | `list(string)` | `[]` | no | +| [high\_connections\_count\_message](#input\_high\_connections\_count\_message) | Custom message for Functions high connections count monitor | `string` | `""` | no | +| [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](#input\_high\_connections\_count\_threshold\_warning) | Warning threshold for Functions high connections count | `number` | `550` | no | +| [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](#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](#input\_high\_threads\_count\_enabled) | Flag to enable Functions high threads count monitor | `string` | `"true"` | no | +| [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](#input\_high\_threads\_count\_message) | Custom message for Functions high threads count monitor | `string` | `""` | no | +| [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](#input\_high\_threads\_count\_threshold\_warning) | Warning threshold for Functions high threads count | `number` | `490` | no | +| [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](#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](#input\_http\_5xx\_errors\_rate\_enabled) | Flag to enable Functions Http 5xx errors rate monitor | `string` | `"true"` | no | +| [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](#input\_http\_5xx\_errors\_rate\_message) | Custom message for Functions Http 5xx errors rate monitor | `string` | `""` | no | +| [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](#input\_http\_5xx\_errors\_rate\_threshold\_warning) | Warning threshold for Functions Http 5xx errors rate | `number` | `10` | no | +| [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](#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](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | ## Outputs | Name | Description | |------|-------------| -| function\_high\_connections\_count\_id | id for monitor function\_high\_connections\_count | -| 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 | - +| [function\_high\_connections\_count\_id](#output\_function\_high\_connections\_count\_id) | id for monitor function\_high\_connections\_count | +| [function\_high\_threads\_count\_id](#output\_function\_high\_threads\_count\_id) | id for monitor function\_high\_threads\_count | +| [function\_http\_5xx\_errors\_rate\_id](#output\_function\_http\_5xx\_errors\_rate\_id) | id for monitor function\_http\_5xx\_errors\_rate | ## Related documentation Datadog Azure documentation: [https://docs.datadoghq.com/integrations/azure/](https://docs.datadoghq.com/integrations/azure/) diff --git a/cloud/azure/functions/versions.tf b/cloud/azure/functions/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/azure/functions/versions.tf +++ b/cloud/azure/functions/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/azure/iothubs/README.md b/cloud/azure/iothubs/README.md index 9557a9f..c119288 100644 --- a/cloud/azure/iothubs/README.md +++ b/cloud/azure/iothubs/README.md @@ -36,135 +36,166 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | +| [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](#input\_dropped\_d2c\_telemetry\_egress\_extra\_tags) | Extra tags for IoT Hub dropped d2c telemetry monitor | `list(string)` | `[]` | no | +| [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](#input\_dropped\_d2c\_telemetry\_egress\_rate\_threshold\_critical) | D2C Telemetry Dropped limit (critical threshold) | `number` | `90` | no | +| [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](#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](#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](#input\_environment) | Architecture Environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [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](#input\_failed\_c2d\_methods\_rate\_extra\_tags) | Extra tags for IoT Hub failed c2d methods monitor | `list(string)` | `[]` | no | +| [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](#input\_failed\_c2d\_methods\_rate\_threshold\_critical) | C2D Methods Failed rate limit (critical threshold) | `number` | `90` | no | +| [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](#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](#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](#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](#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](#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](#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](#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](#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](#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](#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](#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](#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](#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](#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](#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](#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](#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](#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](#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](#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](#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](#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](#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](#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](#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](#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](#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](#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](#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](#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](#input\_failed\_jobs\_rate\_enabled) | Flag to enable IoT Hub failed jobs monitor | `string` | `"true"` | no | +| [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](#input\_failed\_jobs\_rate\_message) | Custom message for IoT Hub failed jobs monitor | `string` | `""` | no | +| [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](#input\_failed\_jobs\_rate\_threshold\_warning) | Jobs Failed rate limit (warning threshold) | `number` | `50` | no | +| [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](#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](#input\_failed\_listjobs\_rate\_enabled) | Flag to enable IoT Hub failed list jobs monitor | `string` | `"true"` | no | +| [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](#input\_failed\_listjobs\_rate\_message) | Custom message for IoT Hub failed list jobs monitor | `string` | `""` | no | +| [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](#input\_failed\_listjobs\_rate\_threshold\_warning) | ListJobs Failed rate limit (warning threshold) | `number` | `50` | no | +| [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](#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](#input\_failed\_queryjobs\_rate\_enabled) | Flag to enable IoT Hub failed query jobs monitor | `string` | `"true"` | no | +| [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](#input\_failed\_queryjobs\_rate\_message) | Custom message for IoT Hub failed query jobs monitor | `string` | `""` | no | +| [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](#input\_failed\_queryjobs\_rate\_threshold\_warning) | QueryJobs Failed rate limit (warning threshold) | `number` | `50` | no | +| [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](#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](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | +| [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](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [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](#input\_invalid\_d2c\_telemetry\_egress\_extra\_tags) | Extra tags for IoT Hub invalid d2c telemetry monitor | `list(string)` | `[]` | no | +| [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](#input\_invalid\_d2c\_telemetry\_egress\_rate\_threshold\_critical) | D2C Telemetry Invalid limit (critical threshold) | `number` | `90` | no | +| [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](#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](#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](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [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](#input\_orphaned\_d2c\_telemetry\_egress\_extra\_tags) | Extra tags for IoT Hub orphaned d2c telemetry monitor | `list(string)` | `[]` | no | +| [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](#input\_orphaned\_d2c\_telemetry\_egress\_rate\_threshold\_critical) | D2C Telemetry Orphaned limit (critical threshold) | `number` | `90` | no | +| [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](#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](#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](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [status\_enabled](#input\_status\_enabled) | Flag to enable IoT Hub status monitor | `string` | `"true"` | no | +| [status\_extra\_tags](#input\_status\_extra\_tags) | Extra tags for IoT Hub status monitor | `list(string)` | `[]` | no | +| [status\_message](#input\_status\_message) | Custom message for IoT Hub status monitor | `string` | `""` | no | +| [status\_no\_data\_timeframe](#input\_status\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no | +| [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](#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](#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](#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](#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](#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](#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](#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](#input\_total\_devices\_enabled) | Flag to enable IoT Hub total devices monitor | `string` | `"true"` | no | +| [total\_devices\_extra\_tags](#input\_total\_devices\_extra\_tags) | Extra tags for IoT Hub total devices monitor | `list(string)` | `[]` | no | +| [total\_devices\_message](#input\_total\_devices\_message) | Custom message for IoT Hub total devices monitor | `string` | `""` | no | +| [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](#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 | Name | Description | |------|-------------| -| status\_id | id for monitor status | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| total\_devices\_id | id for monitor total\_devices | - +| [status\_id](#output\_status\_id) | id for monitor status | +| [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](#output\_too\_many\_c2d\_twin\_read\_failed\_id) | id for monitor too\_many\_c2d\_twin\_read\_failed | +| [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](#output\_too\_many\_d2c\_telemetry\_egress\_dropped\_id) | id for monitor too\_many\_d2c\_telemetry\_egress\_dropped | +| [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](#output\_too\_many\_d2c\_telemetry\_egress\_orphaned\_id) | id for monitor too\_many\_d2c\_telemetry\_egress\_orphaned | +| [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](#output\_too\_many\_d2c\_twin\_read\_failed\_id) | id for monitor too\_many\_d2c\_twin\_read\_failed | +| [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](#output\_too\_many\_jobs\_failed\_id) | id for monitor too\_many\_jobs\_failed | +| [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](#output\_too\_many\_query\_jobs\_failed\_id) | id for monitor too\_many\_query\_jobs\_failed | +| [total\_devices\_id](#output\_total\_devices\_id) | id for monitor total\_devices | ## Related documentation DataDog documentation: [https://docs.datadoghq.com/integrations/azure_iot_hub](https://docs.datadoghq.com/integrations/azure_iot_hub) diff --git a/cloud/azure/iothubs/versions.tf b/cloud/azure/iothubs/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/azure/iothubs/versions.tf +++ b/cloud/azure/iothubs/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/azure/keyvault/README.md b/cloud/azure/keyvault/README.md index 186b8b9..e74f597 100644 --- a/cloud/azure/keyvault/README.md +++ b/cloud/azure/keyvault/README.md @@ -25,50 +25,72 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a | +| [filter-tags-activity](#module\_filter-tags-activity) | ../../../common/filter-tags | n/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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| environment | Architecture environment | `string` | n/a | yes | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| status\_extra\_tags | Extra tags for Key Vault status monitor | `list(string)` | `[]` | no | -| 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 | -| 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 | +| [api\_latency\_enabled](#input\_api\_latency\_enabled) | Flag to enable Key Vault API latency monitor | `string` | `"true"` | no | +| [api\_latency\_extra\_tags](#input\_api\_latency\_extra\_tags) | Extra tags for Key Vault API latency monitor | `list(string)` | `[]` | no | +| [api\_latency\_message](#input\_api\_latency\_message) | Custom message for Key Vault API latency monitor | `string` | `""` | no | +| [api\_latency\_threshold\_critical](#input\_api\_latency\_threshold\_critical) | Critical threshold for Key Vault API latency rate | `number` | `100` | no | +| [api\_latency\_threshold\_warning](#input\_api\_latency\_threshold\_warning) | Warning threshold for Key Vault API latency rate | `number` | `80` | no | +| [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](#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](#input\_api\_result\_enabled) | Flag to enable Key Vault API result monitor | `string` | `"true"` | no | +| [api\_result\_extra\_tags](#input\_api\_result\_extra\_tags) | Extra tags for Key Vault API result monitor | `list(string)` | `[]` | no | +| [api\_result\_message](#input\_api\_result\_message) | Custom message for Key Vault API result monitor | `string` | `""` | no | +| [api\_result\_threshold\_critical](#input\_api\_result\_threshold\_critical) | Critical threshold for Key Vault API result rate | `number` | `10` | no | +| [api\_result\_threshold\_warning](#input\_api\_result\_threshold\_warning) | Warning threshold for Key Vault API result rate | `number` | `30` | no | +| [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](#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](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [keyvault\_status\_no\_data\_timeframe](#input\_keyvault\_status\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no | +| [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [status\_enabled](#input\_status\_enabled) | Flag to enable Key Vault status monitor | `string` | `"true"` | no | +| [status\_extra\_tags](#input\_status\_extra\_tags) | Extra tags for Key Vault status monitor | `list(string)` | `[]` | no | +| [status\_message](#input\_status\_message) | Custom message for Key Vault status monitor | `string` | `""` | no | +| [status\_time\_aggregator](#input\_status\_time\_aggregator) | Monitor aggregator for Key Vault status [available values: min, max or avg] | `string` | `"max"` | no | +| [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 | Name | Description | |------|-------------| -| keyvault\_api\_latency\_id | id for monitor keyvault\_api\_latency | -| keyvault\_api\_result\_id | id for monitor keyvault\_api\_result | -| keyvault\_status\_id | id for monitor keyvault\_status | - +| [keyvault\_api\_latency\_id](#output\_keyvault\_api\_latency\_id) | id for monitor keyvault\_api\_latency | +| [keyvault\_api\_result\_id](#output\_keyvault\_api\_result\_id) | id for monitor keyvault\_api\_result | +| [keyvault\_status\_id](#output\_keyvault\_status\_id) | id for monitor keyvault\_status | ## Related documentation DataDog documentation : [https://docs.datadoghq.com/integrations/azure/](https://docs.datadoghq.com/integrations/azure/) diff --git a/cloud/azure/keyvault/versions.tf b/cloud/azure/keyvault/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/azure/keyvault/versions.tf +++ b/cloud/azure/keyvault/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/azure/load-balancer/README.md b/cloud/azure/load-balancer/README.md index db57b99..d4c337e 100644 --- a/cloud/azure/load-balancer/README.md +++ b/cloud/azure/load-balancer/README.md @@ -23,34 +23,52 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| environment | Architecture environment | `string` | n/a | yes | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| status\_extra\_tags | Extra tags for Load Balancer status monitor | `list(string)` | `[]` | no | -| 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 | -| 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 | +| [environment](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [loadbalancer\_status\_no\_data\_timeframe](#input\_loadbalancer\_status\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no | +| [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [status\_enabled](#input\_status\_enabled) | Flag to enable Load Balancer status monitor | `string` | `"true"` | no | +| [status\_extra\_tags](#input\_status\_extra\_tags) | Extra tags for Load Balancer status monitor | `list(string)` | `[]` | no | +| [status\_message](#input\_status\_message) | Custom message for Load Balancer status monitor | `string` | `""` | no | +| [status\_time\_aggregator](#input\_status\_time\_aggregator) | Monitor aggregator for Load Balancer status [available values: min, max or avg] | `string` | `"max"` | no | +| [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 | Name | Description | |------|-------------| -| loadbalancer\_status\_id | id for monitor loadbalancer\_status | - +| [loadbalancer\_status\_id](#output\_loadbalancer\_status\_id) | id for monitor loadbalancer\_status | ## Related documentation DataDog documentation: [https://docs.datadoghq.com/integrations/azure/?tab=azurecliv20](https://docs.datadoghq.com/integrations/azure/?tab=azurecliv20) diff --git a/cloud/azure/load-balancer/versions.tf b/cloud/azure/load-balancer/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/azure/load-balancer/versions.tf +++ b/cloud/azure/load-balancer/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/azure/mysql/README.md b/cloud/azure/mysql/README.md index 419f29d..a0a6606 100644 --- a/cloud/azure/mysql/README.md +++ b/cloud/azure/mysql/README.md @@ -26,58 +26,79 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [cpu\_usage\_enabled](#input\_cpu\_usage\_enabled) | Flag to enable Mysql status monitor | `string` | `"true"` | no | +| [cpu\_usage\_extra\_tags](#input\_cpu\_usage\_extra\_tags) | Extra tags for Mysql status monitor | `list(string)` | `[]` | no | +| [cpu\_usage\_message](#input\_cpu\_usage\_message) | Custom message for Mysql CPU monitor | `string` | `""` | no | +| [cpu\_usage\_threshold\_critical](#input\_cpu\_usage\_threshold\_critical) | Mysql CPU usage in percent (critical threshold) | `string` | `"90"` | no | +| [cpu\_usage\_threshold\_warning](#input\_cpu\_usage\_threshold\_warning) | Mysql CPU usage in percent (warning threshold) | `string` | `"80"` | no | +| [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](#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](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [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](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [free\_storage\_enabled](#input\_free\_storage\_enabled) | Flag to enable Mysql status monitor | `string` | `"true"` | no | +| [free\_storage\_extra\_tags](#input\_free\_storage\_extra\_tags) | Extra tags for Mysql status monitor | `list(string)` | `[]` | no | +| [free\_storage\_message](#input\_free\_storage\_message) | Custom message for Mysql Free Storage monitor | `string` | `""` | no | +| [free\_storage\_threshold\_critical](#input\_free\_storage\_threshold\_critical) | Mysql Free Storage remaining in percent (critical threshold) | `string` | `"10"` | no | +| [free\_storage\_threshold\_warning](#input\_free\_storage\_threshold\_warning) | Mysql Free Storage remaining in percent (warning threshold) | `string` | `"20"` | no | +| [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](#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](#input\_io\_consumption\_enabled) | Flag to enable Mysql status monitor | `string` | `"true"` | no | +| [io\_consumption\_extra\_tags](#input\_io\_consumption\_extra\_tags) | Extra tags for Mysql status monitor | `list(string)` | `[]` | no | +| [io\_consumption\_message](#input\_io\_consumption\_message) | Custom message for Mysql IO consumption monitor | `string` | `""` | no | +| [io\_consumption\_threshold\_critical](#input\_io\_consumption\_threshold\_critical) | Mysql IO consumption in percent (critical threshold) | `string` | `"90"` | no | +| [io\_consumption\_threshold\_warning](#input\_io\_consumption\_threshold\_warning) | Mysql IO consumption in percent (warning threshold) | `string` | `"80"` | no | +| [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](#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](#input\_memory\_usage\_enabled) | Flag to enable Mysql status monitor | `string` | `"true"` | no | +| [memory\_usage\_extra\_tags](#input\_memory\_usage\_extra\_tags) | Extra tags for Mysql status monitor | `list(string)` | `[]` | no | +| [memory\_usage\_message](#input\_memory\_usage\_message) | Custom message for Mysql memory monitor | `string` | `""` | no | +| [memory\_usage\_threshold\_critical](#input\_memory\_usage\_threshold\_critical) | Mysql memory usage in percent (critical threshold) | `string` | `"90"` | no | +| [memory\_usage\_threshold\_warning](#input\_memory\_usage\_threshold\_warning) | Mysql memory usage in percent (warning threshold) | `string` | `"80"` | no | +| [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](#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](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | ## Outputs | Name | Description | |------|-------------| -| mysql\_cpu\_usage\_id | id for monitor mysql\_cpu\_usage | -| mysql\_free\_storage\_id | id for monitor mysql\_free\_storage | -| mysql\_io\_consumption\_id | id for monitor mysql\_io\_consumption | -| mysql\_memory\_usage\_id | id for monitor mysql\_memory\_usage | - +| [mysql\_cpu\_usage\_id](#output\_mysql\_cpu\_usage\_id) | id for monitor mysql\_cpu\_usage | +| [mysql\_free\_storage\_id](#output\_mysql\_free\_storage\_id) | id for monitor mysql\_free\_storage | +| [mysql\_io\_consumption\_id](#output\_mysql\_io\_consumption\_id) | id for monitor mysql\_io\_consumption | +| [mysql\_memory\_usage\_id](#output\_mysql\_memory\_usage\_id) | id for monitor mysql\_memory\_usage | ## Related documentation DataDog documentation: [https://docs.datadoghq.com/integrations/azure/](https://docs.datadoghq.com/integrations/azure/) diff --git a/cloud/azure/mysql/versions.tf b/cloud/azure/mysql/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/azure/mysql/versions.tf +++ b/cloud/azure/mysql/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/azure/postgresql/README.md b/cloud/azure/postgresql/README.md index 0620e6b..4e1121c 100644 --- a/cloud/azure/postgresql/README.md +++ b/cloud/azure/postgresql/README.md @@ -27,65 +27,87 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [cpu\_usage\_enabled](#input\_cpu\_usage\_enabled) | Flag to enable PostgreSQL status monitor | `string` | `"true"` | no | +| [cpu\_usage\_extra\_tags](#input\_cpu\_usage\_extra\_tags) | Extra tags for PostgreSQL status monitor | `list(string)` | `[]` | no | +| [cpu\_usage\_message](#input\_cpu\_usage\_message) | Custom message for PostgreSQL CPU monitor | `string` | `""` | no | +| [cpu\_usage\_threshold\_critical](#input\_cpu\_usage\_threshold\_critical) | PostgreSQL CPU usage in percent (critical threshold) | `string` | `"90"` | no | +| [cpu\_usage\_threshold\_warning](#input\_cpu\_usage\_threshold\_warning) | PostgreSQL CPU usage in percent (warning threshold) | `string` | `"80"` | no | +| [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](#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](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [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](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [free\_storage\_enabled](#input\_free\_storage\_enabled) | Flag to enable PostgreSQL status monitor | `string` | `"true"` | no | +| [free\_storage\_extra\_tags](#input\_free\_storage\_extra\_tags) | Extra tags for PostgreSQL status monitor | `list(string)` | `[]` | no | +| [free\_storage\_message](#input\_free\_storage\_message) | Custom message for PostgreSQL Free Storage monitor | `string` | `""` | no | +| [free\_storage\_threshold\_critical](#input\_free\_storage\_threshold\_critical) | PostgreSQL Free Storage remaining in percent (critical threshold) | `string` | `"10"` | no | +| [free\_storage\_threshold\_warning](#input\_free\_storage\_threshold\_warning) | PostgreSQL Free Storage remaining in percent (warning threshold) | `string` | `"20"` | no | +| [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](#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](#input\_io\_consumption\_enabled) | Flag to enable PostgreSQL status monitor | `string` | `"true"` | no | +| [io\_consumption\_extra\_tags](#input\_io\_consumption\_extra\_tags) | Extra tags for PostgreSQL status monitor | `list(string)` | `[]` | no | +| [io\_consumption\_message](#input\_io\_consumption\_message) | Custom message for PostgreSQL IO consumption monitor | `string` | `""` | no | +| [io\_consumption\_threshold\_critical](#input\_io\_consumption\_threshold\_critical) | PostgreSQL IO consumption in percent (critical threshold) | `string` | `"90"` | no | +| [io\_consumption\_threshold\_warning](#input\_io\_consumption\_threshold\_warning) | PostgreSQL IO consumption in percent (warning threshold) | `string` | `"80"` | no | +| [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](#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](#input\_memory\_usage\_enabled) | Flag to enable PostgreSQL status monitor | `string` | `"true"` | no | +| [memory\_usage\_extra\_tags](#input\_memory\_usage\_extra\_tags) | Extra tags for PostgreSQL status monitor | `list(string)` | `[]` | no | +| [memory\_usage\_message](#input\_memory\_usage\_message) | Custom message for PostgreSQL memory monitor | `string` | `""` | no | +| [memory\_usage\_threshold\_critical](#input\_memory\_usage\_threshold\_critical) | PostgreSQL memory usage in percent (critical threshold) | `string` | `"90"` | no | +| [memory\_usage\_threshold\_warning](#input\_memory\_usage\_threshold\_warning) | PostgreSQL memory usage in percent (warning threshold) | `string` | `"80"` | no | +| [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](#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](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [no\_connection\_enabled](#input\_no\_connection\_enabled) | Flag to enable PostgreSQL status monitor | `string` | `"true"` | no | +| [no\_connection\_extra\_tags](#input\_no\_connection\_extra\_tags) | Extra tags for PostgreSQL status monitor | `list(string)` | `[]` | no | +| [no\_connection\_message](#input\_no\_connection\_message) | Custom message for PostgreSQL no connection monitor | `string` | `""` | no | +| [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](#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](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [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](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | ## Outputs | Name | Description | |------|-------------| -| postgresql\_cpu\_usage\_id | id for monitor postgresql\_cpu\_usage | -| postgresql\_free\_storage\_id | id for monitor postgresql\_free\_storage | -| postgresql\_io\_consumption\_id | id for monitor postgresql\_io\_consumption | -| postgresql\_memory\_usage\_id | id for monitor postgresql\_memory\_usage | -| postgresql\_no\_connection\_id | id for monitor postgresql\_no\_connection | - +| [postgresql\_cpu\_usage\_id](#output\_postgresql\_cpu\_usage\_id) | id for monitor postgresql\_cpu\_usage | +| [postgresql\_free\_storage\_id](#output\_postgresql\_free\_storage\_id) | id for monitor postgresql\_free\_storage | +| [postgresql\_io\_consumption\_id](#output\_postgresql\_io\_consumption\_id) | id for monitor postgresql\_io\_consumption | +| [postgresql\_memory\_usage\_id](#output\_postgresql\_memory\_usage\_id) | id for monitor postgresql\_memory\_usage | +| [postgresql\_no\_connection\_id](#output\_postgresql\_no\_connection\_id) | id for monitor postgresql\_no\_connection | ## Related documentation DataDog documentation: [https://docs.datadoghq.com/integrations/azure/](https://docs.datadoghq.com/integrations/azure/) diff --git a/cloud/azure/postgresql/versions.tf b/cloud/azure/postgresql/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/azure/postgresql/versions.tf +++ b/cloud/azure/postgresql/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/azure/redis/README.md b/cloud/azure/redis/README.md index c4cf476..01991b1 100644 --- a/cloud/azure/redis/README.md +++ b/cloud/azure/redis/README.md @@ -26,58 +26,79 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| environment | Architecture environment | `string` | n/a | yes | -| 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 | -| 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 | -| evictedkeys\_limit\_threshold\_critical | Evicted keys limit (critical threshold) | `number` | `100` | no | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| status\_enabled | Flag to enable Redis status monitor | `string` | `"true"` | no | -| status\_extra\_tags | Extra tags for Redis status monitor | `list(string)` | `[]` | no | -| status\_message | Custom message for Redis status monitor | `string` | `""` | no | -| 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 | -| 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 | +| [environment](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [evictedkeys\_limit\_enabled](#input\_evictedkeys\_limit\_enabled) | Flag to enable Redis evicted keys monitor | `string` | `"true"` | no | +| [evictedkeys\_limit\_extra\_tags](#input\_evictedkeys\_limit\_extra\_tags) | Extra tags for Redis evicted keys monitor | `list(string)` | `[]` | no | +| [evictedkeys\_limit\_message](#input\_evictedkeys\_limit\_message) | Custom message for Redis evicted keys monitor | `string` | `""` | no | +| [evictedkeys\_limit\_threshold\_critical](#input\_evictedkeys\_limit\_threshold\_critical) | Evicted keys limit (critical threshold) | `number` | `100` | no | +| [evictedkeys\_limit\_threshold\_warning](#input\_evictedkeys\_limit\_threshold\_warning) | Evicted keys limit (warning threshold) | `number` | `0` | no | +| [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](#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](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | +| [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](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when a Redis monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [percent\_processor\_time\_enabled](#input\_percent\_processor\_time\_enabled) | Flag to enable Redis processor monitor | `string` | `"true"` | no | +| [percent\_processor\_time\_extra\_tags](#input\_percent\_processor\_time\_extra\_tags) | Extra tags for Redis processor monitor | `list(string)` | `[]` | no | +| [percent\_processor\_time\_message](#input\_percent\_processor\_time\_message) | Custom message for Redis processor monitor | `string` | `""` | no | +| [percent\_processor\_time\_threshold\_critical](#input\_percent\_processor\_time\_threshold\_critical) | Processor time percent (critical threshold) | `number` | `80` | no | +| [percent\_processor\_time\_threshold\_warning](#input\_percent\_processor\_time\_threshold\_warning) | Processor time percent (warning threshold) | `number` | `60` | no | +| [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](#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](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [server\_load\_rate\_enabled](#input\_server\_load\_rate\_enabled) | Flag to enable Redis server load monitor | `string` | `"true"` | no | +| [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](#input\_server\_load\_rate\_message) | Custom message for Redis server load monitor | `string` | `""` | no | +| [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](#input\_server\_load\_rate\_threshold\_warning) | Server CPU load rate (warning threshold) | `number` | `70` | no | +| [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](#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](#input\_status\_enabled) | Flag to enable Redis status monitor | `string` | `"true"` | no | +| [status\_extra\_tags](#input\_status\_extra\_tags) | Extra tags for Redis status monitor | `list(string)` | `[]` | no | +| [status\_message](#input\_status\_message) | Custom message for Redis status monitor | `string` | `""` | no | +| [status\_no\_data\_timeframe](#input\_status\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no | +| [status\_time\_aggregator](#input\_status\_time\_aggregator) | Monitor aggregator for Redis status [available values: min, max or avg] | `string` | `"max"` | no | +| [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 | Name | Description | |------|-------------| -| evictedkeys\_id | id for monitor evictedkeys | -| percent\_processor\_time\_id | id for monitor percent\_processor\_time | -| server\_load\_id | id for monitor server\_load | -| status\_id | id for monitor status | - +| [evictedkeys\_id](#output\_evictedkeys\_id) | id for monitor evictedkeys | +| [percent\_processor\_time\_id](#output\_percent\_processor\_time\_id) | id for monitor percent\_processor\_time | +| [server\_load\_id](#output\_server\_load\_id) | id for monitor server\_load | +| [status\_id](#output\_status\_id) | id for monitor status | ## Related documentation DataDog documentation: [https://docs.datadoghq.com/integrations/azure_redis_cache/](https://docs.datadoghq.com/integrations/azure_redis_cache/) diff --git a/cloud/azure/redis/versions.tf b/cloud/azure/redis/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/azure/redis/versions.tf +++ b/cloud/azure/redis/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/azure/serverfarms/README.md b/cloud/azure/serverfarms/README.md index 0f1c703..0a6db2a 100644 --- a/cloud/azure/serverfarms/README.md +++ b/cloud/azure/serverfarms/README.md @@ -25,48 +25,68 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| 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 | -| cpu\_percentage\_message | Custom message for serverfarm cpu\_percentage monitor | `string` | `""` | no | -| cpu\_percentage\_threshold\_critical | CPU percentage (critical threshold) | `number` | `95` | no | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| memory\_percentage\_threshold\_critical | Memory percentage (critical threshold) | `number` | `95` | no | -| 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 | -| 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 | -| 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 | -| 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 | -| status\_extra\_tags | Extra tags for serverfarms status monitor | `list(string)` | `[]` | no | -| status\_message | Custom message for serverfarm status monitor | `string` | `""` | no | -| 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 | -| 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 | +| [cpu\_percentage\_enabled](#input\_cpu\_percentage\_enabled) | Flag to enable the serverfarms cpu\_percentage monitor | `string` | `"true"` | no | +| [cpu\_percentage\_extra\_tags](#input\_cpu\_percentage\_extra\_tags) | Extra tags for serverfarms cpu\_percentage monitor | `list(string)` | `[]` | no | +| [cpu\_percentage\_message](#input\_cpu\_percentage\_message) | Custom message for serverfarm cpu\_percentage monitor | `string` | `""` | no | +| [cpu\_percentage\_threshold\_critical](#input\_cpu\_percentage\_threshold\_critical) | CPU percentage (critical threshold) | `number` | `95` | no | +| [cpu\_percentage\_threshold\_warning](#input\_cpu\_percentage\_threshold\_warning) | CPU percentage (warning threshold) | `number` | `90` | no | +| [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](#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](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [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](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [memory\_percentage\_enabled](#input\_memory\_percentage\_enabled) | Flag to enable the serverfarms memory\_percentage monitor | `string` | `"true"` | no | +| [memory\_percentage\_extra\_tags](#input\_memory\_percentage\_extra\_tags) | Extra tags for serverfarms memory\_percentage monitor | `list(string)` | `[]` | no | +| [memory\_percentage\_message](#input\_memory\_percentage\_message) | Custom message for serverfarm memory\_percentage monitor | `string` | `""` | no | +| [memory\_percentage\_threshold\_critical](#input\_memory\_percentage\_threshold\_critical) | Memory percentage (critical threshold) | `number` | `95` | no | +| [memory\_percentage\_threshold\_warning](#input\_memory\_percentage\_threshold\_warning) | Memory percentage (warning threshold) | `number` | `90` | no | +| [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](#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](#input\_message) | Message sent when a serverfarms monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [status\_enabled](#input\_status\_enabled) | Flag to enable the serverfarms status monitor | `string` | `"true"` | no | +| [status\_extra\_tags](#input\_status\_extra\_tags) | Extra tags for serverfarms status monitor | `list(string)` | `[]` | no | +| [status\_message](#input\_status\_message) | Custom message for serverfarm status monitor | `string` | `""` | no | +| [status\_no\_data\_timeframe](#input\_status\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no | +| [status\_time\_aggregator](#input\_status\_time\_aggregator) | Monitor aggregator for serverfarms status [available values: min, max or avg] | `string` | `"max"` | no | +| [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 | Name | Description | |------|-------------| -| cpu\_percentage\_id | id for monitor cpu\_percentage | -| memory\_percentage\_id | id for monitor memory\_percentage | -| status\_id | id for monitor status | - +| [cpu\_percentage\_id](#output\_cpu\_percentage\_id) | id for monitor cpu\_percentage | +| [memory\_percentage\_id](#output\_memory\_percentage\_id) | id for monitor memory\_percentage | +| [status\_id](#output\_status\_id) | id for monitor status | ## Related documentation diff --git a/cloud/azure/serverfarms/versions.tf b/cloud/azure/serverfarms/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/azure/serverfarms/versions.tf +++ b/cloud/azure/serverfarms/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/azure/servicebus/README.md b/cloud/azure/servicebus/README.md index 88ecc3b..9b9c6f3 100644 --- a/cloud/azure/servicebus/README.md +++ b/cloud/azure/servicebus/README.md @@ -26,56 +26,77 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| environment | Architecture Environment | `string` | n/a | yes | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| status\_extra\_tags | Extra tags for Service Bus status monitor | `list(string)` | `[]` | no | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | +| [environment](#input\_environment) | Architecture Environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [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](#input\_no\_active\_connections\_extra\_tags) | Extra tags for Service Bus no active connections monitor | `list(string)` | `[]` | no | +| [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](#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](#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](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [server\_errors\_enabled](#input\_server\_errors\_enabled) | Flag to enable Service Bus server errors monitor | `string` | `"true"` | no | +| [server\_errors\_extra\_tags](#input\_server\_errors\_extra\_tags) | Extra tags for Service Bus server errors monitor | `list(string)` | `[]` | no | +| [server\_errors\_message](#input\_server\_errors\_message) | Custom message for Service Bus server errors monitor | `string` | `""` | no | +| [server\_errors\_threshold\_critical](#input\_server\_errors\_threshold\_critical) | Critical threshold for Service Bus server errors monitor | `number` | `90` | no | +| [server\_errors\_threshold\_warning](#input\_server\_errors\_threshold\_warning) | Warning threshold for Service Bus server errors monitor | `number` | `50` | no | +| [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](#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](#input\_servicebus\_status\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no | +| [status\_enabled](#input\_status\_enabled) | Flag to enable Service Bus status monitor | `string` | `"true"` | no | +| [status\_extra\_tags](#input\_status\_extra\_tags) | Extra tags for Service Bus status monitor | `list(string)` | `[]` | no | +| [status\_message](#input\_status\_message) | Custom message for Service Bus status monitor | `string` | `""` | no | +| [status\_time\_aggregator](#input\_status\_time\_aggregator) | Monitor aggregator for Service Bus status [available values: min, max or avg] | `string` | `"max"` | no | +| [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](#input\_user\_errors\_enabled) | Flag to enable Service Bus user errors monitor | `string` | `"true"` | no | +| [user\_errors\_extra\_tags](#input\_user\_errors\_extra\_tags) | Extra tags for Service Bus user errors monitor | `list(string)` | `[]` | no | +| [user\_errors\_message](#input\_user\_errors\_message) | Custom message for Service Bus user errors monitor | `string` | `""` | no | +| [user\_errors\_threshold\_critical](#input\_user\_errors\_threshold\_critical) | Critical threshold for Service Bus user errors monitor | `number` | `90` | no | +| [user\_errors\_threshold\_warning](#input\_user\_errors\_threshold\_warning) | Warning threshold for Service Bus user errors monitor | `number` | `50` | no | +| [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](#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 | Name | Description | |------|-------------| -| 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 | -| service\_bus\_user\_errors\_id | id for monitor service\_bus\_user\_errors | -| servicebus\_status\_id | id for monitor servicebus\_status | - +| [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](#output\_service\_bus\_server\_errors\_id) | id for monitor service\_bus\_server\_errors | +| [service\_bus\_user\_errors\_id](#output\_service\_bus\_user\_errors\_id) | id for monitor service\_bus\_user\_errors | +| [servicebus\_status\_id](#output\_servicebus\_status\_id) | id for monitor servicebus\_status | ## Related documentation DataDog documentation : [https://docs.datadoghq.com/integrations/azure/](https://docs.datadoghq.com/integrations/azure/) diff --git a/cloud/azure/servicebus/versions.tf b/cloud/azure/servicebus/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/azure/servicebus/versions.tf +++ b/cloud/azure/servicebus/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/azure/sql-database/README.md b/cloud/azure/sql-database/README.md index 6785f78..104b8ba 100644 --- a/cloud/azure/sql-database/README.md +++ b/cloud/azure/sql-database/README.md @@ -27,64 +27,86 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| cpu\_enabled | Flag to enable SQL CPU monitor | `string` | `"true"` | no | -| cpu\_extra\_tags | Extra tags for SQL CPU monitor | `list(string)` | `[]` | no | -| cpu\_message | Custom message for SQL CPU monitor | `string` | `""` | no | -| cpu\_threshold\_critical | CPU usage in percent (critical threshold) | `string` | `"90"` | no | -| cpu\_threshold\_warning | CPU usage in percent (warning threshold) | `string` | `"80"` | no | -| cpu\_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 | -| deadlock\_enabled | Flag to enable SQL Deadlock monitor | `string` | `"true"` | no | -| deadlock\_extra\_tags | Extra tags for SQL Deadlock monitor | `list(string)` | `[]` | no | -| deadlock\_message | Custom message for SQL Deadlock monitor | `string` | `""` | no | -| 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 | -| 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 | -| diskspace\_message | Custom message for SQL disk space monitor | `string` | `""` | no | -| diskspace\_threshold\_critical | Disk space used in percent (critical threshold) | `string` | `"90"` | no | -| diskspace\_threshold\_warning | Disk space used in percent (warning threshold) | `string` | `"80"` | no | -| diskspace\_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 | -| dtu\_enabled | Flag to enable SQL DTU monitor | `string` | `"true"` | no | -| dtu\_extra\_tags | Extra tags for SQL DTU monitor | `list(string)` | `[]` | no | -| dtu\_message | Custom message for SQL DTU monitor | `string` | `""` | no | -| dtu\_threshold\_critical | Amount of DTU used (critical threshold) | `string` | `"90"` | no | -| dtu\_threshold\_warning | Amount of DTU used (warning threshold) | `string` | `"85"` | no | -| dtu\_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 | -| environment | Architecture Environment | `string` | n/a | yes | -| 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 | -| 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 | -| 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 | -| 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 | -| status\_enabled | Flag to enable Redis status monitor | `string` | `"true"` | no | -| status\_extra\_tags | Extra tags for Redis status monitor | `list(string)` | `[]` | no | -| status\_message | Custom message for Redis status monitor | `string` | `""` | no | -| 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 | -| 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 | +| [cpu\_enabled](#input\_cpu\_enabled) | Flag to enable SQL CPU monitor | `string` | `"true"` | no | +| [cpu\_extra\_tags](#input\_cpu\_extra\_tags) | Extra tags for SQL CPU monitor | `list(string)` | `[]` | no | +| [cpu\_message](#input\_cpu\_message) | Custom message for SQL CPU monitor | `string` | `""` | no | +| [cpu\_threshold\_critical](#input\_cpu\_threshold\_critical) | CPU usage in percent (critical threshold) | `string` | `"90"` | no | +| [cpu\_threshold\_warning](#input\_cpu\_threshold\_warning) | CPU usage in percent (warning threshold) | `string` | `"80"` | no | +| [cpu\_time\_aggregator](#input\_cpu\_time\_aggregator) | Monitor aggregator for SQL CPU [available values: min, max or avg] | `string` | `"min"` | no | +| [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](#input\_deadlock\_enabled) | Flag to enable SQL Deadlock monitor | `string` | `"true"` | no | +| [deadlock\_extra\_tags](#input\_deadlock\_extra\_tags) | Extra tags for SQL Deadlock monitor | `list(string)` | `[]` | no | +| [deadlock\_message](#input\_deadlock\_message) | Custom message for SQL Deadlock monitor | `string` | `""` | no | +| [deadlock\_threshold\_critical](#input\_deadlock\_threshold\_critical) | Amount of Deadlocks (critical threshold) | `string` | `"1"` | no | +| [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](#input\_diskspace\_enabled) | Flag to enable SQL disk space monitor | `string` | `"true"` | no | +| [diskspace\_extra\_tags](#input\_diskspace\_extra\_tags) | Extra tags for SQL disk space monitor | `list(string)` | `[]` | no | +| [diskspace\_message](#input\_diskspace\_message) | Custom message for SQL disk space monitor | `string` | `""` | no | +| [diskspace\_threshold\_critical](#input\_diskspace\_threshold\_critical) | Disk space used in percent (critical threshold) | `string` | `"90"` | no | +| [diskspace\_threshold\_warning](#input\_diskspace\_threshold\_warning) | Disk space used in percent (warning threshold) | `string` | `"80"` | no | +| [diskspace\_time\_aggregator](#input\_diskspace\_time\_aggregator) | Monitor aggregator for SQL disk space [available values: min, max or avg] | `string` | `"max"` | no | +| [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](#input\_dtu\_enabled) | Flag to enable SQL DTU monitor | `string` | `"true"` | no | +| [dtu\_extra\_tags](#input\_dtu\_extra\_tags) | Extra tags for SQL DTU monitor | `list(string)` | `[]` | no | +| [dtu\_message](#input\_dtu\_message) | Custom message for SQL DTU monitor | `string` | `""` | no | +| [dtu\_threshold\_critical](#input\_dtu\_threshold\_critical) | Amount of DTU used (critical threshold) | `string` | `"90"` | no | +| [dtu\_threshold\_warning](#input\_dtu\_threshold\_warning) | Amount of DTU used (warning threshold) | `string` | `"85"` | no | +| [dtu\_time\_aggregator](#input\_dtu\_time\_aggregator) | Monitor aggregator for SQL DTU [available values: min, max or avg] | `string` | `"avg"` | no | +| [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](#input\_environment) | Architecture Environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [status\_enabled](#input\_status\_enabled) | Flag to enable Redis status monitor | `string` | `"true"` | no | +| [status\_extra\_tags](#input\_status\_extra\_tags) | Extra tags for Redis status monitor | `list(string)` | `[]` | no | +| [status\_message](#input\_status\_message) | Custom message for Redis status monitor | `string` | `""` | no | +| [status\_no\_data\_timeframe](#input\_status\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no | +| [status\_time\_aggregator](#input\_status\_time\_aggregator) | Monitor aggregator for Redis status [available values: min, max or avg] | `string` | `"max"` | no | +| [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 | Name | Description | |------|-------------| -| sql-database\_cpu\_id | id for monitor sql-database\_cpu | -| 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 | -| sql-database\_free\_space\_low\_id | id for monitor sql-database\_free\_space\_low | -| status\_id | id for monitor status | - +| [sql-database\_cpu\_id](#output\_sql-database\_cpu\_id) | id for monitor sql-database\_cpu | +| [sql-database\_deadlocks\_count\_id](#output\_sql-database\_deadlocks\_count\_id) | id for monitor sql-database\_deadlocks\_count | +| [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](#output\_sql-database\_free\_space\_low\_id) | id for monitor sql-database\_free\_space\_low | +| [status\_id](#output\_status\_id) | id for monitor status | ## Related documentation DataDog documentation: [https://docs.datadoghq.com/integrations/azure_sql_database/](https://docs.datadoghq.com/integrations/azure_sql_database/) diff --git a/cloud/azure/sql-database/versions.tf b/cloud/azure/sql-database/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/azure/sql-database/versions.tf +++ b/cloud/azure/sql-database/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/azure/sql-elasticpool/README.md b/cloud/azure/sql-elasticpool/README.md index 2f5ca46..4bbf3c5 100644 --- a/cloud/azure/sql-elasticpool/README.md +++ b/cloud/azure/sql-elasticpool/README.md @@ -25,52 +25,72 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| 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 | -| cpu\_message | Custom message for SQL Elastic Pool CPU monitor | `string` | `""` | no | -| cpu\_threshold\_critical | CPU usage in percent (critical threshold) | `string` | `"90"` | no | -| cpu\_threshold\_warning | CPU usage in percent (warning threshold) | `string` | `"80"` | no | -| cpu\_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 | -| 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 | -| 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 | -| 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 | -| 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 | -| 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 | -| dtu\_threshold\_critical | Amount of DTU used (critical threshold) | `string` | `"90"` | no | -| dtu\_threshold\_warning | Amount of DTU used (warning threshold) | `string` | `"85"` | no | -| dtu\_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 | -| environment | Architecture Environment | `string` | n/a | yes | -| 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 | -| 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 | -| 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 | -| 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 | -| sql\_elasticpool\_cpu\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `30` | no | +| [cpu\_enabled](#input\_cpu\_enabled) | Flag to enable SQL Elastic Pool CPU monitor | `string` | `"true"` | no | +| [cpu\_extra\_tags](#input\_cpu\_extra\_tags) | Extra tags for SQL Elastic Pool CPU monitor | `list(string)` | `[]` | no | +| [cpu\_message](#input\_cpu\_message) | Custom message for SQL Elastic Pool CPU monitor | `string` | `""` | no | +| [cpu\_threshold\_critical](#input\_cpu\_threshold\_critical) | CPU usage in percent (critical threshold) | `string` | `"90"` | no | +| [cpu\_threshold\_warning](#input\_cpu\_threshold\_warning) | CPU usage in percent (warning threshold) | `string` | `"80"` | no | +| [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](#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](#input\_diskspace\_enabled) | Flag to enable SQL Elastic Pool disk space monitor | `string` | `"true"` | no | +| [diskspace\_extra\_tags](#input\_diskspace\_extra\_tags) | Extra tags for SQL Elastic Pool disk space monitor | `list(string)` | `[]` | no | +| [diskspace\_message](#input\_diskspace\_message) | Custom message for SQL Elastic Pool disk space monitor | `string` | `""` | no | +| [diskspace\_threshold\_critical](#input\_diskspace\_threshold\_critical) | Disk space used in percent (critical threshold) | `string` | `"90"` | no | +| [diskspace\_threshold\_warning](#input\_diskspace\_threshold\_warning) | Disk space used in percent (warning threshold) | `string` | `"80"` | no | +| [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](#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](#input\_dtu\_enabled) | Flag to enable SQL Elastic Pool DTU monitor | `string` | `"true"` | no | +| [dtu\_extra\_tags](#input\_dtu\_extra\_tags) | Extra tags for SQL Elastic Pool DTU monitor | `list(string)` | `[]` | no | +| [dtu\_message](#input\_dtu\_message) | Custom message for SQL Elastic Pool DTU monitor | `string` | `""` | no | +| [dtu\_threshold\_critical](#input\_dtu\_threshold\_critical) | Amount of DTU used (critical threshold) | `string` | `"90"` | no | +| [dtu\_threshold\_warning](#input\_dtu\_threshold\_warning) | Amount of DTU used (warning threshold) | `string` | `"85"` | no | +| [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](#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](#input\_environment) | Architecture Environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [sql\_elasticpool\_cpu\_no\_data\_timeframe](#input\_sql\_elasticpool\_cpu\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `30` | no | ## Outputs | Name | Description | |------|-------------| -| sql\_elasticpool\_cpu\_id | id for monitor sql\_elasticpool\_cpu | -| 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 | - +| [sql\_elasticpool\_cpu\_id](#output\_sql\_elasticpool\_cpu\_id) | id for monitor sql\_elasticpool\_cpu | +| [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](#output\_sql\_elasticpool\_free\_space\_low\_id) | id for monitor sql\_elasticpool\_free\_space\_low | ## Related documentation DataDog documentation: [https://docs.datadoghq.com/integrations/azure_sql_elastic_pool/](https://docs.datadoghq.com/integrations/azure_sql_elastic_pool/) diff --git a/cloud/azure/sql-elasticpool/versions.tf b/cloud/azure/sql-elasticpool/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/azure/sql-elasticpool/versions.tf +++ b/cloud/azure/sql-elasticpool/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/azure/storage/README.md b/cloud/azure/storage/README.md index efed117..9a27848 100644 --- a/cloud/azure/storage/README.md +++ b/cloud/azure/storage/README.md @@ -55,139 +55,189 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a | +| [filter-tags-authorization-error](#module\_filter-tags-authorization-error) | ../../../common/filter-tags | n/a | +| [filter-tags-blob](#module\_filter-tags-blob) | ../../../common/filter-tags | n/a | +| [filter-tags-client-other-error](#module\_filter-tags-client-other-error) | ../../../common/filter-tags | n/a | +| [filter-tags-client-other-error-blob](#module\_filter-tags-client-other-error-blob) | ../../../common/filter-tags | n/a | +| [filter-tags-network-error](#module\_filter-tags-network-error) | ../../../common/filter-tags | n/a | +| [filter-tags-server-other-error](#module\_filter-tags-server-other-error) | ../../../common/filter-tags | n/a | +| [filter-tags-success](#module\_filter-tags-success) | ../../../common/filter-tags | n/a | +| [filter-tags-success-blob](#module\_filter-tags-success-blob) | ../../../common/filter-tags | n/a | +| [filter-tags-throttling-error](#module\_filter-tags-throttling-error) | ../../../common/filter-tags | n/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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| 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 | -| 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 | -| authorization\_error\_requests\_threshold\_critical | Maximum acceptable percent of authorization error requests for a storage | `number` | `90` | no | -| authorization\_error\_requests\_threshold\_warning | Warning regarding acceptable percent of authorization error requests for a storage | `number` | `50` | no | -| authorization\_error\_requests\_time\_aggregator | Monitor aggregator for Storage authorization errors [available values: min, max or avg] | `string` | `"min"` | 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 | -| availability\_enabled | Flag to enable Storage availability monitor | `string` | `"true"` | no | -| availability\_extra\_tags | Extra tags for Storage availability monitor | `list(string)` | `[]` | no | -| availability\_message | Custom message for Storage availability monitor | `string` | `""` | no | -| availability\_silenced | Groups to mute for Storage availability monitor | `map(string)` | `{}` | no | -| availability\_threshold\_critical | Minimum acceptable percent of availability for a storage | `number` | `50` | no | -| availability\_threshold\_warning | Warning regarding acceptable percent of availability for a storage | `number` | `90` | no | -| availability\_time\_aggregator | Monitor aggregator for Storage availability [available values: min, max or avg] | `string` | `"max"` | 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 | -| client\_other\_error\_requests\_enabled | Flag to enable Storage other errors monitor | `string` | `"true"` | no | -| client\_other\_error\_requests\_extra\_tags | Extra tags for Storage other errors monitor | `list(string)` | `[]` | no | -| client\_other\_error\_requests\_message | Custom message for Storage other errors monitor | `string` | `""` | no | -| client\_other\_error\_requests\_silenced | Groups to mute for Storage other errors monitor | `map(string)` | `{}` | no | -| client\_other\_error\_requests\_threshold\_critical | Maximum acceptable percent of client other error requests for a storage | `number` | `90` | no | -| 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\_time\_aggregator | Monitor aggregator for Storage other errors [available values: min, max or avg] | `string` | `"min"` | 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 | -| environment | Architecture environment | `string` | n/a | yes | -| 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 | -| 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 | -| latency\_enabled | Flag to enable Storage latency monitor | `string` | `"true"` | no | -| latency\_extra\_tags | Extra tags for Storage latency monitor | `list(string)` | `[]` | no | -| latency\_message | Custom message for Storage latency monitor | `string` | `""` | no | -| latency\_silenced | Groups to mute for Storage latency monitor | `map(string)` | `{}` | no | -| latency\_threshold\_critical | Maximum acceptable end to end latency (ms) for a storage | `number` | `2000` | no | -| latency\_threshold\_warning | Warning regarding acceptable end to end latency (ms) for a storage | `number` | `1000` | no | -| latency\_time\_aggregator | Monitor aggregator for Storage latency [available values: min, max or avg] | `string` | `"min"` | 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 | -| message | Message sent when a Redis monitor is triggered | `any` | n/a | yes | -| network\_error\_requests\_enabled | Flag to enable Storage network errors monitor | `string` | `"true"` | no | -| network\_error\_requests\_extra\_tags | Extra tags for Storage network errors monitor | `list(string)` | `[]` | no | -| network\_error\_requests\_message | Custom message for Storage network errors monitor | `string` | `""` | no | -| network\_error\_requests\_silenced | Groups to mute for Storage network errors monitor | `map(string)` | `{}` | no | -| network\_error\_requests\_threshold\_critical | Maximum acceptable percent of network error requests for a storage | `number` | `90` | no | -| network\_error\_requests\_threshold\_warning | Warning regarding acceptable percent of network error requests for a storage | `number` | `50` | no | -| network\_error\_requests\_time\_aggregator | Monitor aggregator for Storage network errors [available values: min, max or avg] | `string` | `"min"` | 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 | -| 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 | -| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | -| server\_other\_error\_requests\_enabled | Flag to enable Storage server other errors monitor | `string` | `"true"` | no | -| server\_other\_error\_requests\_extra\_tags | Extra tags for Storage server other errors monitor | `list(string)` | `[]` | no | -| server\_other\_error\_requests\_message | Custom message for Storage server other errors monitor | `string` | `""` | no | -| server\_other\_error\_requests\_silenced | Groups to mute for Storage server other errors monitor | `map(string)` | `{}` | no | -| server\_other\_error\_requests\_threshold\_critical | Maximum acceptable percent of server other error requests for a storage | `number` | `90` | no | -| 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\_time\_aggregator | Monitor aggregator for Storage other errors [available values: min, max or avg] | `string` | `"min"` | 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 | -| 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 | -| status\_message | Custom message for storage Services status monitor | `string` | `""` | no | -| status\_silenced | Groups to mute for App Services status monitor | `map(string)` | `{}` | no | -| status\_time\_aggregator | Monitor aggregator for Storage Services status [available values: min, max or avg] | `string` | `"max"` | 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 | -| storage\_status\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | -| successful\_requests\_enabled | Flag to enable Storage sucessful requests monitor | `string` | `"true"` | no | -| successful\_requests\_extra\_tags | Extra tags for Storage sucessful requests monitor | `list(string)` | `[]` | no | -| successful\_requests\_message | Custom message for Storage sucessful requests monitor | `string` | `""` | no | -| successful\_requests\_silenced | Groups to mute for Storage sucessful requests monitor | `map(string)` | `{}` | no | -| successful\_requests\_time\_aggregator | Monitor aggregator for Storage sucessful requests [available values: min, max or avg] | `string` | `"max"` | 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 | -| successful\_storage\_requests\_threshold\_critical | Minimum acceptable percent of successful requests for a storage | `number` | `90` | no | -| successful\_storage\_requests\_threshold\_warning | Warning regarding acceptable percent of successful requests for a storage | `number` | `70` | no | -| throttling\_error\_requests\_enabled | Flag to enable Storage throttling error monitor | `string` | `"true"` | no | -| throttling\_error\_requests\_extra\_tags | Extra tags for Storage throttling error monitor | `list(string)` | `[]` | no | -| throttling\_error\_requests\_message | Custom message for Storage throttling error monitor | `string` | `""` | no | -| throttling\_error\_requests\_silenced | Groups to mute for Storage throttling error monitor | `map(string)` | `{}` | no | -| throttling\_error\_requests\_threshold\_critical | Maximum acceptable percent of throttling error requests for a storage | `number` | `90` | no | -| throttling\_error\_requests\_threshold\_warning | Warning regarding acceptable percent of throttling error requests for a storage | `number` | `50` | 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 | +| [authorization\_error\_requests\_enabled](#input\_authorization\_error\_requests\_enabled) | Flag to enable Storage authorization errors monitor | `string` | `"true"` | no | +| [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](#input\_authorization\_error\_requests\_message) | Custom message for Storage authorization errors monitor | `string` | `""` | no | +| [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\_warning](#input\_authorization\_error\_requests\_threshold\_warning) | Warning regarding acceptable percent of authorization error requests for a storage | `number` | `50` | no | +| [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\_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 | +| [availability\_enabled](#input\_availability\_enabled) | Flag to enable Storage availability monitor | `string` | `"true"` | no | +| [availability\_extra\_tags](#input\_availability\_extra\_tags) | Extra tags for Storage availability monitor | `list(string)` | `[]` | no | +| [availability\_message](#input\_availability\_message) | Custom message for Storage availability monitor | `string` | `""` | no | +| [availability\_threshold\_critical](#input\_availability\_threshold\_critical) | Minimum acceptable percent of availability for a storage | `number` | `50` | no | +| [availability\_threshold\_warning](#input\_availability\_threshold\_warning) | Warning regarding acceptable percent of availability for a storage | `number` | `90` | no | +| [availability\_time\_aggregator](#input\_availability\_time\_aggregator) | Monitor aggregator for Storage availability [available values: min, max or avg] | `string` | `"max"` | no | +| [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 | +| [client\_other\_error\_requests\_enabled](#input\_client\_other\_error\_requests\_enabled) | Flag to enable Storage other errors monitor | `string` | `"true"` | no | +| [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\_message](#input\_client\_other\_error\_requests\_message) | Custom message for Storage other errors monitor | `string` | `""` | no | +| [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\_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\_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\_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 | +| [environment](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [latency\_enabled](#input\_latency\_enabled) | Flag to enable Storage latency monitor | `string` | `"true"` | no | +| [latency\_extra\_tags](#input\_latency\_extra\_tags) | Extra tags for Storage latency monitor | `list(string)` | `[]` | no | +| [latency\_message](#input\_latency\_message) | Custom message for Storage latency monitor | `string` | `""` | no | +| [latency\_threshold\_critical](#input\_latency\_threshold\_critical) | Maximum acceptable end to end latency (ms) for a storage | `number` | `2000` | no | +| [latency\_threshold\_warning](#input\_latency\_threshold\_warning) | Warning regarding acceptable end to end latency (ms) for a storage | `number` | `1000` | no | +| [latency\_time\_aggregator](#input\_latency\_time\_aggregator) | Monitor aggregator for Storage latency [available values: min, max or avg] | `string` | `"min"` | no | +| [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 | +| [message](#input\_message) | Message sent when a Redis monitor is triggered | `any` | n/a | yes | +| [network\_error\_requests\_enabled](#input\_network\_error\_requests\_enabled) | Flag to enable Storage network errors monitor | `string` | `"true"` | no | +| [network\_error\_requests\_extra\_tags](#input\_network\_error\_requests\_extra\_tags) | Extra tags for Storage network errors monitor | `list(string)` | `[]` | no | +| [network\_error\_requests\_message](#input\_network\_error\_requests\_message) | Custom message for Storage network errors monitor | `string` | `""` | no | +| [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\_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\_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\_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 | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [server\_other\_error\_requests\_enabled](#input\_server\_other\_error\_requests\_enabled) | Flag to enable Storage server other errors monitor | `string` | `"true"` | no | +| [server\_other\_error\_requests\_extra\_tags](#input\_server\_other\_error\_requests\_extra\_tags) | Extra tags for Storage server other errors monitor | `list(string)` | `[]` | no | +| [server\_other\_error\_requests\_message](#input\_server\_other\_error\_requests\_message) | Custom message for Storage server other errors monitor | `string` | `""` | no | +| [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 | +| [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\_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\_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 | +| [status\_enabled](#input\_status\_enabled) | Flag to enable App Services status monitor | `string` | `"true"` | no | +| [status\_extra\_tags](#input\_status\_extra\_tags) | Extra tags for App Services status monitor | `list(string)` | `[]` | no | +| [status\_message](#input\_status\_message) | Custom message for storage Services status monitor | `string` | `""` | no | +| [status\_time\_aggregator](#input\_status\_time\_aggregator) | Monitor aggregator for Storage Services status [available values: min, max or avg] | `string` | `"max"` | no | +| [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 | +| [storage\_status\_no\_data\_timeframe](#input\_storage\_status\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no | +| [successful\_requests\_enabled](#input\_successful\_requests\_enabled) | Flag to enable Storage sucessful requests monitor | `string` | `"true"` | no | +| [successful\_requests\_extra\_tags](#input\_successful\_requests\_extra\_tags) | Extra tags for Storage sucessful requests monitor | `list(string)` | `[]` | no | +| [successful\_requests\_message](#input\_successful\_requests\_message) | Custom message for Storage sucessful requests monitor | `string` | `""` | no | +| [successful\_requests\_time\_aggregator](#input\_successful\_requests\_time\_aggregator) | Monitor aggregator for Storage sucessful requests [available values: min, max or avg] | `string` | `"max"` | no | +| [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 | +| [successful\_storage\_requests\_threshold\_critical](#input\_successful\_storage\_requests\_threshold\_critical) | Minimum acceptable percent of successful requests for a storage | `number` | `90` | no | +| [successful\_storage\_requests\_threshold\_warning](#input\_successful\_storage\_requests\_threshold\_warning) | Warning regarding acceptable percent of successful requests for a storage | `number` | `70` | no | +| [throttling\_error\_requests\_enabled](#input\_throttling\_error\_requests\_enabled) | Flag to enable Storage throttling error monitor | `string` | `"true"` | no | +| [throttling\_error\_requests\_extra\_tags](#input\_throttling\_error\_requests\_extra\_tags) | Extra tags for Storage throttling error monitor | `list(string)` | `[]` | no | +| [throttling\_error\_requests\_message](#input\_throttling\_error\_requests\_message) | Custom message for Storage throttling error monitor | `string` | `""` | no | +| [throttling\_error\_requests\_threshold\_critical](#input\_throttling\_error\_requests\_threshold\_critical) | Maximum acceptable percent of throttling error requests for a storage | `number` | `90` | no | +| [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 | +| [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 | +| [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 | +| [timeout\_error\_requests\_enabled](#input\_timeout\_error\_requests\_enabled) | Flag to enable Storage timeout monitor | `string` | `"true"` | no | +| [timeout\_error\_requests\_extra\_tags](#input\_timeout\_error\_requests\_extra\_tags) | Extra tags for Storage timeout monitor | `list(string)` | `[]` | no | +| [timeout\_error\_requests\_message](#input\_timeout\_error\_requests\_message) | Custom message for Storage timeout monitor | `string` | `""` | no | +| [timeout\_error\_requests\_threshold\_critical](#input\_timeout\_error\_requests\_threshold\_critical) | Maximum acceptable percent of timeout error requests for a storage | `number` | `90` | no | +| [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 | +| [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 | +| [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 | ## Outputs | Name | Description | |------|-------------| -| 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 | -| 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 | -| blob\_throttling\_error\_requests\_id | id for monitor blob\_throttling\_error\_requests | -| blob\_timeout\_error\_requests\_id | id for monitor blob\_timeout\_error\_requests | -| blobservices\_latency\_id | id for monitor blobservices\_latency | -| blobservices\_requests\_error\_id | id for monitor blobservices\_requests\_error | -| 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 | -| 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 | -| file\_throttling\_error\_requests\_id | id for monitor file\_throttling\_error\_requests | -| file\_timeout\_error\_requests\_id | id for monitor file\_timeout\_error\_requests | -| fileservices\_latency\_id | id for monitor fileservices\_latency | -| fileservices\_requests\_error\_id | id for monitor fileservices\_requests\_error | -| 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 | -| 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 | -| queue\_throttling\_error\_requests\_id | id for monitor queue\_throttling\_error\_requests | -| queue\_timeout\_error\_requests\_id | id for monitor queue\_timeout\_error\_requests | -| queueservices\_latency\_id | id for monitor queueservices\_latency | -| queueservices\_requests\_error\_id | id for monitor queueservices\_requests\_error | -| storage\_status\_id | id for monitor storage\_status | -| 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 | -| 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 | -| table\_throttling\_error\_requests\_id | id for monitor table\_throttling\_error\_requests | -| table\_timeout\_error\_requests\_id | id for monitor table\_timeout\_error\_requests | -| tableservices\_latency\_id | id for monitor tableservices\_latency | -| tableservices\_requests\_error\_id | id for monitor tableservices\_requests\_error | - +| [blob\_authorization\_error\_requests\_id](#output\_blob\_authorization\_error\_requests\_id) | id for monitor blob\_authorization\_error\_requests | +| [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](#output\_blob\_network\_error\_requests\_id) | id for monitor blob\_network\_error\_requests | +| [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](#output\_blob\_throttling\_error\_requests\_id) | id for monitor blob\_throttling\_error\_requests | +| [blob\_timeout\_error\_requests\_id](#output\_blob\_timeout\_error\_requests\_id) | id for monitor blob\_timeout\_error\_requests | +| [blobservices\_latency\_id](#output\_blobservices\_latency\_id) | id for monitor blobservices\_latency | +| [blobservices\_requests\_error\_id](#output\_blobservices\_requests\_error\_id) | id for monitor blobservices\_requests\_error | +| [file\_authorization\_error\_requests\_id](#output\_file\_authorization\_error\_requests\_id) | id for monitor file\_authorization\_error\_requests | +| [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](#output\_file\_network\_error\_requests\_id) | id for monitor file\_network\_error\_requests | +| [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](#output\_file\_throttling\_error\_requests\_id) | id for monitor file\_throttling\_error\_requests | +| [file\_timeout\_error\_requests\_id](#output\_file\_timeout\_error\_requests\_id) | id for monitor file\_timeout\_error\_requests | +| [fileservices\_latency\_id](#output\_fileservices\_latency\_id) | id for monitor fileservices\_latency | +| [fileservices\_requests\_error\_id](#output\_fileservices\_requests\_error\_id) | id for monitor fileservices\_requests\_error | +| [queue\_authorization\_error\_requests\_id](#output\_queue\_authorization\_error\_requests\_id) | id for monitor queue\_authorization\_error\_requests | +| [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](#output\_queue\_network\_error\_requests\_id) | id for monitor queue\_network\_error\_requests | +| [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](#output\_queue\_throttling\_error\_requests\_id) | id for monitor queue\_throttling\_error\_requests | +| [queue\_timeout\_error\_requests\_id](#output\_queue\_timeout\_error\_requests\_id) | id for monitor queue\_timeout\_error\_requests | +| [queueservices\_latency\_id](#output\_queueservices\_latency\_id) | id for monitor queueservices\_latency | +| [queueservices\_requests\_error\_id](#output\_queueservices\_requests\_error\_id) | id for monitor queueservices\_requests\_error | +| [storage\_status\_id](#output\_storage\_status\_id) | id for monitor storage\_status | +| [table\_authorization\_error\_requests\_id](#output\_table\_authorization\_error\_requests\_id) | id for monitor table\_authorization\_error\_requests | +| [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](#output\_table\_network\_error\_requests\_id) | id for monitor table\_network\_error\_requests | +| [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](#output\_table\_throttling\_error\_requests\_id) | id for monitor table\_throttling\_error\_requests | +| [table\_timeout\_error\_requests\_id](#output\_table\_timeout\_error\_requests\_id) | id for monitor table\_timeout\_error\_requests | +| [tableservices\_latency\_id](#output\_tableservices\_latency\_id) | id for monitor tableservices\_latency | +| [tableservices\_requests\_error\_id](#output\_tableservices\_requests\_error\_id) | id for monitor tableservices\_requests\_error | ## Related documentation DataDog documentation: [https://docs.datadoghq.com/integrations/azure_storage/](https://docs.datadoghq.com/integrations/azure_storage/) diff --git a/cloud/azure/storage/inputs.tf b/cloud/azure/storage/inputs.tf index e95c3d6..9478a7f 100644 --- a/cloud/azure/storage/inputs.tf +++ b/cloud/azure/storage/inputs.tf @@ -51,12 +51,6 @@ variable "filter_tags_custom_excluded" { } # Azure Storage specific variables -variable "availability_silenced" { - description = "Groups to mute for Storage availability monitor" - type = map(string) - default = {} -} - variable "availability_enabled" { description = "Flag to enable Storage availability monitor" type = string @@ -97,12 +91,6 @@ variable "availability_threshold_warning" { default = 90 } -variable "successful_requests_silenced" { - description = "Groups to mute for Storage sucessful requests monitor" - type = map(string) - default = {} -} - variable "successful_requests_enabled" { description = "Flag to enable Storage sucessful requests monitor" type = string @@ -143,12 +131,6 @@ variable "successful_storage_requests_threshold_warning" { default = 70 } -variable "latency_silenced" { - description = "Groups to mute for Storage latency monitor" - type = map(string) - default = {} -} - variable "latency_enabled" { description = "Flag to enable Storage latency monitor" type = string @@ -189,12 +171,6 @@ variable "latency_threshold_warning" { default = 1000 } -variable "timeout_error_requests_silenced" { - description = "Groups to mute for Storage timeout monitor" - type = map(string) - default = {} -} - variable "timeout_error_requests_enabled" { description = "Flag to enable Storage timeout monitor" type = string @@ -235,12 +211,6 @@ variable "timeout_error_requests_threshold_warning" { 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" { description = "Flag to enable Storage network errors monitor" type = string @@ -281,12 +251,6 @@ variable "network_error_requests_threshold_warning" { 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" { description = "Flag to enable Storage throttling error monitor" type = string @@ -327,12 +291,6 @@ variable "throttling_error_requests_threshold_warning" { 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" { description = "Flag to enable Storage server other errors monitor" type = string @@ -373,12 +331,6 @@ variable "server_other_error_requests_threshold_warning" { 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" { description = "Flag to enable Storage other errors monitor" type = string @@ -419,12 +371,6 @@ variable "client_other_error_requests_threshold_warning" { 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" { description = "Flag to enable Storage authorization errors monitor" type = string @@ -489,12 +435,6 @@ variable "status_message" { default = "" } -variable "status_silenced" { - description = "Groups to mute for App Services status monitor" - type = map(string) - default = {} -} - variable "status_extra_tags" { description = "Extra tags for App Services status monitor" type = list(string) diff --git a/cloud/azure/storage/monitors-azure-storage.tf b/cloud/azure/storage/monitors-azure-storage.tf index 777b015..918ec7c 100644 --- a/cloud/azure/storage/monitors-azure-storage.tf +++ b/cloud/azure/storage/monitors-azure-storage.tf @@ -12,7 +12,6 @@ EOQ critical = 1 } - silenced = var.status_silenced type = "metric alert" notify_no_data = var.notify_no_data no_data_timeframe = var.storage_status_no_data_timeframe @@ -46,8 +45,6 @@ EOQ warning = var.successful_storage_requests_threshold_warning } - silenced = var.successful_requests_silenced - type = "metric alert" notify_no_data = false notify_audit = false @@ -79,8 +76,6 @@ EOQ warning = var.successful_storage_requests_threshold_warning } - silenced = var.successful_requests_silenced - type = "metric alert" notify_no_data = false notify_audit = false @@ -113,8 +108,6 @@ EOQ warning = var.successful_storage_requests_threshold_warning } - silenced = var.successful_requests_silenced - type = "metric alert" notify_no_data = false notify_audit = false @@ -147,8 +140,6 @@ EOQ warning = var.successful_storage_requests_threshold_warning } - silenced = var.successful_requests_silenced - type = "metric alert" notify_no_data = false notify_audit = false @@ -180,8 +171,6 @@ EOQ warning = var.latency_threshold_warning } - silenced = var.latency_silenced - type = "metric alert" notify_no_data = false notify_audit = false @@ -213,8 +202,6 @@ EOQ warning = var.latency_threshold_warning } - silenced = var.latency_silenced - type = "metric alert" notify_no_data = false notify_audit = false @@ -246,8 +233,6 @@ EOQ warning = var.latency_threshold_warning } - silenced = var.latency_silenced - type = "metric alert" notify_no_data = false notify_audit = false @@ -279,8 +264,6 @@ EOQ warning = var.latency_threshold_warning } - silenced = var.latency_silenced - type = "metric alert" notify_no_data = false notify_audit = false @@ -312,8 +295,6 @@ EOQ warning = var.timeout_error_requests_threshold_warning } - silenced = var.timeout_error_requests_silenced - type = "metric alert" notify_no_data = false notify_audit = false @@ -345,8 +326,6 @@ EOQ warning = var.timeout_error_requests_threshold_warning } - silenced = var.timeout_error_requests_silenced - type = "metric alert" notify_no_data = false notify_audit = false @@ -379,8 +358,6 @@ EOQ warning = var.timeout_error_requests_threshold_warning } - silenced = var.timeout_error_requests_silenced - type = "metric alert" notify_no_data = false notify_audit = false @@ -413,8 +390,6 @@ EOQ warning = var.timeout_error_requests_threshold_warning } - silenced = var.timeout_error_requests_silenced - type = "metric alert" notify_no_data = false notify_audit = false @@ -447,8 +422,6 @@ EOQ warning = var.network_error_requests_threshold_warning } - silenced = var.network_error_requests_silenced - type = "metric alert" notify_no_data = false notify_audit = false @@ -481,8 +454,6 @@ EOQ warning = var.network_error_requests_threshold_warning } - silenced = var.network_error_requests_silenced - type = "metric alert" notify_no_data = false notify_audit = false @@ -515,8 +486,6 @@ EOQ warning = var.network_error_requests_threshold_warning } - silenced = var.network_error_requests_silenced - type = "metric alert" notify_no_data = false notify_audit = false @@ -549,8 +518,6 @@ EOQ warning = var.network_error_requests_threshold_warning } - silenced = var.network_error_requests_silenced - type = "metric alert" notify_no_data = false notify_audit = false @@ -583,8 +550,6 @@ EOQ warning = var.throttling_error_requests_threshold_warning } - silenced = var.throttling_error_requests_silenced - type = "metric alert" notify_no_data = false notify_audit = false @@ -617,8 +582,6 @@ EOQ warning = var.throttling_error_requests_threshold_warning } - silenced = var.throttling_error_requests_silenced - type = "metric alert" notify_no_data = false notify_audit = false @@ -651,8 +614,6 @@ EOQ warning = var.throttling_error_requests_threshold_warning } - silenced = var.throttling_error_requests_silenced - type = "metric alert" notify_no_data = false notify_audit = false @@ -685,8 +646,6 @@ EOQ warning = var.throttling_error_requests_threshold_warning } - silenced = var.throttling_error_requests_silenced - type = "metric alert" notify_no_data = false notify_audit = false @@ -719,8 +678,6 @@ EOQ warning = var.server_other_error_requests_threshold_warning } - silenced = var.server_other_error_requests_silenced - type = "metric alert" notify_no_data = false notify_audit = false @@ -753,8 +710,6 @@ EOQ warning = var.server_other_error_requests_threshold_warning } - silenced = var.server_other_error_requests_silenced - type = "metric alert" notify_no_data = false notify_audit = false @@ -787,8 +742,6 @@ EOQ warning = var.server_other_error_requests_threshold_warning } - silenced = var.server_other_error_requests_silenced - type = "metric alert" notify_no_data = false notify_audit = false @@ -821,8 +774,6 @@ EOQ warning = var.server_other_error_requests_threshold_warning } - silenced = var.server_other_error_requests_silenced - type = "metric alert" notify_no_data = false notify_audit = false @@ -854,8 +805,6 @@ EOQ warning = var.client_other_error_requests_threshold_warning } - silenced = var.client_other_error_requests_silenced - type = "metric alert" notify_no_data = false notify_audit = false @@ -888,8 +837,6 @@ EOQ warning = var.client_other_error_requests_threshold_warning } - silenced = var.client_other_error_requests_silenced - type = "metric alert" notify_no_data = false notify_audit = false @@ -922,8 +869,6 @@ EOQ warning = var.client_other_error_requests_threshold_warning } - silenced = var.client_other_error_requests_silenced - type = "metric alert" notify_no_data = false notify_audit = false @@ -956,8 +901,6 @@ EOQ warning = var.client_other_error_requests_threshold_warning } - silenced = var.client_other_error_requests_silenced - type = "metric alert" notify_no_data = false notify_audit = false @@ -990,8 +933,6 @@ EOQ warning = var.authorization_error_requests_threshold_warning } - silenced = var.authorization_error_requests_silenced - type = "metric alert" notify_no_data = false notify_audit = false @@ -1024,8 +965,6 @@ EOQ warning = var.authorization_error_requests_threshold_warning } - silenced = var.authorization_error_requests_silenced - type = "metric alert" notify_no_data = false notify_audit = false @@ -1058,8 +997,6 @@ EOQ warning = var.authorization_error_requests_threshold_warning } - silenced = var.authorization_error_requests_silenced - type = "metric alert" notify_no_data = false notify_audit = false @@ -1092,8 +1029,6 @@ EOQ warning = var.authorization_error_requests_threshold_warning } - silenced = var.authorization_error_requests_silenced - type = "metric alert" notify_no_data = false notify_audit = false diff --git a/cloud/azure/storage/versions.tf b/cloud/azure/storage/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/azure/storage/versions.tf +++ b/cloud/azure/storage/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/azure/stream-analytics/README.md b/cloud/azure/stream-analytics/README.md index bce9282..729cfb8 100644 --- a/cloud/azure/stream-analytics/README.md +++ b/cloud/azure/stream-analytics/README.md @@ -27,66 +27,88 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a | + +## Resources + +| Name | Type | +|------|------| +| [datadog_monitor.conversion_errors](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.failed_function_requests](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.runtime_errors](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 | +| [datadog_monitor.su_utilization](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| conversion\_errors\_enabled | Flag to enable Stream Analytics conversion errors monitor | `string` | `"true"` | no | -| conversion\_errors\_extra\_tags | Extra tags for Stream Analytics conversion errors monitor | `list(string)` | `[]` | no | -| conversion\_errors\_message | Custom message for Stream Analytics conversion errors monitor | `string` | `""` | no | -| conversion\_errors\_threshold\_critical | Conversion errors limit (critical threshold) | `number` | `10` | no | -| conversion\_errors\_threshold\_warning | Conversion errors limit (warning threshold) | `number` | `0` | no | -| conversion\_errors\_time\_aggregator | Monitor aggregator for Stream Analytics conversion errors [available values: min, max or avg] | `string` | `"min"` | no | -| conversion\_errors\_timeframe | Monitor timeframe for Stream Analytics conversion errors [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 | -| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | -| failed\_function\_requests\_enabled | Flag to enable Stream Analytics failed requests monitor | `string` | `"true"` | no | -| failed\_function\_requests\_extra\_tags | Extra tags for Stream Analytics failed requests monitor | `list(string)` | `[]` | no | -| failed\_function\_requests\_message | Custom message for Stream Analytics failed requests monitor | `string` | `""` | no | -| failed\_function\_requests\_threshold\_critical | Failed Function Request rate limit (critical threshold) | `number` | `10` | no | -| failed\_function\_requests\_threshold\_warning | Failed Function Request rate limit (warning threshold) | `number` | `0` | no | -| failed\_function\_requests\_time\_aggregator | Monitor aggregator for Stream Analytics failed requests [available values: min, max or avg] | `string` | `"min"` | no | -| failed\_function\_requests\_timeframe | Monitor timeframe for Stream Analytics 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 | -| 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 | -| 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 | -| 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 | -| runtime\_errors\_enabled | Flag to enable Stream Analytics runtime errors monitor | `string` | `"true"` | no | -| runtime\_errors\_extra\_tags | Extra tags for Stream Analytics runtime errors monitor | `list(string)` | `[]` | no | -| runtime\_errors\_message | Custom message for Stream Analytics runtime errors monitor | `string` | `""` | no | -| runtime\_errors\_threshold\_critical | Runtime errors limit (critical threshold) | `number` | `10` | no | -| runtime\_errors\_threshold\_warning | Runtime errors limit (warning threshold) | `number` | `0` | no | -| runtime\_errors\_time\_aggregator | Monitor aggregator for Stream Analytics runtime errors [available values: min, max or avg] | `string` | `"min"` | no | -| runtime\_errors\_timeframe | Monitor timeframe for Stream Analytics runtime errors [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 Stream Analytics status monitor | `string` | `"true"` | no | -| status\_extra\_tags | Extra tags for Stream Analytics status monitor | `list(string)` | `[]` | no | -| status\_message | Custom message for Stream Analytics status monitor | `string` | `""` | no | -| status\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | -| status\_time\_aggregator | Monitor aggregator for Stream Analytics status [available values: min, max or avg] | `string` | `"max"` | no | -| status\_timeframe | Monitor timeframe for Stream Analytics status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | -| su\_utilization\_enabled | Flag to enable Stream Analytics utilization monitor | `string` | `"true"` | no | -| su\_utilization\_extra\_tags | Extra tags for Stream Analytics utilization monitor | `list(string)` | `[]` | no | -| su\_utilization\_message | Custom message for Stream Analytics utilization monitor | `string` | `""` | no | -| su\_utilization\_threshold\_critical | Streaming Unit utilization rate limit (critical threshold) | `number` | `95` | no | -| su\_utilization\_threshold\_warning | Streaming Unit utilization rate limit (warning threshold) | `number` | `80` | no | -| su\_utilization\_time\_aggregator | Monitor aggregator for Stream Analytics utilization [available values: min, max or avg] | `string` | `"min"` | no | -| su\_utilization\_timeframe | Monitor timeframe for Stream Analytics utilization [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | +| [conversion\_errors\_enabled](#input\_conversion\_errors\_enabled) | Flag to enable Stream Analytics conversion errors monitor | `string` | `"true"` | no | +| [conversion\_errors\_extra\_tags](#input\_conversion\_errors\_extra\_tags) | Extra tags for Stream Analytics conversion errors monitor | `list(string)` | `[]` | no | +| [conversion\_errors\_message](#input\_conversion\_errors\_message) | Custom message for Stream Analytics conversion errors monitor | `string` | `""` | no | +| [conversion\_errors\_threshold\_critical](#input\_conversion\_errors\_threshold\_critical) | Conversion errors limit (critical threshold) | `number` | `10` | no | +| [conversion\_errors\_threshold\_warning](#input\_conversion\_errors\_threshold\_warning) | Conversion errors limit (warning threshold) | `number` | `0` | no | +| [conversion\_errors\_time\_aggregator](#input\_conversion\_errors\_time\_aggregator) | Monitor aggregator for Stream Analytics conversion errors [available values: min, max or avg] | `string` | `"min"` | no | +| [conversion\_errors\_timeframe](#input\_conversion\_errors\_timeframe) | Monitor timeframe for Stream Analytics conversion errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | +| [environment](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [failed\_function\_requests\_enabled](#input\_failed\_function\_requests\_enabled) | Flag to enable Stream Analytics failed requests monitor | `string` | `"true"` | no | +| [failed\_function\_requests\_extra\_tags](#input\_failed\_function\_requests\_extra\_tags) | Extra tags for Stream Analytics failed requests monitor | `list(string)` | `[]` | no | +| [failed\_function\_requests\_message](#input\_failed\_function\_requests\_message) | Custom message for Stream Analytics failed requests monitor | `string` | `""` | no | +| [failed\_function\_requests\_threshold\_critical](#input\_failed\_function\_requests\_threshold\_critical) | Failed Function Request rate limit (critical threshold) | `number` | `10` | no | +| [failed\_function\_requests\_threshold\_warning](#input\_failed\_function\_requests\_threshold\_warning) | Failed Function Request rate limit (warning threshold) | `number` | `0` | no | +| [failed\_function\_requests\_time\_aggregator](#input\_failed\_function\_requests\_time\_aggregator) | Monitor aggregator for Stream Analytics failed requests [available values: min, max or avg] | `string` | `"min"` | no | +| [failed\_function\_requests\_timeframe](#input\_failed\_function\_requests\_timeframe) | Monitor timeframe for Stream Analytics 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](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | +| [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](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when a Redis monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [runtime\_errors\_enabled](#input\_runtime\_errors\_enabled) | Flag to enable Stream Analytics runtime errors monitor | `string` | `"true"` | no | +| [runtime\_errors\_extra\_tags](#input\_runtime\_errors\_extra\_tags) | Extra tags for Stream Analytics runtime errors monitor | `list(string)` | `[]` | no | +| [runtime\_errors\_message](#input\_runtime\_errors\_message) | Custom message for Stream Analytics runtime errors monitor | `string` | `""` | no | +| [runtime\_errors\_threshold\_critical](#input\_runtime\_errors\_threshold\_critical) | Runtime errors limit (critical threshold) | `number` | `10` | no | +| [runtime\_errors\_threshold\_warning](#input\_runtime\_errors\_threshold\_warning) | Runtime errors limit (warning threshold) | `number` | `0` | no | +| [runtime\_errors\_time\_aggregator](#input\_runtime\_errors\_time\_aggregator) | Monitor aggregator for Stream Analytics runtime errors [available values: min, max or avg] | `string` | `"min"` | no | +| [runtime\_errors\_timeframe](#input\_runtime\_errors\_timeframe) | Monitor timeframe for Stream Analytics runtime errors [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](#input\_status\_enabled) | Flag to enable Stream Analytics status monitor | `string` | `"true"` | no | +| [status\_extra\_tags](#input\_status\_extra\_tags) | Extra tags for Stream Analytics status monitor | `list(string)` | `[]` | no | +| [status\_message](#input\_status\_message) | Custom message for Stream Analytics status monitor | `string` | `""` | no | +| [status\_no\_data\_timeframe](#input\_status\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no | +| [status\_time\_aggregator](#input\_status\_time\_aggregator) | Monitor aggregator for Stream Analytics status [available values: min, max or avg] | `string` | `"max"` | no | +| [status\_timeframe](#input\_status\_timeframe) | Monitor timeframe for Stream Analytics status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | +| [su\_utilization\_enabled](#input\_su\_utilization\_enabled) | Flag to enable Stream Analytics utilization monitor | `string` | `"true"` | no | +| [su\_utilization\_extra\_tags](#input\_su\_utilization\_extra\_tags) | Extra tags for Stream Analytics utilization monitor | `list(string)` | `[]` | no | +| [su\_utilization\_message](#input\_su\_utilization\_message) | Custom message for Stream Analytics utilization monitor | `string` | `""` | no | +| [su\_utilization\_threshold\_critical](#input\_su\_utilization\_threshold\_critical) | Streaming Unit utilization rate limit (critical threshold) | `number` | `95` | no | +| [su\_utilization\_threshold\_warning](#input\_su\_utilization\_threshold\_warning) | Streaming Unit utilization rate limit (warning threshold) | `number` | `80` | no | +| [su\_utilization\_time\_aggregator](#input\_su\_utilization\_time\_aggregator) | Monitor aggregator for Stream Analytics utilization [available values: min, max or avg] | `string` | `"min"` | no | +| [su\_utilization\_timeframe](#input\_su\_utilization\_timeframe) | Monitor timeframe for Stream Analytics utilization [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | ## Outputs | Name | Description | |------|-------------| -| conversion\_errors\_id | id for monitor conversion\_errors | -| failed\_function\_requests\_id | id for monitor failed\_function\_requests | -| runtime\_errors\_id | id for monitor runtime\_errors | -| status\_id | id for monitor status | -| su\_utilization\_id | id for monitor su\_utilization | - +| [conversion\_errors\_id](#output\_conversion\_errors\_id) | id for monitor conversion\_errors | +| [failed\_function\_requests\_id](#output\_failed\_function\_requests\_id) | id for monitor failed\_function\_requests | +| [runtime\_errors\_id](#output\_runtime\_errors\_id) | id for monitor runtime\_errors | +| [status\_id](#output\_status\_id) | id for monitor status | +| [su\_utilization\_id](#output\_su\_utilization\_id) | id for monitor su\_utilization | ## Related documentation DataDog documentation: [https://docs.datadoghq.com/integrations/azure/](https://docs.datadoghq.com/integrations/azure/) diff --git a/cloud/azure/stream-analytics/versions.tf b/cloud/azure/stream-analytics/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/azure/stream-analytics/versions.tf +++ b/cloud/azure/stream-analytics/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/azure/virtual-machine/README.md b/cloud/azure/virtual-machine/README.md index ea62266..611e53f 100644 --- a/cloud/azure/virtual-machine/README.md +++ b/cloud/azure/virtual-machine/README.md @@ -28,74 +28,97 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a | + +## Resources + +| Name | Type | +|------|------| +| [datadog_monitor.virtualmachine_cpu_usage](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.virtualmachine_credit_cpu_remaining_too_low](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.virtualmachine_disk_space](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.virtualmachine_ram_reserved](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.virtualmachine_requests_failed](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.virtualmachine_status](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| cpu\_remaining\_rate\_enabled | Flag to enable Virtual Machine CPU remaining monitor | `string` | `"true"` | no | -| cpu\_remaining\_rate\_extra\_tags | Extra tags for Virtual Machine CPU remaining monitor | `list(string)` | `[]` | no | -| cpu\_remaining\_rate\_message | Custom message for Virtual Machine CPU remaining monitor | `string` | `""` | no | -| cpu\_remaining\_rate\_threshold\_critical | Virtual Machine CPU rate limit (critical threshold) | `number` | `15` | no | -| cpu\_remaining\_rate\_threshold\_warning | Virtual Machine CPU rate limit (warning threshold) | `number` | `30` | no | -| cpu\_remaining\_rate\_time\_aggregator | Monitor aggregator for Virtual Machine CPU remaining [available values: min, max, sum or avg] | `string` | `"min"` | no | -| cpu\_remaining\_rate\_timeframe | Monitor timeframe for Virtual Machine CPU remaining [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | -| cpu\_usage\_enabled | Flag to enable Virtual Machine status monitor | `string` | `"true"` | no | -| cpu\_usage\_extra\_tags | Extra tags for Virtual Machine status monitor | `list(string)` | `[]` | no | -| cpu\_usage\_message | Custom message for Virtual Machine CPU monitor | `string` | `""` | no | -| cpu\_usage\_threshold\_critical | Virtual Machine CPU usage in percent (critical threshold) | `string` | `"90"` | no | -| cpu\_usage\_threshold\_warning | Virtual Machine CPU usage in percent (warning threshold) | `string` | `"80"` | no | -| cpu\_usage\_time\_aggregator | Monitor aggregator for Virtual Machine CPU [available values: min, max or avg] | `string` | `"min"` | no | -| cpu\_usage\_timeframe | Monitor timeframe for Virtual Machine CPU [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | -| disk\_space\_enabled | Flag to enable Virtual Machine status monitor | `string` | `"true"` | no | -| disk\_space\_extra\_tags | Extra tags for Virtual Machine free disk space monitor | `list(string)` | `[]` | no | -| disk\_space\_message | Custom message for Virtual Machine CPU free disk space monitor | `string` | `""` | no | -| disk\_space\_threshold\_critical | Virtual Machine free disk space in percent (critical threshold) | `string` | `"95"` | no | -| disk\_space\_threshold\_warning | Virtual Machine free disk space in percent (warning threshold) | `string` | `"90"` | no | -| disk\_space\_time\_aggregator | Monitor aggregator for Virtual Machine free disk space [available values: min, max or avg] | `string` | `"max"` | no | -| disk\_space\_timeframe | Monitor timeframe for Virtual Machine free disk space too low [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 | -| 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 | -| 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 | -| 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 | -| 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 | -| ram\_reserved\_enabled | Flag to enable Virtual Machine RAM reserved monitor | `string` | `"true"` | no | -| ram\_reserved\_extra\_tags | Extra tags for Virtual Machine RAM reserved monitor | `list(string)` | `[]` | no | -| ram\_reserved\_message | Custom message for Virtual Machine RAM reserved monitor | `string` | `""` | no | -| ram\_reserved\_threshold\_critical | Virtual Machine RAM reserved limit (critical threshold) | `number` | `95` | no | -| ram\_reserved\_threshold\_warning | Virtual Machine RAM reserved limit (warning threshold) | `number` | `90` | no | -| ram\_reserved\_time\_aggregator | Monitor aggregator for Virtual Machine RAM reserved [available values: min, max, sum or avg] | `string` | `"min"` | no | -| ram\_reserved\_timeframe | Monitor timeframe for Virtual Machine RAM reserved [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | -| requests\_failed\_enabled | Flag to enable Virtual Machine requests failed monitor | `string` | `"true"` | no | -| requests\_failed\_extra\_tags | Extra tags for Virtual Machine requests failed monitor | `list(string)` | `[]` | no | -| requests\_failed\_message | Custom message for Virtual Machine requests failed monitor | `string` | `""` | no | -| requests\_failed\_threshold\_critical | Virtual Machine requests failed limit (critical threshold) | `number` | `95` | no | -| requests\_failed\_threshold\_warning | Virtual Machine requests failed limit (warning threshold) | `number` | `90` | no | -| requests\_failed\_time\_aggregator | Monitor aggregator for Virtual Machine requests failed [available values: min, max, sum or avg] | `string` | `"min"` | no | -| requests\_failed\_timeframe | Monitor timeframe for Virtual Machine requests failed [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_10m"` | no | -| status\_enabled | Flag to enable Virtual Machine status monitor | `string` | `"true"` | no | -| status\_extra\_tags | Extra tags for Virtual Machine status monitor | `list(string)` | `[]` | no | -| status\_message | Custom message for Virtual Machine status monitor | `string` | `""` | no | -| status\_time\_aggregator | Monitor aggregator for Virtual Machine status [available values: min, max or avg] | `string` | `"max"` | no | -| status\_timeframe | Monitor timeframe for Virtual Machine status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | -| virtualmachine\_status\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | +| [cpu\_remaining\_rate\_enabled](#input\_cpu\_remaining\_rate\_enabled) | Flag to enable Virtual Machine CPU remaining monitor | `string` | `"true"` | no | +| [cpu\_remaining\_rate\_extra\_tags](#input\_cpu\_remaining\_rate\_extra\_tags) | Extra tags for Virtual Machine CPU remaining monitor | `list(string)` | `[]` | no | +| [cpu\_remaining\_rate\_message](#input\_cpu\_remaining\_rate\_message) | Custom message for Virtual Machine CPU remaining monitor | `string` | `""` | no | +| [cpu\_remaining\_rate\_threshold\_critical](#input\_cpu\_remaining\_rate\_threshold\_critical) | Virtual Machine CPU rate limit (critical threshold) | `number` | `15` | no | +| [cpu\_remaining\_rate\_threshold\_warning](#input\_cpu\_remaining\_rate\_threshold\_warning) | Virtual Machine CPU rate limit (warning threshold) | `number` | `30` | no | +| [cpu\_remaining\_rate\_time\_aggregator](#input\_cpu\_remaining\_rate\_time\_aggregator) | Monitor aggregator for Virtual Machine CPU remaining [available values: min, max, sum or avg] | `string` | `"min"` | no | +| [cpu\_remaining\_rate\_timeframe](#input\_cpu\_remaining\_rate\_timeframe) | Monitor timeframe for Virtual Machine CPU remaining [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | +| [cpu\_usage\_enabled](#input\_cpu\_usage\_enabled) | Flag to enable Virtual Machine status monitor | `string` | `"true"` | no | +| [cpu\_usage\_extra\_tags](#input\_cpu\_usage\_extra\_tags) | Extra tags for Virtual Machine status monitor | `list(string)` | `[]` | no | +| [cpu\_usage\_message](#input\_cpu\_usage\_message) | Custom message for Virtual Machine CPU monitor | `string` | `""` | no | +| [cpu\_usage\_threshold\_critical](#input\_cpu\_usage\_threshold\_critical) | Virtual Machine CPU usage in percent (critical threshold) | `string` | `"90"` | no | +| [cpu\_usage\_threshold\_warning](#input\_cpu\_usage\_threshold\_warning) | Virtual Machine CPU usage in percent (warning threshold) | `string` | `"80"` | no | +| [cpu\_usage\_time\_aggregator](#input\_cpu\_usage\_time\_aggregator) | Monitor aggregator for Virtual Machine CPU [available values: min, max or avg] | `string` | `"min"` | no | +| [cpu\_usage\_timeframe](#input\_cpu\_usage\_timeframe) | Monitor timeframe for Virtual Machine CPU [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | +| [disk\_space\_enabled](#input\_disk\_space\_enabled) | Flag to enable Virtual Machine status monitor | `string` | `"true"` | no | +| [disk\_space\_extra\_tags](#input\_disk\_space\_extra\_tags) | Extra tags for Virtual Machine free disk space monitor | `list(string)` | `[]` | no | +| [disk\_space\_message](#input\_disk\_space\_message) | Custom message for Virtual Machine CPU free disk space monitor | `string` | `""` | no | +| [disk\_space\_threshold\_critical](#input\_disk\_space\_threshold\_critical) | Virtual Machine free disk space in percent (critical threshold) | `string` | `"95"` | no | +| [disk\_space\_threshold\_warning](#input\_disk\_space\_threshold\_warning) | Virtual Machine free disk space in percent (warning threshold) | `string` | `"90"` | no | +| [disk\_space\_time\_aggregator](#input\_disk\_space\_time\_aggregator) | Monitor aggregator for Virtual Machine free disk space [available values: min, max or avg] | `string` | `"max"` | no | +| [disk\_space\_timeframe](#input\_disk\_space\_timeframe) | Monitor timeframe for Virtual Machine free disk space too low [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | +| [environment](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when a Redis monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [ram\_reserved\_enabled](#input\_ram\_reserved\_enabled) | Flag to enable Virtual Machine RAM reserved monitor | `string` | `"true"` | no | +| [ram\_reserved\_extra\_tags](#input\_ram\_reserved\_extra\_tags) | Extra tags for Virtual Machine RAM reserved monitor | `list(string)` | `[]` | no | +| [ram\_reserved\_message](#input\_ram\_reserved\_message) | Custom message for Virtual Machine RAM reserved monitor | `string` | `""` | no | +| [ram\_reserved\_threshold\_critical](#input\_ram\_reserved\_threshold\_critical) | Virtual Machine RAM reserved limit (critical threshold) | `number` | `95` | no | +| [ram\_reserved\_threshold\_warning](#input\_ram\_reserved\_threshold\_warning) | Virtual Machine RAM reserved limit (warning threshold) | `number` | `90` | no | +| [ram\_reserved\_time\_aggregator](#input\_ram\_reserved\_time\_aggregator) | Monitor aggregator for Virtual Machine RAM reserved [available values: min, max, sum or avg] | `string` | `"min"` | no | +| [ram\_reserved\_timeframe](#input\_ram\_reserved\_timeframe) | Monitor timeframe for Virtual Machine RAM reserved [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | +| [requests\_failed\_enabled](#input\_requests\_failed\_enabled) | Flag to enable Virtual Machine requests failed monitor | `string` | `"true"` | no | +| [requests\_failed\_extra\_tags](#input\_requests\_failed\_extra\_tags) | Extra tags for Virtual Machine requests failed monitor | `list(string)` | `[]` | no | +| [requests\_failed\_message](#input\_requests\_failed\_message) | Custom message for Virtual Machine requests failed monitor | `string` | `""` | no | +| [requests\_failed\_threshold\_critical](#input\_requests\_failed\_threshold\_critical) | Virtual Machine requests failed limit (critical threshold) | `number` | `95` | no | +| [requests\_failed\_threshold\_warning](#input\_requests\_failed\_threshold\_warning) | Virtual Machine requests failed limit (warning threshold) | `number` | `90` | no | +| [requests\_failed\_time\_aggregator](#input\_requests\_failed\_time\_aggregator) | Monitor aggregator for Virtual Machine requests failed [available values: min, max, sum or avg] | `string` | `"min"` | no | +| [requests\_failed\_timeframe](#input\_requests\_failed\_timeframe) | Monitor timeframe for Virtual Machine requests failed [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_10m"` | no | +| [status\_enabled](#input\_status\_enabled) | Flag to enable Virtual Machine status monitor | `string` | `"true"` | no | +| [status\_extra\_tags](#input\_status\_extra\_tags) | Extra tags for Virtual Machine status monitor | `list(string)` | `[]` | no | +| [status\_message](#input\_status\_message) | Custom message for Virtual Machine status monitor | `string` | `""` | no | +| [status\_time\_aggregator](#input\_status\_time\_aggregator) | Monitor aggregator for Virtual Machine status [available values: min, max or avg] | `string` | `"max"` | no | +| [status\_timeframe](#input\_status\_timeframe) | Monitor timeframe for Virtual Machine status [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | +| [virtualmachine\_status\_no\_data\_timeframe](#input\_virtualmachine\_status\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no | ## Outputs | Name | Description | |------|-------------| -| virtualmachine\_cpu\_usage\_id | id for monitor virtualmachine\_cpu\_usage | -| virtualmachine\_credit\_cpu\_remaining\_too\_low\_id | id for monitor virtualmachine\_credit\_cpu\_remaining\_too\_low | -| virtualmachine\_disk\_space\_id | id for monitor virtualmachine\_disk\_space | -| virtualmachine\_ram\_reserved\_id | id for monitor virtualmachine\_ram\_reserved | -| virtualmachine\_requests\_failed\_id | id for monitor virtualmachine\_requests\_failed | -| virtualmachine\_status\_id | id for monitor virtualmachine\_status | - +| [virtualmachine\_cpu\_usage\_id](#output\_virtualmachine\_cpu\_usage\_id) | id for monitor virtualmachine\_cpu\_usage | +| [virtualmachine\_credit\_cpu\_remaining\_too\_low\_id](#output\_virtualmachine\_credit\_cpu\_remaining\_too\_low\_id) | id for monitor virtualmachine\_credit\_cpu\_remaining\_too\_low | +| [virtualmachine\_disk\_space\_id](#output\_virtualmachine\_disk\_space\_id) | id for monitor virtualmachine\_disk\_space | +| [virtualmachine\_ram\_reserved\_id](#output\_virtualmachine\_ram\_reserved\_id) | id for monitor virtualmachine\_ram\_reserved | +| [virtualmachine\_requests\_failed\_id](#output\_virtualmachine\_requests\_failed\_id) | id for monitor virtualmachine\_requests\_failed | +| [virtualmachine\_status\_id](#output\_virtualmachine\_status\_id) | id for monitor virtualmachine\_status | ## Related documentation DataDog documentation: [https://docs.datadoghq.com/integrations/azure_vm/](https://docs.datadoghq.com/integrations/azure_vm/) diff --git a/cloud/azure/virtual-machine/versions.tf b/cloud/azure/virtual-machine/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/azure/virtual-machine/versions.tf +++ b/cloud/azure/virtual-machine/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/gcp/big-query/README.md b/cloud/gcp/big-query/README.md index 83e52f5..8d378a5 100644 --- a/cloud/gcp/big-query/README.md +++ b/cloud/gcp/big-query/README.md @@ -31,88 +31,112 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +No modules. + +## Resources + +| Name | Type | +|------|------| +| [datadog_monitor.available_slots](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.concurrent_queries](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.execution_time](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.scanned_bytes](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.scanned_bytes_billed](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.stored_bytes](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.table_count](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.uploaded_bytes](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.uploaded_bytes_billed](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| available\_slots\_enabled | Flag to enable GCP Big Query Available Slots monitor | `string` | `"true"` | no | -| available\_slots\_extra\_tags | Extra tags for GCP Big Query Available Slots monitor | `list(string)` | `[]` | no | -| available\_slots\_message | Custom message for the Available Slots monitor | `string` | `""` | no | -| available\_slots\_threshold\_critical | Available Slots (critical threshold) | `string` | `200` | no | -| available\_slots\_threshold\_warning | Available Slots (warning threshold) | `string` | `300` | no | -| available\_slots\_timeframe | Timeframe for the Available Slots monitor | `string` | `"last_5m"` | no | -| concurrent\_queries\_enabled | Flag to enable GCP Big Query Concurrent Queries monitor | `string` | `"true"` | no | -| concurrent\_queries\_extra\_tags | Extra tags for GCP Big Query Concurrent Queries monitor | `list(string)` | `[]` | no | -| concurrent\_queries\_message | Custom message for the Concurrent Queries monitor | `string` | `""` | no | -| concurrent\_queries\_threshold\_critical | Concurrent Queries (critical threshold) (hard limit 50) | `string` | `45` | no | -| concurrent\_queries\_threshold\_warning | Concurrent Queries (warning threshold) (hard limit 50) | `string` | `40` | no | -| concurrent\_queries\_timeframe | Timeframe for the Concurrent Queries monitor | `string` | `"last_5m"` | no | -| environment | Architecture environment | `string` | n/a | yes | -| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | -| execution\_time\_enabled | Flag to enable GCP Big Query Execution Time monitor | `string` | `"true"` | no | -| execution\_time\_extra\_tags | Extra tags for GCP Big Query Execution Time monitor | `list(string)` | `[]` | no | -| execution\_time\_message | Custom message for the Execution Time monitor | `string` | `""` | no | -| execution\_time\_threshold\_critical | Average Execution Time in seconds (critical threshold) | `string` | `150` | no | -| execution\_time\_threshold\_warning | Average Execution Time in seconds (warning threshold) | `string` | `100` | no | -| execution\_time\_timeframe | Timeframe for the Execution Time monitor | `string` | `"last_5m"` | no | -| filter\_tags | Tags used for filtering | `string` | `"*"` | no | -| message | Message sent when a monitor is triggered | `any` | n/a | yes | -| new\_host\_delay | Delay in seconds for the new host evaluation | `number` | `300` | no | -| 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 | -| scanned\_bytes\_billed\_enabled | Flag to enable GCP Big Query Scanned Bytes Billed monitor | `string` | `"true"` | no | -| scanned\_bytes\_billed\_extra\_tags | Extra tags for GCP Big Query Scanned Bytes Billed monitor | `list(string)` | `[]` | no | -| scanned\_bytes\_billed\_message | Custom message for the Scanned Bytes Billed monitor | `string` | `""` | no | -| scanned\_bytes\_billed\_threshold\_critical | Scanned Bytes Billed (critical threshold) | `string` | `1` | no | -| scanned\_bytes\_billed\_threshold\_warning | Scanned Bytes Billed (warning threshold) | `string` | `0` | no | -| scanned\_bytes\_billed\_timeframe | Timeframe for the Scanned Bytes Billed monitor | `string` | `"last_4h"` | no | -| scanned\_bytes\_enabled | Flag to enable GCP Big Query Scanned Bytes monitor | `string` | `"true"` | no | -| scanned\_bytes\_extra\_tags | Extra tags for GCP Big Query Scanned Bytes monitor | `list(string)` | `[]` | no | -| scanned\_bytes\_message | Custom message for the Scanned Bytes monitor | `string` | `""` | no | -| scanned\_bytes\_threshold\_critical | Scanned Bytes (critical threshold) | `string` | `1` | no | -| scanned\_bytes\_threshold\_warning | Scanned Bytes (warning threshold) | `string` | `0` | no | -| scanned\_bytes\_timeframe | Timeframe for the Scanned Bytes monitor | `string` | `"last_4h"` | no | -| stored\_bytes\_enabled | Flag to enable GCP Big Query Stored Bytes monitor | `string` | `"true"` | no | -| stored\_bytes\_extra\_tags | Extra tags for GCP Big Query Stored Bytes monitor | `list(string)` | `[]` | no | -| stored\_bytes\_message | Custom message for the Stored Bytes monitor | `string` | `""` | no | -| stored\_bytes\_threshold\_critical | Stored Bytes in fraction (critical threshold) | `string` | `1` | no | -| stored\_bytes\_threshold\_warning | Stored Bytes in fraction (warning threshold) | `string` | `0` | no | -| stored\_bytes\_timeframe | Timeframe for the Stored Bytes monitor | `string` | `"last_5m"` | no | -| table\_count\_enabled | Flag to enable GCP Big Query Table Count monitor | `string` | `"true"` | no | -| table\_count\_extra\_tags | Extra tags for GCP Big Query Table Count monitor | `list(string)` | `[]` | no | -| table\_count\_message | Custom message for the Table Count monitor | `string` | `""` | no | -| table\_count\_threshold\_critical | Table Count (critical threshold) | `string` | `1` | no | -| table\_count\_threshold\_warning | Table Count (warning threshold) | `string` | `0` | no | -| table\_count\_timeframe | Timeframe for the Table Count monitor | `string` | `"last_4h"` | no | -| uploaded\_bytes\_billed\_enabled | Flag to enable GCP Big Query Uploaded Bytes Billed monitor | `string` | `"true"` | no | -| uploaded\_bytes\_billed\_extra\_tags | Extra tags for GCP Big Query Scanned Bytes monitor | `list(string)` | `[]` | no | -| uploaded\_bytes\_billed\_message | Custom message for the Uploaded Bytes Billed monitor | `string` | `""` | no | -| uploaded\_bytes\_billed\_threshold\_critical | Uploaded Bytes Billed (critical threshold) | `string` | `1` | no | -| uploaded\_bytes\_billed\_threshold\_warning | Uploaded Bytes Billed (warning threshold) | `string` | `0` | no | -| uploaded\_bytes\_billed\_timeframe | Timeframe for the Uploaded Bytes Billed monitor | `string` | `"last_4h"` | no | -| uploaded\_bytes\_enabled | Flag to enable GCP Big Query Uploaded Bytes monitor | `string` | `"true"` | no | -| uploaded\_bytes\_extra\_tags | Extra tags for GCP Big Query Uploaded Bytes monitor | `list(string)` | `[]` | no | -| uploaded\_bytes\_message | Custom message for the Uploaded Bytes monitor | `string` | `""` | no | -| uploaded\_bytes\_threshold\_critical | Uploaded Bytes (critical threshold) | `string` | `1` | no | -| uploaded\_bytes\_threshold\_warning | Uploaded Bytes (warning threshold) | `string` | `0` | no | -| uploaded\_bytes\_timeframe | Timeframe for the Uploaded Bytes monitor | `string` | `"last_4h"` | no | +| [available\_slots\_enabled](#input\_available\_slots\_enabled) | Flag to enable GCP Big Query Available Slots monitor | `string` | `"true"` | no | +| [available\_slots\_extra\_tags](#input\_available\_slots\_extra\_tags) | Extra tags for GCP Big Query Available Slots monitor | `list(string)` | `[]` | no | +| [available\_slots\_message](#input\_available\_slots\_message) | Custom message for the Available Slots monitor | `string` | `""` | no | +| [available\_slots\_threshold\_critical](#input\_available\_slots\_threshold\_critical) | Available Slots (critical threshold) | `string` | `200` | no | +| [available\_slots\_threshold\_warning](#input\_available\_slots\_threshold\_warning) | Available Slots (warning threshold) | `string` | `300` | no | +| [available\_slots\_timeframe](#input\_available\_slots\_timeframe) | Timeframe for the Available Slots monitor | `string` | `"last_5m"` | no | +| [concurrent\_queries\_enabled](#input\_concurrent\_queries\_enabled) | Flag to enable GCP Big Query Concurrent Queries monitor | `string` | `"true"` | no | +| [concurrent\_queries\_extra\_tags](#input\_concurrent\_queries\_extra\_tags) | Extra tags for GCP Big Query Concurrent Queries monitor | `list(string)` | `[]` | no | +| [concurrent\_queries\_message](#input\_concurrent\_queries\_message) | Custom message for the Concurrent Queries monitor | `string` | `""` | no | +| [concurrent\_queries\_threshold\_critical](#input\_concurrent\_queries\_threshold\_critical) | Concurrent Queries (critical threshold) (hard limit 50) | `string` | `45` | no | +| [concurrent\_queries\_threshold\_warning](#input\_concurrent\_queries\_threshold\_warning) | Concurrent Queries (warning threshold) (hard limit 50) | `string` | `40` | no | +| [concurrent\_queries\_timeframe](#input\_concurrent\_queries\_timeframe) | Timeframe for the Concurrent Queries monitor | `string` | `"last_5m"` | no | +| [environment](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [execution\_time\_enabled](#input\_execution\_time\_enabled) | Flag to enable GCP Big Query Execution Time monitor | `string` | `"true"` | no | +| [execution\_time\_extra\_tags](#input\_execution\_time\_extra\_tags) | Extra tags for GCP Big Query Execution Time monitor | `list(string)` | `[]` | no | +| [execution\_time\_message](#input\_execution\_time\_message) | Custom message for the Execution Time monitor | `string` | `""` | no | +| [execution\_time\_threshold\_critical](#input\_execution\_time\_threshold\_critical) | Average Execution Time in seconds (critical threshold) | `string` | `150` | no | +| [execution\_time\_threshold\_warning](#input\_execution\_time\_threshold\_warning) | Average Execution Time in seconds (warning threshold) | `string` | `100` | no | +| [execution\_time\_timeframe](#input\_execution\_time\_timeframe) | Timeframe for the Execution Time monitor | `string` | `"last_5m"` | no | +| [filter\_tags](#input\_filter\_tags) | Tags used for filtering | `string` | `"*"` | no | +| [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds for the new host evaluation | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [scanned\_bytes\_billed\_enabled](#input\_scanned\_bytes\_billed\_enabled) | Flag to enable GCP Big Query Scanned Bytes Billed monitor | `string` | `"true"` | no | +| [scanned\_bytes\_billed\_extra\_tags](#input\_scanned\_bytes\_billed\_extra\_tags) | Extra tags for GCP Big Query Scanned Bytes Billed monitor | `list(string)` | `[]` | no | +| [scanned\_bytes\_billed\_message](#input\_scanned\_bytes\_billed\_message) | Custom message for the Scanned Bytes Billed monitor | `string` | `""` | no | +| [scanned\_bytes\_billed\_threshold\_critical](#input\_scanned\_bytes\_billed\_threshold\_critical) | Scanned Bytes Billed (critical threshold) | `string` | `1` | no | +| [scanned\_bytes\_billed\_threshold\_warning](#input\_scanned\_bytes\_billed\_threshold\_warning) | Scanned Bytes Billed (warning threshold) | `string` | `0` | no | +| [scanned\_bytes\_billed\_timeframe](#input\_scanned\_bytes\_billed\_timeframe) | Timeframe for the Scanned Bytes Billed monitor | `string` | `"last_4h"` | no | +| [scanned\_bytes\_enabled](#input\_scanned\_bytes\_enabled) | Flag to enable GCP Big Query Scanned Bytes monitor | `string` | `"true"` | no | +| [scanned\_bytes\_extra\_tags](#input\_scanned\_bytes\_extra\_tags) | Extra tags for GCP Big Query Scanned Bytes monitor | `list(string)` | `[]` | no | +| [scanned\_bytes\_message](#input\_scanned\_bytes\_message) | Custom message for the Scanned Bytes monitor | `string` | `""` | no | +| [scanned\_bytes\_threshold\_critical](#input\_scanned\_bytes\_threshold\_critical) | Scanned Bytes (critical threshold) | `string` | `1` | no | +| [scanned\_bytes\_threshold\_warning](#input\_scanned\_bytes\_threshold\_warning) | Scanned Bytes (warning threshold) | `string` | `0` | no | +| [scanned\_bytes\_timeframe](#input\_scanned\_bytes\_timeframe) | Timeframe for the Scanned Bytes monitor | `string` | `"last_4h"` | no | +| [stored\_bytes\_enabled](#input\_stored\_bytes\_enabled) | Flag to enable GCP Big Query Stored Bytes monitor | `string` | `"true"` | no | +| [stored\_bytes\_extra\_tags](#input\_stored\_bytes\_extra\_tags) | Extra tags for GCP Big Query Stored Bytes monitor | `list(string)` | `[]` | no | +| [stored\_bytes\_message](#input\_stored\_bytes\_message) | Custom message for the Stored Bytes monitor | `string` | `""` | no | +| [stored\_bytes\_threshold\_critical](#input\_stored\_bytes\_threshold\_critical) | Stored Bytes in fraction (critical threshold) | `string` | `1` | no | +| [stored\_bytes\_threshold\_warning](#input\_stored\_bytes\_threshold\_warning) | Stored Bytes in fraction (warning threshold) | `string` | `0` | no | +| [stored\_bytes\_timeframe](#input\_stored\_bytes\_timeframe) | Timeframe for the Stored Bytes monitor | `string` | `"last_5m"` | no | +| [table\_count\_enabled](#input\_table\_count\_enabled) | Flag to enable GCP Big Query Table Count monitor | `string` | `"true"` | no | +| [table\_count\_extra\_tags](#input\_table\_count\_extra\_tags) | Extra tags for GCP Big Query Table Count monitor | `list(string)` | `[]` | no | +| [table\_count\_message](#input\_table\_count\_message) | Custom message for the Table Count monitor | `string` | `""` | no | +| [table\_count\_threshold\_critical](#input\_table\_count\_threshold\_critical) | Table Count (critical threshold) | `string` | `1` | no | +| [table\_count\_threshold\_warning](#input\_table\_count\_threshold\_warning) | Table Count (warning threshold) | `string` | `0` | no | +| [table\_count\_timeframe](#input\_table\_count\_timeframe) | Timeframe for the Table Count monitor | `string` | `"last_4h"` | no | +| [uploaded\_bytes\_billed\_enabled](#input\_uploaded\_bytes\_billed\_enabled) | Flag to enable GCP Big Query Uploaded Bytes Billed monitor | `string` | `"true"` | no | +| [uploaded\_bytes\_billed\_extra\_tags](#input\_uploaded\_bytes\_billed\_extra\_tags) | Extra tags for GCP Big Query Scanned Bytes monitor | `list(string)` | `[]` | no | +| [uploaded\_bytes\_billed\_message](#input\_uploaded\_bytes\_billed\_message) | Custom message for the Uploaded Bytes Billed monitor | `string` | `""` | no | +| [uploaded\_bytes\_billed\_threshold\_critical](#input\_uploaded\_bytes\_billed\_threshold\_critical) | Uploaded Bytes Billed (critical threshold) | `string` | `1` | no | +| [uploaded\_bytes\_billed\_threshold\_warning](#input\_uploaded\_bytes\_billed\_threshold\_warning) | Uploaded Bytes Billed (warning threshold) | `string` | `0` | no | +| [uploaded\_bytes\_billed\_timeframe](#input\_uploaded\_bytes\_billed\_timeframe) | Timeframe for the Uploaded Bytes Billed monitor | `string` | `"last_4h"` | no | +| [uploaded\_bytes\_enabled](#input\_uploaded\_bytes\_enabled) | Flag to enable GCP Big Query Uploaded Bytes monitor | `string` | `"true"` | no | +| [uploaded\_bytes\_extra\_tags](#input\_uploaded\_bytes\_extra\_tags) | Extra tags for GCP Big Query Uploaded Bytes monitor | `list(string)` | `[]` | no | +| [uploaded\_bytes\_message](#input\_uploaded\_bytes\_message) | Custom message for the Uploaded Bytes monitor | `string` | `""` | no | +| [uploaded\_bytes\_threshold\_critical](#input\_uploaded\_bytes\_threshold\_critical) | Uploaded Bytes (critical threshold) | `string` | `1` | no | +| [uploaded\_bytes\_threshold\_warning](#input\_uploaded\_bytes\_threshold\_warning) | Uploaded Bytes (warning threshold) | `string` | `0` | no | +| [uploaded\_bytes\_timeframe](#input\_uploaded\_bytes\_timeframe) | Timeframe for the Uploaded Bytes monitor | `string` | `"last_4h"` | no | ## Outputs | Name | Description | |------|-------------| -| available\_slots\_id | id for monitor available\_slots | -| concurrent\_queries\_id | id for monitor concurrent\_queries | -| execution\_time\_id | id for monitor execution\_time | -| scanned\_bytes\_billed\_id | id for monitor scanned\_bytes\_billed | -| scanned\_bytes\_id | id for monitor scanned\_bytes | -| stored\_bytes\_id | id for monitor stored\_bytes | -| table\_count\_id | id for monitor table\_count | -| uploaded\_bytes\_billed\_id | id for monitor uploaded\_bytes\_billed | -| uploaded\_bytes\_id | id for monitor uploaded\_bytes | - +| [available\_slots\_id](#output\_available\_slots\_id) | id for monitor available\_slots | +| [concurrent\_queries\_id](#output\_concurrent\_queries\_id) | id for monitor concurrent\_queries | +| [execution\_time\_id](#output\_execution\_time\_id) | id for monitor execution\_time | +| [scanned\_bytes\_billed\_id](#output\_scanned\_bytes\_billed\_id) | id for monitor scanned\_bytes\_billed | +| [scanned\_bytes\_id](#output\_scanned\_bytes\_id) | id for monitor scanned\_bytes | +| [stored\_bytes\_id](#output\_stored\_bytes\_id) | id for monitor stored\_bytes | +| [table\_count\_id](#output\_table\_count\_id) | id for monitor table\_count | +| [uploaded\_bytes\_billed\_id](#output\_uploaded\_bytes\_billed\_id) | id for monitor uploaded\_bytes\_billed | +| [uploaded\_bytes\_id](#output\_uploaded\_bytes\_id) | id for monitor uploaded\_bytes | ## Related documentation * [GCP Big Query monitoring](https://cloud.google.com/bigquery/docs/monitoring) diff --git a/cloud/gcp/big-query/versions.tf b/cloud/gcp/big-query/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/gcp/big-query/versions.tf +++ b/cloud/gcp/big-query/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/gcp/cloud-sql/common/README.md b/cloud/gcp/cloud-sql/common/README.md index 60dd57f..20830dc 100644 --- a/cloud/gcp/cloud-sql/common/README.md +++ b/cloud/gcp/cloud-sql/common/README.md @@ -28,86 +28,107 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +No modules. + +## Resources + +| Name | Type | +|------|------| +| [datadog_monitor.cpu_utilization](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.disk_utilization](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.disk_utilization_forecast](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.failover_unavailable](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.memory_utilization_forecast](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| cpu\_utilization\_enabled | Flag to enable GCP Cloud SQL CPU Utilization monitor | `string` | `"true"` | no | -| cpu\_utilization\_extra\_tags | Extra tags for GCP Cloud SQL CPU Utilization monitor | `list(string)` | `[]` | no | -| cpu\_utilization\_message | Custom message for the CPU Utilization monitor | `string` | `""` | no | -| cpu\_utilization\_threshold\_critical | CPU Utilization in percentage (critical threshold) | `string` | `90` | no | -| cpu\_utilization\_threshold\_warning | CPU Utilization in percentage (warning threshold) | `string` | `80` | no | -| cpu\_utilization\_time\_aggregator | Time aggregator for the CPU Utilization monitor | `string` | `"avg"` | no | -| cpu\_utilization\_timeframe | Timeframe for the CPU Utilization monitor | `string` | `"last_15m"` | no | -| disk\_utilization\_enabled | Flag to enable GCP Cloud SQL Disk Utilization monitor | `string` | `"true"` | no | -| disk\_utilization\_extra\_tags | Extra tags for GCP Cloud SQL CPU Utilization monitor | `list(string)` | `[]` | no | -| disk\_utilization\_forecast\_algorithm | Algorithm for the Disk Utilization Forecast monitor | `string` | `"linear"` | no | -| disk\_utilization\_forecast\_deviations | Deviations for the Disk Utilization Forecast monitor | `string` | `1` | no | -| disk\_utilization\_forecast\_enabled | Flag to enable GCP Cloud SQL Disk Utilization Forecast monitor | `string` | `"true"` | no | -| disk\_utilization\_forecast\_extra\_tags | Extra tags for GCP Cloud SQL Disk Utilization Forecast monitor | `list(string)` | `[]` | no | -| disk\_utilization\_forecast\_interval | Interval for the Disk Utilization Forecast monitor | `string` | `"60m"` | no | -| disk\_utilization\_forecast\_linear\_history | History for the Disk Utilization Forecast monitor | `string` | `"3d"` | no | -| disk\_utilization\_forecast\_linear\_model | Model for the Disk Utilization Forecast monitor | `string` | `"default"` | no | -| disk\_utilization\_forecast\_message | Custom message for the Disk Utilization Forecast monitor | `string` | `""` | no | -| disk\_utilization\_forecast\_seasonal\_seasonality | Seasonality for the Disk Utilization Forecast monitor | `string` | `"weekly"` | no | -| disk\_utilization\_forecast\_threshold\_critical | Disk Utilization Forecast in percentage (critical threshold) | `string` | `80` | no | -| disk\_utilization\_forecast\_threshold\_critical\_recovery | Disk Utilization Forecast in percentage (recovery threshold) | `string` | `72` | no | -| disk\_utilization\_forecast\_time\_aggregator | Time aggregator for the Disk Utilization Forecast monitor | `string` | `"max"` | no | -| disk\_utilization\_forecast\_timeframe | Timeframe for the Disk Utilization Forecast monitor | `string` | `"next_1w"` | no | -| disk\_utilization\_message | Custom message for the Disk Utilization monitor | `string` | `""` | no | -| disk\_utilization\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | -| disk\_utilization\_threshold\_critical | Disk Utilization in percentage (critical threshold) | `string` | `90` | no | -| disk\_utilization\_threshold\_warning | Disk Utilization in percentage (warning threshold) | `string` | `80` | no | -| disk\_utilization\_time\_aggregator | Time aggregator for the Disk Utilization monitor | `string` | `"avg"` | no | -| disk\_utilization\_timeframe | Timeframe for the Disk Utilization monitor | `string` | `"last_5m"` | no | -| environment | Architecture environment | `string` | n/a | yes | -| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | -| failover\_unavailable\_enabled | Flag to enable GCP Cloud SQL Failover Unavailable monitor | `string` | `"true"` | no | -| failover\_unavailable\_extra\_tags | Extra tags for GCP Cloud SQL Failover Unavailable monitor | `list(string)` | `[]` | no | -| failover\_unavailable\_message | Custom message for the Failover Unavailable monitor | `string` | `""` | no | -| failover\_unavailable\_threshold\_critical | Failover Unavailable critical threshold | `string` | `0` | no | -| failover\_unavailable\_time\_aggregator | Time aggreggator for the Failover Unavailable monitor | `string` | `"max"` | no | -| failover\_unavailable\_timeframe | Timeframe for the Failover Unavailable monitor | `string` | `"last_10m"` | no | -| filter\_tags | Tags used for filtering | `string` | `"*"` | no | -| filter\_tags\_failover\_unavailable | Tags used for filtering specific to the failover unavailable monitor which is only useful for master instances | `string` | `""` | no | -| memory\_utilization\_enabled | Flag to enable GCP Cloud SQL Memory Utilization monitor | `string` | `"true"` | no | -| memory\_utilization\_extra\_tags | Extra tags for GCP Cloud SQL Memory Utilization monitor | `list(string)` | `[]` | no | -| memory\_utilization\_forecast\_algorithm | Algorithm for the Memory Utilization Forecast monitor | `string` | `"linear"` | no | -| memory\_utilization\_forecast\_deviations | Deviations for the Memory Utilization Forecast monitor | `string` | `1` | no | -| memory\_utilization\_forecast\_enabled | Flag to enable GCP Cloud SQL Memory Utilization Forecast monitor | `string` | `"false"` | no | -| memory\_utilization\_forecast\_extra\_tags | Extra tags for GCP Cloud SQL Memory Utilization Forecast monitor | `list(string)` | `[]` | no | -| memory\_utilization\_forecast\_interval | Interval for the Memory Utilization Forecast monitor | `string` | `"30m"` | no | -| memory\_utilization\_forecast\_linear\_history | History for the Memory Utilization Forecast monitor | `string` | `"12h"` | no | -| memory\_utilization\_forecast\_linear\_model | Model for the Memory Utilization Forecast monitor | `string` | `"default"` | no | -| memory\_utilization\_forecast\_message | Custom message for the Memory Utilization Forecast monitor | `string` | `""` | no | -| memory\_utilization\_forecast\_seasonal\_seasonality | Seasonality for the Memory Utilization Forecast monitor | `string` | `"weekly"` | no | -| memory\_utilization\_forecast\_threshold\_critical | Memory Utilization Forecast in percentage (warning threshold) | `number` | `90` | no | -| memory\_utilization\_forecast\_threshold\_critical\_recovery | Memory Utilization Forecast in percentage (recovery threshold) | `number` | `81` | no | -| memory\_utilization\_forecast\_time\_aggregator | Time aggregator for the Memory Utilization Forecast monitor | `string` | `"max"` | no | -| memory\_utilization\_forecast\_timeframe | Timeframe for the Memory Utilization Forecast monitor | `string` | `"next_3d"` | no | -| memory\_utilization\_message | Custom message for the Memory Utilization monitor | `string` | `""` | no | -| memory\_utilization\_threshold\_critical | Memory Utilization in percentage (critical threshold) | `number` | `90` | no | -| memory\_utilization\_threshold\_warning | Memory Utilization in percentage (warning threshold) | `number` | `80` | no | -| memory\_utilization\_time\_aggregator | Time aggregator for the Memory Utilization monitor | `string` | `"avg"` | no | -| memory\_utilization\_timeframe | Timeframe for the Memory Utilization monitor | `string` | `"last_5m"` | no | -| message | Message sent when a monitor is triggered | `any` | n/a | yes | -| new\_host\_delay | Delay in seconds for the new host evaluation | `number` | `300` | no | -| 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 | +| [cpu\_utilization\_enabled](#input\_cpu\_utilization\_enabled) | Flag to enable GCP Cloud SQL CPU Utilization monitor | `string` | `"true"` | no | +| [cpu\_utilization\_extra\_tags](#input\_cpu\_utilization\_extra\_tags) | Extra tags for GCP Cloud SQL CPU Utilization monitor | `list(string)` | `[]` | no | +| [cpu\_utilization\_message](#input\_cpu\_utilization\_message) | Custom message for the CPU Utilization monitor | `string` | `""` | no | +| [cpu\_utilization\_threshold\_critical](#input\_cpu\_utilization\_threshold\_critical) | CPU Utilization in percentage (critical threshold) | `string` | `90` | no | +| [cpu\_utilization\_threshold\_warning](#input\_cpu\_utilization\_threshold\_warning) | CPU Utilization in percentage (warning threshold) | `string` | `80` | no | +| [cpu\_utilization\_time\_aggregator](#input\_cpu\_utilization\_time\_aggregator) | Time aggregator for the CPU Utilization monitor | `string` | `"avg"` | no | +| [cpu\_utilization\_timeframe](#input\_cpu\_utilization\_timeframe) | Timeframe for the CPU Utilization monitor | `string` | `"last_15m"` | no | +| [disk\_utilization\_enabled](#input\_disk\_utilization\_enabled) | Flag to enable GCP Cloud SQL Disk Utilization monitor | `string` | `"true"` | no | +| [disk\_utilization\_extra\_tags](#input\_disk\_utilization\_extra\_tags) | Extra tags for GCP Cloud SQL CPU Utilization monitor | `list(string)` | `[]` | no | +| [disk\_utilization\_forecast\_algorithm](#input\_disk\_utilization\_forecast\_algorithm) | Algorithm for the Disk Utilization Forecast monitor | `string` | `"linear"` | no | +| [disk\_utilization\_forecast\_deviations](#input\_disk\_utilization\_forecast\_deviations) | Deviations for the Disk Utilization Forecast monitor | `string` | `1` | no | +| [disk\_utilization\_forecast\_enabled](#input\_disk\_utilization\_forecast\_enabled) | Flag to enable GCP Cloud SQL Disk Utilization Forecast monitor | `string` | `"true"` | no | +| [disk\_utilization\_forecast\_extra\_tags](#input\_disk\_utilization\_forecast\_extra\_tags) | Extra tags for GCP Cloud SQL Disk Utilization Forecast monitor | `list(string)` | `[]` | no | +| [disk\_utilization\_forecast\_interval](#input\_disk\_utilization\_forecast\_interval) | Interval for the Disk Utilization Forecast monitor | `string` | `"60m"` | no | +| [disk\_utilization\_forecast\_linear\_history](#input\_disk\_utilization\_forecast\_linear\_history) | History for the Disk Utilization Forecast monitor | `string` | `"3d"` | no | +| [disk\_utilization\_forecast\_linear\_model](#input\_disk\_utilization\_forecast\_linear\_model) | Model for the Disk Utilization Forecast monitor | `string` | `"default"` | no | +| [disk\_utilization\_forecast\_message](#input\_disk\_utilization\_forecast\_message) | Custom message for the Disk Utilization Forecast monitor | `string` | `""` | no | +| [disk\_utilization\_forecast\_seasonal\_seasonality](#input\_disk\_utilization\_forecast\_seasonal\_seasonality) | Seasonality for the Disk Utilization Forecast monitor | `string` | `"weekly"` | no | +| [disk\_utilization\_forecast\_threshold\_critical](#input\_disk\_utilization\_forecast\_threshold\_critical) | Disk Utilization Forecast in percentage (critical threshold) | `string` | `80` | no | +| [disk\_utilization\_forecast\_threshold\_critical\_recovery](#input\_disk\_utilization\_forecast\_threshold\_critical\_recovery) | Disk Utilization Forecast in percentage (recovery threshold) | `string` | `72` | no | +| [disk\_utilization\_forecast\_time\_aggregator](#input\_disk\_utilization\_forecast\_time\_aggregator) | Time aggregator for the Disk Utilization Forecast monitor | `string` | `"max"` | no | +| [disk\_utilization\_forecast\_timeframe](#input\_disk\_utilization\_forecast\_timeframe) | Timeframe for the Disk Utilization Forecast monitor | `string` | `"next_1w"` | no | +| [disk\_utilization\_message](#input\_disk\_utilization\_message) | Custom message for the Disk Utilization monitor | `string` | `""` | no | +| [disk\_utilization\_no\_data\_timeframe](#input\_disk\_utilization\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no | +| [disk\_utilization\_threshold\_critical](#input\_disk\_utilization\_threshold\_critical) | Disk Utilization in percentage (critical threshold) | `string` | `90` | no | +| [disk\_utilization\_threshold\_warning](#input\_disk\_utilization\_threshold\_warning) | Disk Utilization in percentage (warning threshold) | `string` | `80` | no | +| [disk\_utilization\_time\_aggregator](#input\_disk\_utilization\_time\_aggregator) | Time aggregator for the Disk Utilization monitor | `string` | `"avg"` | no | +| [disk\_utilization\_timeframe](#input\_disk\_utilization\_timeframe) | Timeframe for the Disk Utilization monitor | `string` | `"last_5m"` | no | +| [environment](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [failover\_unavailable\_enabled](#input\_failover\_unavailable\_enabled) | Flag to enable GCP Cloud SQL Failover Unavailable monitor | `string` | `"true"` | no | +| [failover\_unavailable\_extra\_tags](#input\_failover\_unavailable\_extra\_tags) | Extra tags for GCP Cloud SQL Failover Unavailable monitor | `list(string)` | `[]` | no | +| [failover\_unavailable\_message](#input\_failover\_unavailable\_message) | Custom message for the Failover Unavailable monitor | `string` | `""` | no | +| [failover\_unavailable\_threshold\_critical](#input\_failover\_unavailable\_threshold\_critical) | Failover Unavailable critical threshold | `string` | `0` | no | +| [failover\_unavailable\_time\_aggregator](#input\_failover\_unavailable\_time\_aggregator) | Time aggreggator for the Failover Unavailable monitor | `string` | `"max"` | no | +| [failover\_unavailable\_timeframe](#input\_failover\_unavailable\_timeframe) | Timeframe for the Failover Unavailable monitor | `string` | `"last_10m"` | no | +| [filter\_tags](#input\_filter\_tags) | Tags used for filtering | `string` | `"*"` | no | +| [filter\_tags\_failover\_unavailable](#input\_filter\_tags\_failover\_unavailable) | Tags used for filtering specific to the failover unavailable monitor which is only useful for master instances | `string` | `""` | no | +| [memory\_utilization\_enabled](#input\_memory\_utilization\_enabled) | Flag to enable GCP Cloud SQL Memory Utilization monitor | `string` | `"true"` | no | +| [memory\_utilization\_extra\_tags](#input\_memory\_utilization\_extra\_tags) | Extra tags for GCP Cloud SQL Memory Utilization monitor | `list(string)` | `[]` | no | +| [memory\_utilization\_forecast\_algorithm](#input\_memory\_utilization\_forecast\_algorithm) | Algorithm for the Memory Utilization Forecast monitor | `string` | `"linear"` | no | +| [memory\_utilization\_forecast\_deviations](#input\_memory\_utilization\_forecast\_deviations) | Deviations for the Memory Utilization Forecast monitor | `string` | `1` | no | +| [memory\_utilization\_forecast\_enabled](#input\_memory\_utilization\_forecast\_enabled) | Flag to enable GCP Cloud SQL Memory Utilization Forecast monitor | `string` | `"false"` | no | +| [memory\_utilization\_forecast\_extra\_tags](#input\_memory\_utilization\_forecast\_extra\_tags) | Extra tags for GCP Cloud SQL Memory Utilization Forecast monitor | `list(string)` | `[]` | no | +| [memory\_utilization\_forecast\_interval](#input\_memory\_utilization\_forecast\_interval) | Interval for the Memory Utilization Forecast monitor | `string` | `"30m"` | no | +| [memory\_utilization\_forecast\_linear\_history](#input\_memory\_utilization\_forecast\_linear\_history) | History for the Memory Utilization Forecast monitor | `string` | `"12h"` | no | +| [memory\_utilization\_forecast\_linear\_model](#input\_memory\_utilization\_forecast\_linear\_model) | Model for the Memory Utilization Forecast monitor | `string` | `"default"` | no | +| [memory\_utilization\_forecast\_message](#input\_memory\_utilization\_forecast\_message) | Custom message for the Memory Utilization Forecast monitor | `string` | `""` | no | +| [memory\_utilization\_forecast\_seasonal\_seasonality](#input\_memory\_utilization\_forecast\_seasonal\_seasonality) | Seasonality for the Memory Utilization Forecast monitor | `string` | `"weekly"` | no | +| [memory\_utilization\_forecast\_threshold\_critical](#input\_memory\_utilization\_forecast\_threshold\_critical) | Memory Utilization Forecast in percentage (warning threshold) | `number` | `90` | no | +| [memory\_utilization\_forecast\_threshold\_critical\_recovery](#input\_memory\_utilization\_forecast\_threshold\_critical\_recovery) | Memory Utilization Forecast in percentage (recovery threshold) | `number` | `81` | no | +| [memory\_utilization\_forecast\_time\_aggregator](#input\_memory\_utilization\_forecast\_time\_aggregator) | Time aggregator for the Memory Utilization Forecast monitor | `string` | `"max"` | no | +| [memory\_utilization\_forecast\_timeframe](#input\_memory\_utilization\_forecast\_timeframe) | Timeframe for the Memory Utilization Forecast monitor | `string` | `"next_3d"` | no | +| [memory\_utilization\_message](#input\_memory\_utilization\_message) | Custom message for the Memory Utilization monitor | `string` | `""` | no | +| [memory\_utilization\_threshold\_critical](#input\_memory\_utilization\_threshold\_critical) | Memory Utilization in percentage (critical threshold) | `number` | `90` | no | +| [memory\_utilization\_threshold\_warning](#input\_memory\_utilization\_threshold\_warning) | Memory Utilization in percentage (warning threshold) | `number` | `80` | no | +| [memory\_utilization\_time\_aggregator](#input\_memory\_utilization\_time\_aggregator) | Time aggregator for the Memory Utilization monitor | `string` | `"avg"` | no | +| [memory\_utilization\_timeframe](#input\_memory\_utilization\_timeframe) | Timeframe for the Memory Utilization monitor | `string` | `"last_5m"` | no | +| [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds for the new host evaluation | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | ## Outputs | Name | Description | |------|-------------| -| cpu\_utilization\_id | id for monitor cpu\_utilization | -| disk\_utilization\_forecast\_id | id for monitor disk\_utilization\_forecast | -| disk\_utilization\_id | id for monitor disk\_utilization | -| failover\_unavailable\_id | id for monitor failover\_unavailable | -| memory\_utilization\_forecast\_id | id for monitor memory\_utilization\_forecast | -| memory\_utilization\_id | id for monitor memory\_utilization | - +| [cpu\_utilization\_id](#output\_cpu\_utilization\_id) | id for monitor cpu\_utilization | +| [disk\_utilization\_forecast\_id](#output\_disk\_utilization\_forecast\_id) | id for monitor disk\_utilization\_forecast | +| [disk\_utilization\_id](#output\_disk\_utilization\_id) | id for monitor disk\_utilization | +| [failover\_unavailable\_id](#output\_failover\_unavailable\_id) | id for monitor failover\_unavailable | +| [memory\_utilization\_forecast\_id](#output\_memory\_utilization\_forecast\_id) | id for monitor memory\_utilization\_forecast | +| [memory\_utilization\_id](#output\_memory\_utilization\_id) | id for monitor memory\_utilization | ## Related documentation * [GCP Metrics for CloudSQL](https://cloud.google.com/monitoring/api/metrics_gcp#gcp-cloudsql) diff --git a/cloud/gcp/cloud-sql/common/versions.tf b/cloud/gcp/cloud-sql/common/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/gcp/cloud-sql/common/versions.tf +++ b/cloud/gcp/cloud-sql/common/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/gcp/cloud-sql/mysql/README.md b/cloud/gcp/cloud-sql/mysql/README.md index 5c748a5..0425825 100644 --- a/cloud/gcp/cloud-sql/mysql/README.md +++ b/cloud/gcp/cloud-sql/mysql/README.md @@ -23,34 +23,50 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +No modules. + +## Resources + +| Name | Type | +|------|------| +| [datadog_monitor.replication_lag](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| environment | Architecture environment | `string` | n/a | yes | -| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | -| filter\_tags | Tags used for filtering | `string` | `"*"` | no | -| message | Message sent when a monitor is triggered | `any` | n/a | yes | -| new\_host\_delay | Delay in seconds for the new host evaluation | `number` | `300` | no | -| 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 | -| replication\_lag\_enabled | Flag to enable GCP Cloud SQL Replication Lag monitor | `string` | `"true"` | no | -| replication\_lag\_extra\_tags | Extra tags for GCP Cloud SQL SQL Replication monitor | `list(string)` | `[]` | no | -| replication\_lag\_message | Custom message for the Replication Lag monitor | `string` | `""` | no | -| replication\_lag\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `20` | no | -| replication\_lag\_threshold\_critical | Seconds behind the master (critical threshold) | `string` | `180` | no | -| replication\_lag\_threshold\_warning | Seconds behind the master (warning threshold) | `string` | `90` | no | -| replication\_lag\_time\_aggregator | Time aggregator for the Replication Lag monitor | `string` | `"min"` | no | -| replication\_lag\_timeframe | Timeframe for the Replication Lag monitor | `string` | `"last_10m"` | no | +| [environment](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [filter\_tags](#input\_filter\_tags) | Tags used for filtering | `string` | `"*"` | no | +| [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds for the new host evaluation | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [replication\_lag\_enabled](#input\_replication\_lag\_enabled) | Flag to enable GCP Cloud SQL Replication Lag monitor | `string` | `"true"` | no | +| [replication\_lag\_extra\_tags](#input\_replication\_lag\_extra\_tags) | Extra tags for GCP Cloud SQL SQL Replication monitor | `list(string)` | `[]` | no | +| [replication\_lag\_message](#input\_replication\_lag\_message) | Custom message for the Replication Lag monitor | `string` | `""` | no | +| [replication\_lag\_no\_data\_timeframe](#input\_replication\_lag\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `20` | no | +| [replication\_lag\_threshold\_critical](#input\_replication\_lag\_threshold\_critical) | Seconds behind the master (critical threshold) | `string` | `180` | no | +| [replication\_lag\_threshold\_warning](#input\_replication\_lag\_threshold\_warning) | Seconds behind the master (warning threshold) | `string` | `90` | no | +| [replication\_lag\_time\_aggregator](#input\_replication\_lag\_time\_aggregator) | Time aggregator for the Replication Lag monitor | `string` | `"min"` | no | +| [replication\_lag\_timeframe](#input\_replication\_lag\_timeframe) | Timeframe for the Replication Lag monitor | `string` | `"last_10m"` | no | ## Outputs | Name | Description | |------|-------------| -| replication\_lag\_id | id for monitor replication\_lag | - +| [replication\_lag\_id](#output\_replication\_lag\_id) | id for monitor replication\_lag | ## Related documentation * [GCP Metrics for CloudSQL](https://cloud.google.com/monitoring/api/metrics_gcp#gcp-cloudsql) diff --git a/cloud/gcp/cloud-sql/mysql/versions.tf b/cloud/gcp/cloud-sql/mysql/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/gcp/cloud-sql/mysql/versions.tf +++ b/cloud/gcp/cloud-sql/mysql/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/gcp/gce/instance/README.md b/cloud/gcp/gce/instance/README.md index 925f9a6..45e4112 100644 --- a/cloud/gcp/gce/instance/README.md +++ b/cloud/gcp/gce/instance/README.md @@ -25,50 +25,68 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +No modules. + +## Resources + +| Name | Type | +|------|------| +| [datadog_monitor.cpu_utilization](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.disk_throttled_bps](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.disk_throttled_ops](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| cpu\_utilization\_enabled | Flag to enable CPU Utilization monitor | `string` | `"true"` | no | -| cpu\_utilization\_extra\_tags | Extra tags for CPU Utilization monitor | `list(string)` | `[]` | no | -| cpu\_utilization\_message | Custom message for the CPU Utilization monitor | `string` | `""` | no | -| cpu\_utilization\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `30` | no | -| cpu\_utilization\_threshold\_critical | CPU Utilization in percentage (critical threshold) | `string` | `90` | no | -| cpu\_utilization\_threshold\_warning | CPU Utilization in percentage (warning threshold) | `string` | `80` | no | -| cpu\_utilization\_time\_aggregator | Time aggregator for the CPU Utilization monitor | `string` | `"avg"` | no | -| cpu\_utilization\_timeframe | Timeframe for the CPU Utilization monitor | `string` | `"last_15m"` | no | -| disk\_throttled\_bps\_enabled | Flag to enable Disk Throttled Bps monitor | `string` | `"true"` | no | -| disk\_throttled\_bps\_extra\_tags | Extra tags for Disk Throttled Bps monitor | `list(string)` | `[]` | no | -| disk\_throttled\_bps\_message | Custom message for the Disk Throttled Bps monitor | `string` | `""` | no | -| disk\_throttled\_bps\_threshold\_critical | Disk Throttled Bps in percentage (critical threshold) | `string` | `50` | no | -| disk\_throttled\_bps\_threshold\_warning | Disk Throttled Bps in percentage (warning threshold) | `string` | `30` | no | -| disk\_throttled\_bps\_time\_aggregator | Time aggregator for the Disk Throttled Bps monitor | `string` | `"min"` | no | -| disk\_throttled\_bps\_timeframe | Timeframe for the Disk Throttled Bps monitor | `string` | `"last_15m"` | no | -| disk\_throttled\_ops\_enabled | Flag to enable Disk Throttled OPS monitor | `string` | `"true"` | no | -| disk\_throttled\_ops\_extra\_tags | Extra tags for Disk Throttled OPS monitor | `list(string)` | `[]` | no | -| disk\_throttled\_ops\_message | Custom message for the Disk Throttled OPS monitor | `string` | `""` | no | -| disk\_throttled\_ops\_threshold\_critical | Disk Throttled OPS in percentage (critical threshold) | `string` | `50` | no | -| disk\_throttled\_ops\_threshold\_warning | Disk Throttled OPS in percentage (warning threshold) | `string` | `30` | no | -| disk\_throttled\_ops\_time\_aggregator | Time aggregator for the Disk Throttled OPS monitor | `string` | `"min"` | no | -| disk\_throttled\_ops\_timeframe | Timeframe for the Disk Throttled OPS monitor | `string` | `"last_15m"` | no | -| environment | Architecture environment | `string` | n/a | yes | -| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | -| filter\_tags | Tags used for filtering | `string` | `"*"` | no | -| message | Message sent when a monitor is triggered | `any` | n/a | yes | -| new\_host\_delay | Delay in seconds for the new host evaluation | `number` | `300` | no | -| 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 | +| [cpu\_utilization\_enabled](#input\_cpu\_utilization\_enabled) | Flag to enable CPU Utilization monitor | `string` | `"true"` | no | +| [cpu\_utilization\_extra\_tags](#input\_cpu\_utilization\_extra\_tags) | Extra tags for CPU Utilization monitor | `list(string)` | `[]` | no | +| [cpu\_utilization\_message](#input\_cpu\_utilization\_message) | Custom message for the CPU Utilization monitor | `string` | `""` | no | +| [cpu\_utilization\_no\_data\_timeframe](#input\_cpu\_utilization\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `30` | no | +| [cpu\_utilization\_threshold\_critical](#input\_cpu\_utilization\_threshold\_critical) | CPU Utilization in percentage (critical threshold) | `string` | `90` | no | +| [cpu\_utilization\_threshold\_warning](#input\_cpu\_utilization\_threshold\_warning) | CPU Utilization in percentage (warning threshold) | `string` | `80` | no | +| [cpu\_utilization\_time\_aggregator](#input\_cpu\_utilization\_time\_aggregator) | Time aggregator for the CPU Utilization monitor | `string` | `"avg"` | no | +| [cpu\_utilization\_timeframe](#input\_cpu\_utilization\_timeframe) | Timeframe for the CPU Utilization monitor | `string` | `"last_15m"` | no | +| [disk\_throttled\_bps\_enabled](#input\_disk\_throttled\_bps\_enabled) | Flag to enable Disk Throttled Bps monitor | `string` | `"true"` | no | +| [disk\_throttled\_bps\_extra\_tags](#input\_disk\_throttled\_bps\_extra\_tags) | Extra tags for Disk Throttled Bps monitor | `list(string)` | `[]` | no | +| [disk\_throttled\_bps\_message](#input\_disk\_throttled\_bps\_message) | Custom message for the Disk Throttled Bps monitor | `string` | `""` | no | +| [disk\_throttled\_bps\_threshold\_critical](#input\_disk\_throttled\_bps\_threshold\_critical) | Disk Throttled Bps in percentage (critical threshold) | `string` | `50` | no | +| [disk\_throttled\_bps\_threshold\_warning](#input\_disk\_throttled\_bps\_threshold\_warning) | Disk Throttled Bps in percentage (warning threshold) | `string` | `30` | no | +| [disk\_throttled\_bps\_time\_aggregator](#input\_disk\_throttled\_bps\_time\_aggregator) | Time aggregator for the Disk Throttled Bps monitor | `string` | `"min"` | no | +| [disk\_throttled\_bps\_timeframe](#input\_disk\_throttled\_bps\_timeframe) | Timeframe for the Disk Throttled Bps monitor | `string` | `"last_15m"` | no | +| [disk\_throttled\_ops\_enabled](#input\_disk\_throttled\_ops\_enabled) | Flag to enable Disk Throttled OPS monitor | `string` | `"true"` | no | +| [disk\_throttled\_ops\_extra\_tags](#input\_disk\_throttled\_ops\_extra\_tags) | Extra tags for Disk Throttled OPS monitor | `list(string)` | `[]` | no | +| [disk\_throttled\_ops\_message](#input\_disk\_throttled\_ops\_message) | Custom message for the Disk Throttled OPS monitor | `string` | `""` | no | +| [disk\_throttled\_ops\_threshold\_critical](#input\_disk\_throttled\_ops\_threshold\_critical) | Disk Throttled OPS in percentage (critical threshold) | `string` | `50` | no | +| [disk\_throttled\_ops\_threshold\_warning](#input\_disk\_throttled\_ops\_threshold\_warning) | Disk Throttled OPS in percentage (warning threshold) | `string` | `30` | no | +| [disk\_throttled\_ops\_time\_aggregator](#input\_disk\_throttled\_ops\_time\_aggregator) | Time aggregator for the Disk Throttled OPS monitor | `string` | `"min"` | no | +| [disk\_throttled\_ops\_timeframe](#input\_disk\_throttled\_ops\_timeframe) | Timeframe for the Disk Throttled OPS monitor | `string` | `"last_15m"` | no | +| [environment](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [filter\_tags](#input\_filter\_tags) | Tags used for filtering | `string` | `"*"` | no | +| [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds for the new host evaluation | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | ## Outputs | Name | Description | |------|-------------| -| cpu\_utilization\_id | id for monitor cpu\_utilization | -| disk\_throttled\_bps\_id | id for monitor disk\_throttled\_bps | -| disk\_throttled\_ops\_id | id for monitor disk\_throttled\_ops | - +| [cpu\_utilization\_id](#output\_cpu\_utilization\_id) | id for monitor cpu\_utilization | +| [disk\_throttled\_bps\_id](#output\_disk\_throttled\_bps\_id) | id for monitor disk\_throttled\_bps | +| [disk\_throttled\_ops\_id](#output\_disk\_throttled\_ops\_id) | id for monitor disk\_throttled\_ops | ## Related documentation * [Datadog GCE Instance metrics](https://www.datadoghq.com/blog/monitoring-google-compute-engine-performance/#instance-metrics) diff --git a/cloud/gcp/gce/instance/versions.tf b/cloud/gcp/gce/instance/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/gcp/gce/instance/versions.tf +++ b/cloud/gcp/gce/instance/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/gcp/lb/README.md b/cloud/gcp/lb/README.md index bc9f21c..1fdd8d5 100644 --- a/cloud/gcp/lb/README.md +++ b/cloud/gcp/lb/README.md @@ -27,68 +27,88 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +No modules. + +## Resources + +| Name | Type | +|------|------| +| [datadog_monitor.backend_latency_bucket](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.backend_latency_service](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.error_rate_4xx](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.error_rate_5xx](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.request_count](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| backend\_latency\_bucket\_enabled | Flag to enable GCP LB Backend Latency monitor | `string` | `"true"` | no | -| backend\_latency\_bucket\_extra\_tags | Extra tags for GCP LB Backend Latency monitor | `list(string)` | `[]` | no | -| backend\_latency\_bucket\_message | Custom message for the GCP LB Backend Latency monitor | `string` | `""` | no | -| backend\_latency\_bucket\_threshold\_critical | Latency in milliseconds (critical threshold) | `string` | `8000` | no | -| backend\_latency\_bucket\_threshold\_warning | Latency in milliseconds (warning threshold) | `string` | `4000` | no | -| backend\_latency\_bucket\_time\_aggregator | Timeframe for the GCP LB Backend Latency monitor | `string` | `"min"` | no | -| backend\_latency\_bucket\_timeframe | Timeframe for the GCP LB Backend Latency monitor | `string` | `"last_10m"` | no | -| backend\_latency\_service\_enabled | Flag to enable GCP LB Backend Latency monitor | `string` | `"true"` | no | -| backend\_latency\_service\_extra\_tags | Extra tags for GCP LB Backend Latency monitor | `list(string)` | `[]` | no | -| backend\_latency\_service\_message | Custom message for the GCP LB Backend Latency monitor | `string` | `""` | no | -| backend\_latency\_service\_threshold\_critical | Latency in milliseconds (critical threshold) | `string` | `1500` | no | -| backend\_latency\_service\_threshold\_warning | Latency in milliseconds (warning threshold) | `string` | `1000` | no | -| backend\_latency\_service\_time\_aggregator | Timeframe for the GCP LB Backend Latency monitor | `string` | `"min"` | no | -| backend\_latency\_service\_timeframe | Timeframe for the GCP LB Backend Latency monitor | `string` | `"last_10m"` | no | -| environment | Architecture environment | `string` | n/a | yes | -| error\_rate\_4xx\_artificial\_request | Divisor Delta for the GCP LB 4XX Errors monitor | `string` | `5` | no | -| error\_rate\_4xx\_enabled | Flag to enable GCP LB 4XX Errors monitor | `string` | `"true"` | no | -| error\_rate\_4xx\_extra\_tags | Extra tags for GCP LB 4XX Errors monitor | `list(string)` | `[]` | no | -| error\_rate\_4xx\_message | Custom message for the GCP LB 4XX Errors monitor | `string` | `""` | no | -| error\_rate\_4xx\_threshold\_critical | Rate error in percentage (critical threshold) | `string` | `60` | no | -| error\_rate\_4xx\_threshold\_warning | Rate error in percentage (warning threshold) | `string` | `50` | no | -| error\_rate\_4xx\_time\_aggregator | Timeframe for the GCP LB 4XX Errors monitor | `string` | `"min"` | no | -| error\_rate\_4xx\_timeframe | Timeframe for the GCP LB 4XX Errors monitor | `string` | `"last_5m"` | no | -| error\_rate\_5xx\_artificial\_request | Divisor Delta for the GCP LB 5XX Errors monitor | `string` | `5` | no | -| error\_rate\_5xx\_enabled | Flag to enable GCP LB 5XX Errors monitor | `string` | `"true"` | no | -| error\_rate\_5xx\_extra\_tags | Extra tags for GCP LB 5XX Errors monitor | `list(string)` | `[]` | no | -| error\_rate\_5xx\_message | Custom message for the GCP LB 5XX Errors monitor | `string` | `""` | no | -| error\_rate\_5xx\_threshold\_critical | Rate error in percentage (critical threshold) | `string` | `40` | no | -| error\_rate\_5xx\_threshold\_warning | Rate error in percentage (warning threshold) | `string` | `30` | no | -| error\_rate\_5xx\_time\_aggregator | Timeframe for the GCP LB 5XX Errors monitor | `string` | `"min"` | no | -| error\_rate\_5xx\_timeframe | Timeframe for the GCP LB 5XX Errors monitor | `string` | `"last_5m"` | no | -| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | -| filter\_tags | Tags used for filtering | `string` | `"*"` | no | -| message | Message sent when a monitor is triggered | `any` | n/a | yes | -| new\_host\_delay | Delay in seconds for the new host evaluation | `number` | `300` | no | -| 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 | -| request\_count\_enabled | Flag to enable GCP LB Request Count monitor | `string` | `"true"` | no | -| request\_count\_extra\_tags | Extra tags for GCP LB Request Count monitor | `list(string)` | `[]` | no | -| request\_count\_message | Custom message for the GCP LB Request Count monitor | `string` | `""` | no | -| request\_count\_threshold\_critical | Desviation in percentage (critical threshold) | `string` | `500` | no | -| request\_count\_threshold\_warning | Desviation in percentage (warning threshold) | `string` | `250` | no | -| request\_count\_time\_aggregator | Timeframe for the GCP LB Request Count monitor | `string` | `"sum"` | no | -| request\_count\_timeframe | Timeframe for the GCP LB Request Count monitor | `string` | `"last_5m"` | no | -| request\_count\_timeshift | Timeshift for the GCP LB Request Count monitor | `string` | `"last_5m"` | no | +| [backend\_latency\_bucket\_enabled](#input\_backend\_latency\_bucket\_enabled) | Flag to enable GCP LB Backend Latency monitor | `string` | `"true"` | no | +| [backend\_latency\_bucket\_extra\_tags](#input\_backend\_latency\_bucket\_extra\_tags) | Extra tags for GCP LB Backend Latency monitor | `list(string)` | `[]` | no | +| [backend\_latency\_bucket\_message](#input\_backend\_latency\_bucket\_message) | Custom message for the GCP LB Backend Latency monitor | `string` | `""` | no | +| [backend\_latency\_bucket\_threshold\_critical](#input\_backend\_latency\_bucket\_threshold\_critical) | Latency in milliseconds (critical threshold) | `string` | `8000` | no | +| [backend\_latency\_bucket\_threshold\_warning](#input\_backend\_latency\_bucket\_threshold\_warning) | Latency in milliseconds (warning threshold) | `string` | `4000` | no | +| [backend\_latency\_bucket\_time\_aggregator](#input\_backend\_latency\_bucket\_time\_aggregator) | Timeframe for the GCP LB Backend Latency monitor | `string` | `"min"` | no | +| [backend\_latency\_bucket\_timeframe](#input\_backend\_latency\_bucket\_timeframe) | Timeframe for the GCP LB Backend Latency monitor | `string` | `"last_10m"` | no | +| [backend\_latency\_service\_enabled](#input\_backend\_latency\_service\_enabled) | Flag to enable GCP LB Backend Latency monitor | `string` | `"true"` | no | +| [backend\_latency\_service\_extra\_tags](#input\_backend\_latency\_service\_extra\_tags) | Extra tags for GCP LB Backend Latency monitor | `list(string)` | `[]` | no | +| [backend\_latency\_service\_message](#input\_backend\_latency\_service\_message) | Custom message for the GCP LB Backend Latency monitor | `string` | `""` | no | +| [backend\_latency\_service\_threshold\_critical](#input\_backend\_latency\_service\_threshold\_critical) | Latency in milliseconds (critical threshold) | `string` | `1500` | no | +| [backend\_latency\_service\_threshold\_warning](#input\_backend\_latency\_service\_threshold\_warning) | Latency in milliseconds (warning threshold) | `string` | `1000` | no | +| [backend\_latency\_service\_time\_aggregator](#input\_backend\_latency\_service\_time\_aggregator) | Timeframe for the GCP LB Backend Latency monitor | `string` | `"min"` | no | +| [backend\_latency\_service\_timeframe](#input\_backend\_latency\_service\_timeframe) | Timeframe for the GCP LB Backend Latency monitor | `string` | `"last_10m"` | no | +| [environment](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [error\_rate\_4xx\_artificial\_request](#input\_error\_rate\_4xx\_artificial\_request) | Divisor Delta for the GCP LB 4XX Errors monitor | `string` | `5` | no | +| [error\_rate\_4xx\_enabled](#input\_error\_rate\_4xx\_enabled) | Flag to enable GCP LB 4XX Errors monitor | `string` | `"true"` | no | +| [error\_rate\_4xx\_extra\_tags](#input\_error\_rate\_4xx\_extra\_tags) | Extra tags for GCP LB 4XX Errors monitor | `list(string)` | `[]` | no | +| [error\_rate\_4xx\_message](#input\_error\_rate\_4xx\_message) | Custom message for the GCP LB 4XX Errors monitor | `string` | `""` | no | +| [error\_rate\_4xx\_threshold\_critical](#input\_error\_rate\_4xx\_threshold\_critical) | Rate error in percentage (critical threshold) | `string` | `60` | no | +| [error\_rate\_4xx\_threshold\_warning](#input\_error\_rate\_4xx\_threshold\_warning) | Rate error in percentage (warning threshold) | `string` | `50` | no | +| [error\_rate\_4xx\_time\_aggregator](#input\_error\_rate\_4xx\_time\_aggregator) | Timeframe for the GCP LB 4XX Errors monitor | `string` | `"min"` | no | +| [error\_rate\_4xx\_timeframe](#input\_error\_rate\_4xx\_timeframe) | Timeframe for the GCP LB 4XX Errors monitor | `string` | `"last_5m"` | no | +| [error\_rate\_5xx\_artificial\_request](#input\_error\_rate\_5xx\_artificial\_request) | Divisor Delta for the GCP LB 5XX Errors monitor | `string` | `5` | no | +| [error\_rate\_5xx\_enabled](#input\_error\_rate\_5xx\_enabled) | Flag to enable GCP LB 5XX Errors monitor | `string` | `"true"` | no | +| [error\_rate\_5xx\_extra\_tags](#input\_error\_rate\_5xx\_extra\_tags) | Extra tags for GCP LB 5XX Errors monitor | `list(string)` | `[]` | no | +| [error\_rate\_5xx\_message](#input\_error\_rate\_5xx\_message) | Custom message for the GCP LB 5XX Errors monitor | `string` | `""` | no | +| [error\_rate\_5xx\_threshold\_critical](#input\_error\_rate\_5xx\_threshold\_critical) | Rate error in percentage (critical threshold) | `string` | `40` | no | +| [error\_rate\_5xx\_threshold\_warning](#input\_error\_rate\_5xx\_threshold\_warning) | Rate error in percentage (warning threshold) | `string` | `30` | no | +| [error\_rate\_5xx\_time\_aggregator](#input\_error\_rate\_5xx\_time\_aggregator) | Timeframe for the GCP LB 5XX Errors monitor | `string` | `"min"` | no | +| [error\_rate\_5xx\_timeframe](#input\_error\_rate\_5xx\_timeframe) | Timeframe for the GCP LB 5XX Errors monitor | `string` | `"last_5m"` | no | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [filter\_tags](#input\_filter\_tags) | Tags used for filtering | `string` | `"*"` | no | +| [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds for the new host evaluation | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [request\_count\_enabled](#input\_request\_count\_enabled) | Flag to enable GCP LB Request Count monitor | `string` | `"true"` | no | +| [request\_count\_extra\_tags](#input\_request\_count\_extra\_tags) | Extra tags for GCP LB Request Count monitor | `list(string)` | `[]` | no | +| [request\_count\_message](#input\_request\_count\_message) | Custom message for the GCP LB Request Count monitor | `string` | `""` | no | +| [request\_count\_threshold\_critical](#input\_request\_count\_threshold\_critical) | Desviation in percentage (critical threshold) | `string` | `500` | no | +| [request\_count\_threshold\_warning](#input\_request\_count\_threshold\_warning) | Desviation in percentage (warning threshold) | `string` | `250` | no | +| [request\_count\_time\_aggregator](#input\_request\_count\_time\_aggregator) | Timeframe for the GCP LB Request Count monitor | `string` | `"sum"` | no | +| [request\_count\_timeframe](#input\_request\_count\_timeframe) | Timeframe for the GCP LB Request Count monitor | `string` | `"last_5m"` | no | +| [request\_count\_timeshift](#input\_request\_count\_timeshift) | Timeshift for the GCP LB Request Count monitor | `string` | `"last_5m"` | no | ## Outputs | Name | Description | |------|-------------| -| backend\_latency\_bucket\_id | id for monitor backend\_latency\_bucket | -| backend\_latency\_service\_id | id for monitor backend\_latency\_service | -| error\_rate\_4xx\_id | id for monitor error\_rate\_4xx | -| error\_rate\_5xx\_id | id for monitor error\_rate\_5xx | -| request\_count\_id | id for monitor request\_count | - +| [backend\_latency\_bucket\_id](#output\_backend\_latency\_bucket\_id) | id for monitor backend\_latency\_bucket | +| [backend\_latency\_service\_id](#output\_backend\_latency\_service\_id) | id for monitor backend\_latency\_service | +| [error\_rate\_4xx\_id](#output\_error\_rate\_4xx\_id) | id for monitor error\_rate\_4xx | +| [error\_rate\_5xx\_id](#output\_error\_rate\_5xx\_id) | id for monitor error\_rate\_5xx | +| [request\_count\_id](#output\_request\_count\_id) | id for monitor request\_count | ## Related documentation * [GCP LB Metrics](https://cloud.google.com/monitoring/api/metrics_gcp#gcp-loadbalancing) diff --git a/cloud/gcp/lb/versions.tf b/cloud/gcp/lb/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/gcp/lb/versions.tf +++ b/cloud/gcp/lb/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/gcp/memorystore/redis/README.md b/cloud/gcp/memorystore/redis/README.md index 8444230..737c1a5 100644 --- a/cloud/gcp/memorystore/redis/README.md +++ b/cloud/gcp/memorystore/redis/README.md @@ -23,34 +23,50 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +No modules. + +## Resources + +| Name | Type | +|------|------| +| [datadog_monitor.system_memory_usage_ratio](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| environment | Architecture environment | `string` | n/a | yes | -| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | -| filter\_tags | Tags used for filtering | `string` | `"*"` | no | -| message | Message sent when a monitor is triggered | `any` | n/a | yes | -| new\_host\_delay | Delay in seconds for the new host evaluation | `number` | `300` | no | -| 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 | -| system\_memory\_usage\_ratio\_enabled | Flag to enable GCP Memorystore Redis System memory usage ratio monitor | `string` | `"true"` | no | -| system\_memory\_usage\_ratio\_extra\_tags | Extra tags for GCP Memorystore Redis System memory usage ratio monitor | `list(string)` | `[]` | no | -| system\_memory\_usage\_ratio\_message | Custom message for Memorystore Redis System memory usage ratio monitor | `string` | `""` | no | -| system\_memory\_usage\_ratio\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `20` | no | -| system\_memory\_usage\_ratio\_threshold\_critical | Memorystore Redis System memory usage ratio critical threshold | `string` | `90` | no | -| system\_memory\_usage\_ratio\_threshold\_warning | Memorystore Redis System memory usage ratio warning threshold | `string` | `80` | no | -| system\_memory\_usage\_ratio\_time\_aggregator | Time aggregator for Memorystore Redis System memory usage ratio monitor | `string` | `"min"` | no | -| system\_memory\_usage\_ratio\_timeframe | Timeframe for Memorystore Redis System memory usage ratio monitor | `string` | `"last_10m"` | no | +| [environment](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [filter\_tags](#input\_filter\_tags) | Tags used for filtering | `string` | `"*"` | no | +| [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds for the new host evaluation | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [system\_memory\_usage\_ratio\_enabled](#input\_system\_memory\_usage\_ratio\_enabled) | Flag to enable GCP Memorystore Redis System memory usage ratio monitor | `string` | `"true"` | no | +| [system\_memory\_usage\_ratio\_extra\_tags](#input\_system\_memory\_usage\_ratio\_extra\_tags) | Extra tags for GCP Memorystore Redis System memory usage ratio monitor | `list(string)` | `[]` | no | +| [system\_memory\_usage\_ratio\_message](#input\_system\_memory\_usage\_ratio\_message) | Custom message for Memorystore Redis System memory usage ratio monitor | `string` | `""` | no | +| [system\_memory\_usage\_ratio\_no\_data\_timeframe](#input\_system\_memory\_usage\_ratio\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `20` | no | +| [system\_memory\_usage\_ratio\_threshold\_critical](#input\_system\_memory\_usage\_ratio\_threshold\_critical) | Memorystore Redis System memory usage ratio critical threshold | `string` | `90` | no | +| [system\_memory\_usage\_ratio\_threshold\_warning](#input\_system\_memory\_usage\_ratio\_threshold\_warning) | Memorystore Redis System memory usage ratio warning threshold | `string` | `80` | no | +| [system\_memory\_usage\_ratio\_time\_aggregator](#input\_system\_memory\_usage\_ratio\_time\_aggregator) | Time aggregator for Memorystore Redis System memory usage ratio monitor | `string` | `"min"` | no | +| [system\_memory\_usage\_ratio\_timeframe](#input\_system\_memory\_usage\_ratio\_timeframe) | Timeframe for Memorystore Redis System memory usage ratio monitor | `string` | `"last_10m"` | no | ## Outputs | Name | Description | |------|-------------| -| system\_memory\_usage\_ratio\_id | id for monitor system\_memory\_usage\_ratio | - +| [system\_memory\_usage\_ratio\_id](#output\_system\_memory\_usage\_ratio\_id) | id for monitor system\_memory\_usage\_ratio | ## Related documentation * [GCP Metrics for Memorystore Redis](https://cloud.google.com/monitoring/api/metrics_gcp#gcp-redis) diff --git a/cloud/gcp/memorystore/redis/versions.tf b/cloud/gcp/memorystore/redis/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/gcp/memorystore/redis/versions.tf +++ b/cloud/gcp/memorystore/redis/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/gcp/pubsub/subscription/README.md b/cloud/gcp/pubsub/subscription/README.md index 70abb29..60990bf 100644 --- a/cloud/gcp/pubsub/subscription/README.md +++ b/cloud/gcp/pubsub/subscription/README.md @@ -25,55 +25,73 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +No modules. + +## Resources + +| Name | Type | +|------|------| +| [datadog_monitor.oldest_unacked_message_age](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.subscription_push_latency](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.subscription_push_latency_anomaly](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| environment | Architecture environment | `string` | n/a | yes | -| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | -| filter\_tags | Tags used for filtering | `string` | `"*"` | no | -| message | Message sent when a monitor is triggered | `any` | n/a | yes | -| new\_host\_delay | Delay in seconds for the new host evaluation | `number` | `300` | no | -| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | -| oldest\_unacked\_message\_age\_enabled | Flag to enable GCP Pub/Sub Subscription Oldest Unacked Message Age monitor | `string` | `"true"` | no | -| oldest\_unacked\_message\_age\_extra\_tags | Extra tags for GCP Pub/Sub Subscription Oldest Unacked Message Age monitor | `list(string)` | `[]` | no | -| oldest\_unacked\_message\_age\_message | Custom message for the GCP Pub/Sub Subscription Oldest Unacked Message Age monitor | `string` | `""` | no | -| oldest\_unacked\_message\_age\_threshold\_critical | GCP Pub/Sub Subscription Oldest Unacked Message Age critical threshold | `string` | `120` | no | -| oldest\_unacked\_message\_age\_threshold\_warning | GCP Pub/Sub Subscription Oldest Unacked Message Age warning threshold | `string` | `30` | no | -| oldest\_unacked\_message\_age\_time\_aggregator | Time aggregator for the GCP Pub/Sub Subscription Oldest Unacked Message Age monitor | `string` | `"min"` | no | -| oldest\_unacked\_message\_age\_timeframe | Timeframe for the GCP Pub/Sub Subscription Oldest Unacked Message Age monitor | `string` | `"last_5m"` | no | -| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | -| subscription\_push\_latency\_anomaly\_alert\_window | Alert window. | `string` | `"last_15m"` | no | -| subscription\_push\_latency\_anomaly\_count\_default\_zero | Count default zero. | `string` | `"true"` | no | -| subscription\_push\_latency\_anomaly\_detection\_algorithm | Anomaly Detection Algorithm used | `string` | `"basic"` | no | -| subscription\_push\_latency\_anomaly\_direction | Direction of the anomaly. It can be both, below or above. | `string` | `"above"` | no | -| subscription\_push\_latency\_anomaly\_enabled | Flag to enable GCP Pub/Sub Subscription Push Latency Anomaly monitor | `string` | `"false"` | no | -| subscription\_push\_latency\_anomaly\_extra\_tags | Extra tags for GCP Pub/Sub Subscription Push Latency Anomaly monitor | `list(string)` | `[]` | no | -| subscription\_push\_latency\_anomaly\_interval | Interval. | `string` | `60` | no | -| subscription\_push\_latency\_anomaly\_message | Custom message for the GCP Pub/Sub Subscription Push Latency Anomaly monitor | `string` | `""` | no | -| subscription\_push\_latency\_anomaly\_seasonality | Seasonality of the algorithm | `string` | `"daily"` | no | -| subscription\_push\_latency\_anomaly\_threshold\_critical | GCP Pub/Sub Subscription Push Latency Anomaly critical threshold | `string` | `2` | no | -| subscription\_push\_latency\_anomaly\_threshold\_warning | GCP Pub/Sub Subscription Push Latency Anomaly warning threshold | `string` | `1` | no | -| subscription\_push\_latency\_anomaly\_time\_aggregator | Time aggregator for the GCP Pub/Sub Subscription Push Latency Anomaly monitor | `string` | `"avg"` | no | -| subscription\_push\_latency\_anomaly\_timeframe | Timeframe for the GCP Pub/Sub Subscription Push Latency Anomaly monitor | `string` | `"last_10m"` | no | -| subscription\_push\_latency\_enabled | Flag to enable GCP Pub/Sub Subscription Push Latency High monitor | `string` | `"true"` | no | -| subscription\_push\_latency\_extra\_tags | Extra tags for GCP Pub/Sub Subscription Push Latency High monitor | `list(string)` | `[]` | no | -| subscription\_push\_latency\_message | Custom message for the GCP Pub/Sub Subscription Push Latency High monitor | `string` | `""` | no | -| subscription\_push\_latency\_threshold\_critical | GCP Pub/Sub Subscription Push Latency High critical threshold | `string` | `5000` | no | -| subscription\_push\_latency\_threshold\_warning | GCP Pub/Sub Subscription Push Latency High warning threshold | `string` | `1000` | no | -| subscription\_push\_latency\_time\_aggregator | Time aggregator for the GCP Pub/Sub Subscription Push Latency High monitor | `string` | `"avg"` | no | -| subscription\_push\_latency\_timeframe | Timeframe for the GCP Pub/Sub Subscription Push Latency High monitor | `string` | `"last_10m"` | no | +| [environment](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [filter\_tags](#input\_filter\_tags) | Tags used for filtering | `string` | `"*"` | no | +| [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds for the new host evaluation | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [oldest\_unacked\_message\_age\_enabled](#input\_oldest\_unacked\_message\_age\_enabled) | Flag to enable GCP Pub/Sub Subscription Oldest Unacked Message Age monitor | `string` | `"true"` | no | +| [oldest\_unacked\_message\_age\_extra\_tags](#input\_oldest\_unacked\_message\_age\_extra\_tags) | Extra tags for GCP Pub/Sub Subscription Oldest Unacked Message Age monitor | `list(string)` | `[]` | no | +| [oldest\_unacked\_message\_age\_message](#input\_oldest\_unacked\_message\_age\_message) | Custom message for the GCP Pub/Sub Subscription Oldest Unacked Message Age monitor | `string` | `""` | no | +| [oldest\_unacked\_message\_age\_threshold\_critical](#input\_oldest\_unacked\_message\_age\_threshold\_critical) | GCP Pub/Sub Subscription Oldest Unacked Message Age critical threshold | `string` | `120` | no | +| [oldest\_unacked\_message\_age\_threshold\_warning](#input\_oldest\_unacked\_message\_age\_threshold\_warning) | GCP Pub/Sub Subscription Oldest Unacked Message Age warning threshold | `string` | `30` | no | +| [oldest\_unacked\_message\_age\_time\_aggregator](#input\_oldest\_unacked\_message\_age\_time\_aggregator) | Time aggregator for the GCP Pub/Sub Subscription Oldest Unacked Message Age monitor | `string` | `"min"` | no | +| [oldest\_unacked\_message\_age\_timeframe](#input\_oldest\_unacked\_message\_age\_timeframe) | Timeframe for the GCP Pub/Sub Subscription Oldest Unacked Message Age monitor | `string` | `"last_5m"` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [subscription\_push\_latency\_anomaly\_alert\_window](#input\_subscription\_push\_latency\_anomaly\_alert\_window) | Alert window. | `string` | `"last_15m"` | no | +| [subscription\_push\_latency\_anomaly\_count\_default\_zero](#input\_subscription\_push\_latency\_anomaly\_count\_default\_zero) | Count default zero. | `string` | `"true"` | no | +| [subscription\_push\_latency\_anomaly\_detection\_algorithm](#input\_subscription\_push\_latency\_anomaly\_detection\_algorithm) | Anomaly Detection Algorithm used | `string` | `"basic"` | no | +| [subscription\_push\_latency\_anomaly\_direction](#input\_subscription\_push\_latency\_anomaly\_direction) | Direction of the anomaly. It can be both, below or above. | `string` | `"above"` | no | +| [subscription\_push\_latency\_anomaly\_enabled](#input\_subscription\_push\_latency\_anomaly\_enabled) | Flag to enable GCP Pub/Sub Subscription Push Latency Anomaly monitor | `string` | `"false"` | no | +| [subscription\_push\_latency\_anomaly\_extra\_tags](#input\_subscription\_push\_latency\_anomaly\_extra\_tags) | Extra tags for GCP Pub/Sub Subscription Push Latency Anomaly monitor | `list(string)` | `[]` | no | +| [subscription\_push\_latency\_anomaly\_interval](#input\_subscription\_push\_latency\_anomaly\_interval) | Interval. | `string` | `60` | no | +| [subscription\_push\_latency\_anomaly\_message](#input\_subscription\_push\_latency\_anomaly\_message) | Custom message for the GCP Pub/Sub Subscription Push Latency Anomaly monitor | `string` | `""` | no | +| [subscription\_push\_latency\_anomaly\_seasonality](#input\_subscription\_push\_latency\_anomaly\_seasonality) | Seasonality of the algorithm | `string` | `"daily"` | no | +| [subscription\_push\_latency\_anomaly\_threshold\_critical](#input\_subscription\_push\_latency\_anomaly\_threshold\_critical) | GCP Pub/Sub Subscription Push Latency Anomaly critical threshold | `string` | `2` | no | +| [subscription\_push\_latency\_anomaly\_threshold\_warning](#input\_subscription\_push\_latency\_anomaly\_threshold\_warning) | GCP Pub/Sub Subscription Push Latency Anomaly warning threshold | `string` | `1` | no | +| [subscription\_push\_latency\_anomaly\_time\_aggregator](#input\_subscription\_push\_latency\_anomaly\_time\_aggregator) | Time aggregator for the GCP Pub/Sub Subscription Push Latency Anomaly monitor | `string` | `"avg"` | no | +| [subscription\_push\_latency\_anomaly\_timeframe](#input\_subscription\_push\_latency\_anomaly\_timeframe) | Timeframe for the GCP Pub/Sub Subscription Push Latency Anomaly monitor | `string` | `"last_10m"` | no | +| [subscription\_push\_latency\_enabled](#input\_subscription\_push\_latency\_enabled) | Flag to enable GCP Pub/Sub Subscription Push Latency High monitor | `string` | `"true"` | no | +| [subscription\_push\_latency\_extra\_tags](#input\_subscription\_push\_latency\_extra\_tags) | Extra tags for GCP Pub/Sub Subscription Push Latency High monitor | `list(string)` | `[]` | no | +| [subscription\_push\_latency\_message](#input\_subscription\_push\_latency\_message) | Custom message for the GCP Pub/Sub Subscription Push Latency High monitor | `string` | `""` | no | +| [subscription\_push\_latency\_threshold\_critical](#input\_subscription\_push\_latency\_threshold\_critical) | GCP Pub/Sub Subscription Push Latency High critical threshold | `string` | `5000` | no | +| [subscription\_push\_latency\_threshold\_warning](#input\_subscription\_push\_latency\_threshold\_warning) | GCP Pub/Sub Subscription Push Latency High warning threshold | `string` | `1000` | no | +| [subscription\_push\_latency\_time\_aggregator](#input\_subscription\_push\_latency\_time\_aggregator) | Time aggregator for the GCP Pub/Sub Subscription Push Latency High monitor | `string` | `"avg"` | no | +| [subscription\_push\_latency\_timeframe](#input\_subscription\_push\_latency\_timeframe) | Timeframe for the GCP Pub/Sub Subscription Push Latency High monitor | `string` | `"last_10m"` | no | ## Outputs | Name | Description | |------|-------------| -| oldest\_unacked\_message\_age\_id | id for monitor oldest\_unacked\_message\_age | -| subscription\_push\_latency\_anomaly\_id | id for monitor subscription\_push\_latency\_anomaly | -| subscription\_push\_latency\_id | id for monitor subscription\_push\_latency | - +| [oldest\_unacked\_message\_age\_id](#output\_oldest\_unacked\_message\_age\_id) | id for monitor oldest\_unacked\_message\_age | +| [subscription\_push\_latency\_anomaly\_id](#output\_subscription\_push\_latency\_anomaly\_id) | id for monitor subscription\_push\_latency\_anomaly | +| [subscription\_push\_latency\_id](#output\_subscription\_push\_latency\_id) | id for monitor subscription\_push\_latency | ## Related documentation * [GCP Pub/Sub Metrics](https://cloud.google.com/monitoring/api/metrics_gcp#gcp-pubsub) diff --git a/cloud/gcp/pubsub/subscription/versions.tf b/cloud/gcp/pubsub/subscription/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/gcp/pubsub/subscription/versions.tf +++ b/cloud/gcp/pubsub/subscription/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/cloud/gcp/pubsub/topic/README.md b/cloud/gcp/pubsub/topic/README.md index 2645449..639cb0a 100644 --- a/cloud/gcp/pubsub/topic/README.md +++ b/cloud/gcp/pubsub/topic/README.md @@ -25,48 +25,66 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +No modules. + +## Resources + +| Name | Type | +|------|------| +| [datadog_monitor.sending_operations_count](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.unavailable_sending_operations_count](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.unavailable_sending_operations_ratio](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| environment | Architecture environment | `string` | n/a | yes | -| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `900` | no | -| filter\_tags | Tags used for filtering | `string` | `"*"` | no | -| message | Message sent when a monitor is triggered | `any` | n/a | yes | -| new\_host\_delay | Delay in seconds for the new host evaluation | `number` | `300` | no | -| 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 | -| sending\_operations\_count\_enabled | Flag to enable GCP Pub/Sub Unavailable Sending Operations Count monitor | `string` | `"true"` | no | -| sending\_operations\_count\_extra\_tags | Extra tags for GCP Pub/Sub Sending Operations Count monitor | `list(string)` | `[]` | no | -| sending\_operations\_count\_message | Custom message for the GCP Pub/Sub Sending Operations Count monitor | `string` | `""` | no | -| sending\_operations\_count\_threshold\_critical | Critical threshold for the number of sending operations. | `string` | `0` | no | -| sending\_operations\_count\_time\_aggregator | Timeframe for the GCP Pub/Sub Sending Operations Count monitor | `string` | `"sum"` | no | -| sending\_operations\_count\_timeframe | Timeframe for the GCP Pub/Sub Sending Operations Count monitor | `string` | `"last_30m"` | no | -| unavailable\_sending\_operations\_count\_enabled | Flag to enable GCP Pub/Sub Unavailable Sending Operations Count monitor | `string` | `"false"` | no | -| unavailable\_sending\_operations\_count\_extra\_tags | Extra tags for GCP Pub/Sub Unavailable Sending Operations Count monitor | `list(string)` | `[]` | no | -| unavailable\_sending\_operations\_count\_message | Custom message for the GCP Pub/Sub Unavailable Sending Operations Count monitor | `string` | `""` | no | -| unavailable\_sending\_operations\_count\_threshold\_critical | Critical threshold for the number of unavailable sending operations | `string` | `4` | no | -| unavailable\_sending\_operations\_count\_threshold\_warning | Warning threshold for the number of unavailable sending operations | `string` | `2` | no | -| unavailable\_sending\_operations\_count\_time\_aggregator | Timeframe for the GCP Pub/Sub Unavailable Sending Operations Count monitor | `string` | `"sum"` | no | -| unavailable\_sending\_operations\_count\_timeframe | Timeframe for the GCP Pub/Sub Unavailable Sending Operations Count monitor | `string` | `"last_10m"` | no | -| unavailable\_sending\_operations\_ratio\_enabled | Flag to enable GCP Pub/Sub Unavailable Sending Operations Ratio monitor | `string` | `"true"` | no | -| unavailable\_sending\_operations\_ratio\_extra\_tags | Extra tags for GCP Pub/Sub Unavailable Sending Operations Ratio monitor | `list(string)` | `[]` | no | -| unavailable\_sending\_operations\_ratio\_message | Custom message for the GCP Pub/Sub Unavailable Sending Operations Ratio monitor | `string` | `""` | no | -| unavailable\_sending\_operations\_ratio\_threshold\_critical | Critical threshold (%) for the ratio of unavailable sending operations | `string` | `20` | no | -| unavailable\_sending\_operations\_ratio\_threshold\_warning | Warning threshold (%) for the ratio of unavailable sending operations | `string` | `10` | no | -| unavailable\_sending\_operations\_ratio\_time\_aggregator | Timeframe for the GCP Pub/Sub Unavailable Sending Operations Ratio monitor | `string` | `"sum"` | no | -| unavailable\_sending\_operations\_ratio\_timeframe | Timeframe for the GCP Pub/Sub Unavailable Sending Operations Ratio monitor | `string` | `"last_10m"` | no | +| [environment](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [filter\_tags](#input\_filter\_tags) | Tags used for filtering | `string` | `"*"` | no | +| [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds for the new host evaluation | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [sending\_operations\_count\_enabled](#input\_sending\_operations\_count\_enabled) | Flag to enable GCP Pub/Sub Unavailable Sending Operations Count monitor | `string` | `"true"` | no | +| [sending\_operations\_count\_extra\_tags](#input\_sending\_operations\_count\_extra\_tags) | Extra tags for GCP Pub/Sub Sending Operations Count monitor | `list(string)` | `[]` | no | +| [sending\_operations\_count\_message](#input\_sending\_operations\_count\_message) | Custom message for the GCP Pub/Sub Sending Operations Count monitor | `string` | `""` | no | +| [sending\_operations\_count\_threshold\_critical](#input\_sending\_operations\_count\_threshold\_critical) | Critical threshold for the number of sending operations. | `string` | `0` | no | +| [sending\_operations\_count\_time\_aggregator](#input\_sending\_operations\_count\_time\_aggregator) | Timeframe for the GCP Pub/Sub Sending Operations Count monitor | `string` | `"sum"` | no | +| [sending\_operations\_count\_timeframe](#input\_sending\_operations\_count\_timeframe) | Timeframe for the GCP Pub/Sub Sending Operations Count monitor | `string` | `"last_30m"` | no | +| [unavailable\_sending\_operations\_count\_enabled](#input\_unavailable\_sending\_operations\_count\_enabled) | Flag to enable GCP Pub/Sub Unavailable Sending Operations Count monitor | `string` | `"false"` | no | +| [unavailable\_sending\_operations\_count\_extra\_tags](#input\_unavailable\_sending\_operations\_count\_extra\_tags) | Extra tags for GCP Pub/Sub Unavailable Sending Operations Count monitor | `list(string)` | `[]` | no | +| [unavailable\_sending\_operations\_count\_message](#input\_unavailable\_sending\_operations\_count\_message) | Custom message for the GCP Pub/Sub Unavailable Sending Operations Count monitor | `string` | `""` | no | +| [unavailable\_sending\_operations\_count\_threshold\_critical](#input\_unavailable\_sending\_operations\_count\_threshold\_critical) | Critical threshold for the number of unavailable sending operations | `string` | `4` | no | +| [unavailable\_sending\_operations\_count\_threshold\_warning](#input\_unavailable\_sending\_operations\_count\_threshold\_warning) | Warning threshold for the number of unavailable sending operations | `string` | `2` | no | +| [unavailable\_sending\_operations\_count\_time\_aggregator](#input\_unavailable\_sending\_operations\_count\_time\_aggregator) | Timeframe for the GCP Pub/Sub Unavailable Sending Operations Count monitor | `string` | `"sum"` | no | +| [unavailable\_sending\_operations\_count\_timeframe](#input\_unavailable\_sending\_operations\_count\_timeframe) | Timeframe for the GCP Pub/Sub Unavailable Sending Operations Count monitor | `string` | `"last_10m"` | no | +| [unavailable\_sending\_operations\_ratio\_enabled](#input\_unavailable\_sending\_operations\_ratio\_enabled) | Flag to enable GCP Pub/Sub Unavailable Sending Operations Ratio monitor | `string` | `"true"` | no | +| [unavailable\_sending\_operations\_ratio\_extra\_tags](#input\_unavailable\_sending\_operations\_ratio\_extra\_tags) | Extra tags for GCP Pub/Sub Unavailable Sending Operations Ratio monitor | `list(string)` | `[]` | no | +| [unavailable\_sending\_operations\_ratio\_message](#input\_unavailable\_sending\_operations\_ratio\_message) | Custom message for the GCP Pub/Sub Unavailable Sending Operations Ratio monitor | `string` | `""` | no | +| [unavailable\_sending\_operations\_ratio\_threshold\_critical](#input\_unavailable\_sending\_operations\_ratio\_threshold\_critical) | Critical threshold (%) for the ratio of unavailable sending operations | `string` | `20` | no | +| [unavailable\_sending\_operations\_ratio\_threshold\_warning](#input\_unavailable\_sending\_operations\_ratio\_threshold\_warning) | Warning threshold (%) for the ratio of unavailable sending operations | `string` | `10` | no | +| [unavailable\_sending\_operations\_ratio\_time\_aggregator](#input\_unavailable\_sending\_operations\_ratio\_time\_aggregator) | Timeframe for the GCP Pub/Sub Unavailable Sending Operations Ratio monitor | `string` | `"sum"` | no | +| [unavailable\_sending\_operations\_ratio\_timeframe](#input\_unavailable\_sending\_operations\_ratio\_timeframe) | Timeframe for the GCP Pub/Sub Unavailable Sending Operations Ratio monitor | `string` | `"last_10m"` | no | ## Outputs | Name | Description | |------|-------------| -| sending\_operations\_count\_id | id for monitor sending\_operations\_count | -| unavailable\_sending\_operations\_count\_id | id for monitor unavailable\_sending\_operations\_count | -| unavailable\_sending\_operations\_ratio\_id | id for monitor unavailable\_sending\_operations\_ratio | - +| [sending\_operations\_count\_id](#output\_sending\_operations\_count\_id) | id for monitor sending\_operations\_count | +| [unavailable\_sending\_operations\_count\_id](#output\_unavailable\_sending\_operations\_count\_id) | id for monitor unavailable\_sending\_operations\_count | +| [unavailable\_sending\_operations\_ratio\_id](#output\_unavailable\_sending\_operations\_ratio\_id) | id for monitor unavailable\_sending\_operations\_ratio | ## Related documentation * [GCP Pub/Sub Metrics](https://cloud.google.com/monitoring/api/metrics_gcp#gcp-pubsub) diff --git a/cloud/gcp/pubsub/topic/versions.tf b/cloud/gcp/pubsub/topic/versions.tf index 1c28e79..a5c6a87 100644 --- a/cloud/gcp/pubsub/topic/versions.tf +++ b/cloud/gcp/pubsub/topic/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/common/alerting-message/versions.tf b/common/module/versions.tf similarity index 78% rename from common/alerting-message/versions.tf rename to common/module/versions.tf index 1c28e79..a5c6a87 100644 --- a/common/alerting-message/versions.tf +++ b/common/module/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/database/elasticsearch/README.md b/database/elasticsearch/README.md index 1138b9a..35f89d0 100644 --- a/database/elasticsearch/README.md +++ b/database/elasticsearch/README.md @@ -44,214 +44,253 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [filter-tags](#module\_filter-tags) | ../../common/filter-tags | n/a | + +## Resources + +| Name | Type | +|------|------| +| [datadog_monitor.cluster_initializing_shards](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.cluster_relocating_shards](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.cluster_status_not_green](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.cluster_unassigned_shards](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.fetch_change](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.fetch_latency](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.field_data_evictions_change](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.flush_latency](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.http_connections_anomaly](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.indexing_latency](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.jvm_gc_old_collection_latency](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.jvm_gc_young_collection_latency](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.jvm_heap_memory_usage](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.jvm_memory_old_usage](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.jvm_memory_young_usage](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.node_free_space](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 | +| [datadog_monitor.query_cache_evictions_change](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.request_cache_evictions_change](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.search_query_change](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.search_query_latency](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.task_time_in_queue_change](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| cluster\_initializing\_shards\_enabled | Flag to enable Cluster Status monitor | `string` | `"true"` | no | -| cluster\_initializing\_shards\_extra\_tags | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | -| cluster\_initializing\_shards\_message | Custom message for the Cluster Status monitor | `string` | `""` | no | -| cluster\_initializing\_shards\_threshold\_critical | Cluster Status critical threshold | `string` | `2` | no | -| cluster\_initializing\_shards\_threshold\_warning | Cluster Status warning threshold | `string` | `1` | no | -| cluster\_initializing\_shards\_time\_aggregator | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | -| cluster\_initializing\_shards\_timeframe | Timeframe for the Cluster Status monitor | `string` | `"last_5m"` | no | -| cluster\_relocating\_shards\_enabled | Flag to enable Cluster Status monitor | `string` | `"true"` | no | -| cluster\_relocating\_shards\_extra\_tags | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | -| cluster\_relocating\_shards\_message | Custom message for the Cluster Status monitor | `string` | `""` | no | -| cluster\_relocating\_shards\_threshold\_critical | Cluster Status critical threshold | `string` | `2` | no | -| cluster\_relocating\_shards\_threshold\_warning | Cluster Status warning threshold | `string` | `1` | no | -| cluster\_relocating\_shards\_time\_aggregator | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | -| cluster\_relocating\_shards\_timeframe | Timeframe for the Cluster Status monitor | `string` | `"last_5m"` | no | -| cluster\_status\_not\_green\_enabled | Flag to enable Cluster Status monitor | `string` | `"true"` | no | -| cluster\_status\_not\_green\_extra\_tags | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | -| cluster\_status\_not\_green\_message | Custom message for the Cluster Status monitor | `string` | `""` | no | -| cluster\_status\_not\_green\_threshold\_critical | Cluster Status critical threshold | `string` | `0` | no | -| cluster\_status\_not\_green\_threshold\_warning | Cluster Status warning threshold | `string` | `1` | no | -| cluster\_status\_not\_green\_time\_aggregator | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | -| cluster\_status\_not\_green\_timeframe | Timeframe for the Cluster Status monitor | `string` | `"last_5m"` | no | -| cluster\_unassigned\_shards\_enabled | Flag to enable Cluster Status monitor | `string` | `"true"` | no | -| cluster\_unassigned\_shards\_extra\_tags | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | -| cluster\_unassigned\_shards\_message | Custom message for the Cluster Status monitor | `string` | `""` | no | -| cluster\_unassigned\_shards\_threshold\_critical | Cluster Status critical threshold | `string` | `2` | no | -| cluster\_unassigned\_shards\_threshold\_warning | Cluster Status warning threshold | `string` | `1` | no | -| cluster\_unassigned\_shards\_time\_aggregator | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | -| cluster\_unassigned\_shards\_timeframe | Timeframe for the Cluster Status monitor | `string` | `"last_5m"` | no | -| environment | Architecture environment | `string` | n/a | yes | -| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `15` | no | -| fetch\_change\_enabled | Flag to enable Cluster Status monitor | `string` | `"true"` | no | -| fetch\_change\_extra\_tags | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | -| fetch\_change\_message | Custom message for the Cluster Status monitor | `string` | `""` | no | -| fetch\_change\_threshold\_critical | Cluster Status critical threshold | `string` | `100` | no | -| fetch\_change\_threshold\_warning | Cluster Status warning threshold | `string` | `75` | no | -| fetch\_change\_time\_aggregator | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | -| fetch\_change\_timeframe | Timeframe for the Cluster Status monitor | `string` | `"last_10m"` | no | -| fetch\_change\_timeshift | Timeshift for the Cluster Status monitor | `string` | `"last_10m"` | no | -| fetch\_latency\_enabled | Flag to enable Cluster Status monitor | `string` | `"true"` | no | -| fetch\_latency\_extra\_tags | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | -| fetch\_latency\_message | Custom message for the Cluster Status monitor | `string` | `""` | no | -| fetch\_latency\_threshold\_critical | Cluster Status critical threshold | `string` | `20` | no | -| fetch\_latency\_threshold\_warning | Cluster Status warning threshold | `string` | `10` | no | -| fetch\_latency\_time\_aggregator | Time aggregator for the Cluster Status monitor | `string` | `"min"` | no | -| fetch\_latency\_timeframe | Timeframe for the Cluster Status monitor | `string` | `"last_15m"` | no | -| field\_data\_evictions\_change\_enabled | Flag to enable Cluster Status monitor | `string` | `"true"` | no | -| field\_data\_evictions\_change\_extra\_tags | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | -| field\_data\_evictions\_change\_message | Custom message for the Cluster Status monitor | `string` | `""` | no | -| field\_data\_evictions\_change\_threshold\_critical | Cluster Status critical threshold | `string` | `120` | no | -| field\_data\_evictions\_change\_threshold\_warning | Cluster Status warning threshold | `string` | `60` | no | -| field\_data\_evictions\_change\_time\_aggregator | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | -| field\_data\_evictions\_change\_timeframe | Timeframe for the Cluster Status monitor | `string` | `"last_15m"` | no | -| field\_data\_evictions\_change\_timeshift | Timeframe for the Cluster Status monitor | `string` | `"last_15m"` | no | -| 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 | -| filter\_tags\_use\_defaults | Use default filter tags convention | `string` | `"true"` | no | -| flush\_latency\_enabled | Flag to enable Cluster Status monitor | `string` | `"true"` | no | -| flush\_latency\_extra\_tags | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | -| flush\_latency\_message | Custom message for the Cluster Status monitor | `string` | `""` | no | -| flush\_latency\_threshold\_critical | Cluster Status critical threshold | `string` | `150` | no | -| flush\_latency\_threshold\_warning | Cluster Status warning threshold | `string` | `100` | no | -| flush\_latency\_time\_aggregator | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | -| flush\_latency\_timeframe | Timeframe for the Cluster Status monitor | `string` | `"last_15m"` | no | -| http\_connections\_anomaly\_alert\_window | Alert window. | `string` | `"last_15m"` | no | -| http\_connections\_anomaly\_count\_default\_zero | Count default zero. | `string` | `"true"` | no | -| http\_connections\_anomaly\_detection\_algorithm | Anomaly Detection Algorithm used | `string` | `"agile"` | no | -| http\_connections\_anomaly\_deviations | Deviations to detect the anomaly | `string` | `2` | no | -| http\_connections\_anomaly\_direction | Direction of the anomaly. It can be both, below or above. | `string` | `"above"` | no | -| http\_connections\_anomaly\_enabled | Flag to enable Cluster Status monitor | `string` | `"true"` | no | -| http\_connections\_anomaly\_extra\_tags | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | -| http\_connections\_anomaly\_interval | Interval. | `string` | `60` | no | -| http\_connections\_anomaly\_message | Custom message for the Cluster Status monitor | `string` | `""` | no | -| http\_connections\_anomaly\_seasonality | Seasonality of the algorithm | `string` | `"hourly"` | no | -| http\_connections\_anomaly\_threshold\_critical | Cluster Status critical threshold | `string` | `1` | no | -| http\_connections\_anomaly\_threshold\_warning | Cluster Status warning threshold | `string` | `0.75` | no | -| http\_connections\_anomaly\_time\_aggregator | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | -| http\_connections\_anomaly\_timeframe | Timeframe for the Cluster Status monitor | `string` | `"last_4h"` | no | -| indexing\_latency\_enabled | Flag to enable Cluster Status monitor | `string` | `"true"` | no | -| indexing\_latency\_extra\_tags | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | -| indexing\_latency\_message | Custom message for the Cluster Status monitor | `string` | `""` | no | -| indexing\_latency\_threshold\_critical | Cluster Status critical threshold | `string` | `30` | no | -| indexing\_latency\_threshold\_warning | Cluster Status warning threshold | `string` | `15` | no | -| indexing\_latency\_time\_aggregator | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | -| indexing\_latency\_timeframe | Timeframe for the Cluster Status monitor | `string` | `"last_10m"` | no | -| jvm\_gc\_old\_collection\_latency\_enabled | Flag to enable Cluster Status monitor | `string` | `"true"` | no | -| jvm\_gc\_old\_collection\_latency\_extra\_tags | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | -| jvm\_gc\_old\_collection\_latency\_message | Custom message for the Cluster Status monitor | `string` | `""` | no | -| jvm\_gc\_old\_collection\_latency\_threshold\_critical | Cluster Status critical threshold | `string` | `300` | no | -| jvm\_gc\_old\_collection\_latency\_threshold\_warning | Cluster Status warning threshold | `string` | `200` | no | -| jvm\_gc\_old\_collection\_latency\_time\_aggregator | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | -| jvm\_gc\_old\_collection\_latency\_timeframe | Timeframe for the Cluster Status monitor | `string` | `"last_15m"` | no | -| jvm\_gc\_young\_collection\_latency\_enabled | Flag to enable Cluster Status monitor | `string` | `"true"` | no | -| jvm\_gc\_young\_collection\_latency\_extra\_tags | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | -| jvm\_gc\_young\_collection\_latency\_message | Custom message for the Cluster Status monitor | `string` | `""` | no | -| jvm\_gc\_young\_collection\_latency\_threshold\_critical | Cluster Status critical threshold | `string` | `40` | no | -| jvm\_gc\_young\_collection\_latency\_threshold\_warning | Cluster Status warning threshold | `string` | `20` | no | -| jvm\_gc\_young\_collection\_latency\_time\_aggregator | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | -| jvm\_gc\_young\_collection\_latency\_timeframe | Timeframe for the Cluster Status monitor | `string` | `"last_15m"` | no | -| jvm\_heap\_memory\_usage\_enabled | Flag to enable Cluster Status monitor | `string` | `"true"` | no | -| jvm\_heap\_memory\_usage\_extra\_tags | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | -| jvm\_heap\_memory\_usage\_message | Custom message for the Cluster Status monitor | `string` | `""` | no | -| jvm\_heap\_memory\_usage\_threshold\_critical | Cluster Status critical threshold | `string` | `90` | no | -| jvm\_heap\_memory\_usage\_threshold\_warning | Cluster Status warning threshold | `string` | `80` | no | -| jvm\_heap\_memory\_usage\_time\_aggregator | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | -| jvm\_heap\_memory\_usage\_timeframe | Timeframe for the Cluster Status monitor | `string` | `"last_5m"` | no | -| jvm\_memory\_old\_usage\_enabled | Flag to enable Cluster Status monitor | `string` | `"true"` | no | -| jvm\_memory\_old\_usage\_extra\_tags | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | -| jvm\_memory\_old\_usage\_message | Custom message for the Cluster Status monitor | `string` | `""` | no | -| jvm\_memory\_old\_usage\_threshold\_critical | Cluster Status critical threshold | `string` | `90` | no | -| jvm\_memory\_old\_usage\_threshold\_warning | Cluster Status warning threshold | `string` | `80` | no | -| jvm\_memory\_old\_usage\_time\_aggregator | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | -| jvm\_memory\_old\_usage\_timeframe | Timeframe for the Cluster Status monitor | `string` | `"last_10m"` | no | -| jvm\_memory\_young\_usage\_enabled | Flag to enable Cluster Status monitor | `string` | `"true"` | no | -| jvm\_memory\_young\_usage\_extra\_tags | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | -| jvm\_memory\_young\_usage\_message | Custom message for the Cluster Status monitor | `string` | `""` | no | -| jvm\_memory\_young\_usage\_threshold\_critical | Cluster Status critical threshold | `string` | `90` | no | -| jvm\_memory\_young\_usage\_threshold\_warning | Cluster Status warning threshold | `string` | `80` | no | -| jvm\_memory\_young\_usage\_time\_aggregator | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | -| jvm\_memory\_young\_usage\_timeframe | Timeframe for the Cluster Status monitor | `string` | `"last_10m"` | no | -| message | Message sent when a monitor is triggered | `any` | n/a | yes | -| new\_host\_delay | Delay in seconds before begin to monitor new host | `number` | `300` | no | -| node\_free\_space\_enabled | Flag to enable Cluster Status monitor | `string` | `"true"` | no | -| node\_free\_space\_extra\_tags | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | -| node\_free\_space\_message | Custom message for the Cluster Status monitor | `string` | `""` | no | -| node\_free\_space\_threshold\_critical | Cluster Status critical threshold | `string` | `10` | no | -| node\_free\_space\_threshold\_warning | Cluster Status warning threshold | `string` | `20` | no | -| node\_free\_space\_time\_aggregator | Time aggregator for the Cluster Status monitor | `string` | `"sum"` | no | -| node\_free\_space\_timeframe | Timeframe for the Cluster Status monitor | `string` | `"last_5m"` | no | -| not\_responding\_enabled | Flag to enable Elasticsearch does not respond monitor | `string` | `"true"` | no | -| not\_responding\_extra\_tags | Extra tags for Elasticsearch does not respond monitor | `list(string)` | `[]` | no | -| not\_responding\_message | Custom message for Elasticsearch does not respond monitor | `string` | `""` | no | -| not\_responding\_no\_data\_timeframe | Elasticsearch not responding monitor no data timeframe | `string` | `10` | no | -| not\_responding\_threshold\_warning | Elasticsearch not responding limit (warning threshold) | `number` | `3` | no | -| 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 | -| query\_cache\_evictions\_change\_enabled | Flag to enable Cluster Status monitor | `string` | `"true"` | no | -| query\_cache\_evictions\_change\_extra\_tags | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | -| query\_cache\_evictions\_change\_message | Custom message for the Cluster Status monitor | `string` | `""` | no | -| query\_cache\_evictions\_change\_threshold\_critical | Cluster Status critical threshold | `string` | `120` | no | -| query\_cache\_evictions\_change\_threshold\_warning | Cluster Status warning threshold | `string` | `60` | no | -| query\_cache\_evictions\_change\_time\_aggregator | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | -| query\_cache\_evictions\_change\_timeframe | Timeframe for the Cluster Status monitor | `string` | `"last_15m"` | no | -| query\_cache\_evictions\_change\_timeshift | Timeframe for the Cluster Status monitor | `string` | `"last_15m"` | no | -| request\_cache\_evictions\_change\_enabled | Flag to enable Cluster Status monitor | `string` | `"true"` | no | -| request\_cache\_evictions\_change\_extra\_tags | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | -| request\_cache\_evictions\_change\_message | Custom message for the Cluster Status monitor | `string` | `""` | no | -| request\_cache\_evictions\_change\_threshold\_critical | Cluster Status critical threshold | `string` | `120` | no | -| request\_cache\_evictions\_change\_threshold\_warning | Cluster Status warning threshold | `string` | `60` | no | -| request\_cache\_evictions\_change\_time\_aggregator | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | -| request\_cache\_evictions\_change\_timeframe | Timeframe for the Cluster Status monitor | `string` | `"last_15m"` | no | -| request\_cache\_evictions\_change\_timeshift | Timeshift for the Cluster Status monitor | `string` | `"last_15m"` | no | -| search\_query\_change\_enabled | Flag to enable Cluster Status monitor | `string` | `"true"` | no | -| search\_query\_change\_extra\_tags | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | -| search\_query\_change\_message | Custom message for the Cluster Status monitor | `string` | `""` | no | -| search\_query\_change\_threshold\_critical | Cluster Status critical threshold | `string` | `100` | no | -| search\_query\_change\_threshold\_warning | Cluster Status warning threshold | `string` | `75` | no | -| search\_query\_change\_time\_aggregator | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | -| search\_query\_change\_timeframe | Timeframe for the Cluster Status monitor | `string` | `"last_10m"` | no | -| search\_query\_change\_timeshift | Timeshift for the Cluster Status monitor | `string` | `"last_10m"` | no | -| search\_query\_latency\_enabled | Flag to enable Cluster Status monitor | `string` | `"true"` | no | -| search\_query\_latency\_extra\_tags | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | -| search\_query\_latency\_message | Custom message for the Cluster Status monitor | `string` | `""` | no | -| search\_query\_latency\_threshold\_critical | Cluster Status critical threshold | `string` | `20` | no | -| search\_query\_latency\_threshold\_warning | Cluster Status warning threshold | `string` | `10` | no | -| search\_query\_latency\_time\_aggregator | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | -| search\_query\_latency\_timeframe | Timeframe for the Cluster Status monitor | `string` | `"last_15m"` | no | -| task\_time\_in\_queue\_change\_enabled | Flag to enable Cluster Status monitor | `string` | `"true"` | no | -| task\_time\_in\_queue\_change\_extra\_tags | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | -| task\_time\_in\_queue\_change\_message | Custom message for the Cluster Status monitor | `string` | `""` | no | -| task\_time\_in\_queue\_change\_threshold\_critical | Cluster Status critical threshold | `string` | `200` | no | -| task\_time\_in\_queue\_change\_threshold\_warning | Cluster Status warning threshold | `string` | `100` | no | -| task\_time\_in\_queue\_change\_time\_aggregator | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | -| task\_time\_in\_queue\_change\_timeframe | Timeframe for the Cluster Status monitor | `string` | `"last_10m"` | no | -| task\_time\_in\_queue\_change\_timeshift | Timeshift for the Cluster Status monitor | `string` | `"last_10m"` | no | +| [cluster\_initializing\_shards\_enabled](#input\_cluster\_initializing\_shards\_enabled) | Flag to enable Cluster Status monitor | `string` | `"true"` | no | +| [cluster\_initializing\_shards\_extra\_tags](#input\_cluster\_initializing\_shards\_extra\_tags) | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | +| [cluster\_initializing\_shards\_message](#input\_cluster\_initializing\_shards\_message) | Custom message for the Cluster Status monitor | `string` | `""` | no | +| [cluster\_initializing\_shards\_threshold\_critical](#input\_cluster\_initializing\_shards\_threshold\_critical) | Cluster Status critical threshold | `string` | `2` | no | +| [cluster\_initializing\_shards\_threshold\_warning](#input\_cluster\_initializing\_shards\_threshold\_warning) | Cluster Status warning threshold | `string` | `1` | no | +| [cluster\_initializing\_shards\_time\_aggregator](#input\_cluster\_initializing\_shards\_time\_aggregator) | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | +| [cluster\_initializing\_shards\_timeframe](#input\_cluster\_initializing\_shards\_timeframe) | Timeframe for the Cluster Status monitor | `string` | `"last_5m"` | no | +| [cluster\_relocating\_shards\_enabled](#input\_cluster\_relocating\_shards\_enabled) | Flag to enable Cluster Status monitor | `string` | `"true"` | no | +| [cluster\_relocating\_shards\_extra\_tags](#input\_cluster\_relocating\_shards\_extra\_tags) | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | +| [cluster\_relocating\_shards\_message](#input\_cluster\_relocating\_shards\_message) | Custom message for the Cluster Status monitor | `string` | `""` | no | +| [cluster\_relocating\_shards\_threshold\_critical](#input\_cluster\_relocating\_shards\_threshold\_critical) | Cluster Status critical threshold | `string` | `2` | no | +| [cluster\_relocating\_shards\_threshold\_warning](#input\_cluster\_relocating\_shards\_threshold\_warning) | Cluster Status warning threshold | `string` | `1` | no | +| [cluster\_relocating\_shards\_time\_aggregator](#input\_cluster\_relocating\_shards\_time\_aggregator) | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | +| [cluster\_relocating\_shards\_timeframe](#input\_cluster\_relocating\_shards\_timeframe) | Timeframe for the Cluster Status monitor | `string` | `"last_5m"` | no | +| [cluster\_status\_not\_green\_enabled](#input\_cluster\_status\_not\_green\_enabled) | Flag to enable Cluster Status monitor | `string` | `"true"` | no | +| [cluster\_status\_not\_green\_extra\_tags](#input\_cluster\_status\_not\_green\_extra\_tags) | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | +| [cluster\_status\_not\_green\_message](#input\_cluster\_status\_not\_green\_message) | Custom message for the Cluster Status monitor | `string` | `""` | no | +| [cluster\_status\_not\_green\_threshold\_critical](#input\_cluster\_status\_not\_green\_threshold\_critical) | Cluster Status critical threshold | `string` | `0` | no | +| [cluster\_status\_not\_green\_threshold\_warning](#input\_cluster\_status\_not\_green\_threshold\_warning) | Cluster Status warning threshold | `string` | `1` | no | +| [cluster\_status\_not\_green\_time\_aggregator](#input\_cluster\_status\_not\_green\_time\_aggregator) | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | +| [cluster\_status\_not\_green\_timeframe](#input\_cluster\_status\_not\_green\_timeframe) | Timeframe for the Cluster Status monitor | `string` | `"last_5m"` | no | +| [cluster\_unassigned\_shards\_enabled](#input\_cluster\_unassigned\_shards\_enabled) | Flag to enable Cluster Status monitor | `string` | `"true"` | no | +| [cluster\_unassigned\_shards\_extra\_tags](#input\_cluster\_unassigned\_shards\_extra\_tags) | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | +| [cluster\_unassigned\_shards\_message](#input\_cluster\_unassigned\_shards\_message) | Custom message for the Cluster Status monitor | `string` | `""` | no | +| [cluster\_unassigned\_shards\_threshold\_critical](#input\_cluster\_unassigned\_shards\_threshold\_critical) | Cluster Status critical threshold | `string` | `2` | no | +| [cluster\_unassigned\_shards\_threshold\_warning](#input\_cluster\_unassigned\_shards\_threshold\_warning) | Cluster Status warning threshold | `string` | `1` | no | +| [cluster\_unassigned\_shards\_time\_aggregator](#input\_cluster\_unassigned\_shards\_time\_aggregator) | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | +| [cluster\_unassigned\_shards\_timeframe](#input\_cluster\_unassigned\_shards\_timeframe) | Timeframe for the Cluster Status monitor | `string` | `"last_5m"` | no | +| [environment](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no | +| [fetch\_change\_enabled](#input\_fetch\_change\_enabled) | Flag to enable Cluster Status monitor | `string` | `"true"` | no | +| [fetch\_change\_extra\_tags](#input\_fetch\_change\_extra\_tags) | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | +| [fetch\_change\_message](#input\_fetch\_change\_message) | Custom message for the Cluster Status monitor | `string` | `""` | no | +| [fetch\_change\_threshold\_critical](#input\_fetch\_change\_threshold\_critical) | Cluster Status critical threshold | `string` | `100` | no | +| [fetch\_change\_threshold\_warning](#input\_fetch\_change\_threshold\_warning) | Cluster Status warning threshold | `string` | `75` | no | +| [fetch\_change\_time\_aggregator](#input\_fetch\_change\_time\_aggregator) | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | +| [fetch\_change\_timeframe](#input\_fetch\_change\_timeframe) | Timeframe for the Cluster Status monitor | `string` | `"last_10m"` | no | +| [fetch\_change\_timeshift](#input\_fetch\_change\_timeshift) | Timeshift for the Cluster Status monitor | `string` | `"last_10m"` | no | +| [fetch\_latency\_enabled](#input\_fetch\_latency\_enabled) | Flag to enable Cluster Status monitor | `string` | `"true"` | no | +| [fetch\_latency\_extra\_tags](#input\_fetch\_latency\_extra\_tags) | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | +| [fetch\_latency\_message](#input\_fetch\_latency\_message) | Custom message for the Cluster Status monitor | `string` | `""` | no | +| [fetch\_latency\_threshold\_critical](#input\_fetch\_latency\_threshold\_critical) | Cluster Status critical threshold | `string` | `20` | no | +| [fetch\_latency\_threshold\_warning](#input\_fetch\_latency\_threshold\_warning) | Cluster Status warning threshold | `string` | `10` | no | +| [fetch\_latency\_time\_aggregator](#input\_fetch\_latency\_time\_aggregator) | Time aggregator for the Cluster Status monitor | `string` | `"min"` | no | +| [fetch\_latency\_timeframe](#input\_fetch\_latency\_timeframe) | Timeframe for the Cluster Status monitor | `string` | `"last_15m"` | no | +| [field\_data\_evictions\_change\_enabled](#input\_field\_data\_evictions\_change\_enabled) | Flag to enable Cluster Status monitor | `string` | `"true"` | no | +| [field\_data\_evictions\_change\_extra\_tags](#input\_field\_data\_evictions\_change\_extra\_tags) | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | +| [field\_data\_evictions\_change\_message](#input\_field\_data\_evictions\_change\_message) | Custom message for the Cluster Status monitor | `string` | `""` | no | +| [field\_data\_evictions\_change\_threshold\_critical](#input\_field\_data\_evictions\_change\_threshold\_critical) | Cluster Status critical threshold | `string` | `120` | no | +| [field\_data\_evictions\_change\_threshold\_warning](#input\_field\_data\_evictions\_change\_threshold\_warning) | Cluster Status warning threshold | `string` | `60` | no | +| [field\_data\_evictions\_change\_time\_aggregator](#input\_field\_data\_evictions\_change\_time\_aggregator) | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | +| [field\_data\_evictions\_change\_timeframe](#input\_field\_data\_evictions\_change\_timeframe) | Timeframe for the Cluster Status monitor | `string` | `"last_15m"` | no | +| [field\_data\_evictions\_change\_timeshift](#input\_field\_data\_evictions\_change\_timeshift) | Timeframe for the Cluster Status monitor | `string` | `"last_15m"` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [flush\_latency\_enabled](#input\_flush\_latency\_enabled) | Flag to enable Cluster Status monitor | `string` | `"true"` | no | +| [flush\_latency\_extra\_tags](#input\_flush\_latency\_extra\_tags) | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | +| [flush\_latency\_message](#input\_flush\_latency\_message) | Custom message for the Cluster Status monitor | `string` | `""` | no | +| [flush\_latency\_threshold\_critical](#input\_flush\_latency\_threshold\_critical) | Cluster Status critical threshold | `string` | `150` | no | +| [flush\_latency\_threshold\_warning](#input\_flush\_latency\_threshold\_warning) | Cluster Status warning threshold | `string` | `100` | no | +| [flush\_latency\_time\_aggregator](#input\_flush\_latency\_time\_aggregator) | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | +| [flush\_latency\_timeframe](#input\_flush\_latency\_timeframe) | Timeframe for the Cluster Status monitor | `string` | `"last_15m"` | no | +| [http\_connections\_anomaly\_alert\_window](#input\_http\_connections\_anomaly\_alert\_window) | Alert window. | `string` | `"last_15m"` | no | +| [http\_connections\_anomaly\_count\_default\_zero](#input\_http\_connections\_anomaly\_count\_default\_zero) | Count default zero. | `string` | `"true"` | no | +| [http\_connections\_anomaly\_detection\_algorithm](#input\_http\_connections\_anomaly\_detection\_algorithm) | Anomaly Detection Algorithm used | `string` | `"agile"` | no | +| [http\_connections\_anomaly\_deviations](#input\_http\_connections\_anomaly\_deviations) | Deviations to detect the anomaly | `string` | `2` | no | +| [http\_connections\_anomaly\_direction](#input\_http\_connections\_anomaly\_direction) | Direction of the anomaly. It can be both, below or above. | `string` | `"above"` | no | +| [http\_connections\_anomaly\_enabled](#input\_http\_connections\_anomaly\_enabled) | Flag to enable Cluster Status monitor | `string` | `"true"` | no | +| [http\_connections\_anomaly\_extra\_tags](#input\_http\_connections\_anomaly\_extra\_tags) | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | +| [http\_connections\_anomaly\_interval](#input\_http\_connections\_anomaly\_interval) | Interval. | `string` | `60` | no | +| [http\_connections\_anomaly\_message](#input\_http\_connections\_anomaly\_message) | Custom message for the Cluster Status monitor | `string` | `""` | no | +| [http\_connections\_anomaly\_seasonality](#input\_http\_connections\_anomaly\_seasonality) | Seasonality of the algorithm | `string` | `"hourly"` | no | +| [http\_connections\_anomaly\_threshold\_critical](#input\_http\_connections\_anomaly\_threshold\_critical) | Cluster Status critical threshold | `string` | `1` | no | +| [http\_connections\_anomaly\_threshold\_warning](#input\_http\_connections\_anomaly\_threshold\_warning) | Cluster Status warning threshold | `string` | `0.75` | no | +| [http\_connections\_anomaly\_time\_aggregator](#input\_http\_connections\_anomaly\_time\_aggregator) | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | +| [http\_connections\_anomaly\_timeframe](#input\_http\_connections\_anomaly\_timeframe) | Timeframe for the Cluster Status monitor | `string` | `"last_4h"` | no | +| [indexing\_latency\_enabled](#input\_indexing\_latency\_enabled) | Flag to enable Cluster Status monitor | `string` | `"true"` | no | +| [indexing\_latency\_extra\_tags](#input\_indexing\_latency\_extra\_tags) | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | +| [indexing\_latency\_message](#input\_indexing\_latency\_message) | Custom message for the Cluster Status monitor | `string` | `""` | no | +| [indexing\_latency\_threshold\_critical](#input\_indexing\_latency\_threshold\_critical) | Cluster Status critical threshold | `string` | `30` | no | +| [indexing\_latency\_threshold\_warning](#input\_indexing\_latency\_threshold\_warning) | Cluster Status warning threshold | `string` | `15` | no | +| [indexing\_latency\_time\_aggregator](#input\_indexing\_latency\_time\_aggregator) | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | +| [indexing\_latency\_timeframe](#input\_indexing\_latency\_timeframe) | Timeframe for the Cluster Status monitor | `string` | `"last_10m"` | no | +| [jvm\_gc\_old\_collection\_latency\_enabled](#input\_jvm\_gc\_old\_collection\_latency\_enabled) | Flag to enable Cluster Status monitor | `string` | `"true"` | no | +| [jvm\_gc\_old\_collection\_latency\_extra\_tags](#input\_jvm\_gc\_old\_collection\_latency\_extra\_tags) | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | +| [jvm\_gc\_old\_collection\_latency\_message](#input\_jvm\_gc\_old\_collection\_latency\_message) | Custom message for the Cluster Status monitor | `string` | `""` | no | +| [jvm\_gc\_old\_collection\_latency\_threshold\_critical](#input\_jvm\_gc\_old\_collection\_latency\_threshold\_critical) | Cluster Status critical threshold | `string` | `300` | no | +| [jvm\_gc\_old\_collection\_latency\_threshold\_warning](#input\_jvm\_gc\_old\_collection\_latency\_threshold\_warning) | Cluster Status warning threshold | `string` | `200` | no | +| [jvm\_gc\_old\_collection\_latency\_time\_aggregator](#input\_jvm\_gc\_old\_collection\_latency\_time\_aggregator) | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | +| [jvm\_gc\_old\_collection\_latency\_timeframe](#input\_jvm\_gc\_old\_collection\_latency\_timeframe) | Timeframe for the Cluster Status monitor | `string` | `"last_15m"` | no | +| [jvm\_gc\_young\_collection\_latency\_enabled](#input\_jvm\_gc\_young\_collection\_latency\_enabled) | Flag to enable Cluster Status monitor | `string` | `"true"` | no | +| [jvm\_gc\_young\_collection\_latency\_extra\_tags](#input\_jvm\_gc\_young\_collection\_latency\_extra\_tags) | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | +| [jvm\_gc\_young\_collection\_latency\_message](#input\_jvm\_gc\_young\_collection\_latency\_message) | Custom message for the Cluster Status monitor | `string` | `""` | no | +| [jvm\_gc\_young\_collection\_latency\_threshold\_critical](#input\_jvm\_gc\_young\_collection\_latency\_threshold\_critical) | Cluster Status critical threshold | `string` | `40` | no | +| [jvm\_gc\_young\_collection\_latency\_threshold\_warning](#input\_jvm\_gc\_young\_collection\_latency\_threshold\_warning) | Cluster Status warning threshold | `string` | `20` | no | +| [jvm\_gc\_young\_collection\_latency\_time\_aggregator](#input\_jvm\_gc\_young\_collection\_latency\_time\_aggregator) | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | +| [jvm\_gc\_young\_collection\_latency\_timeframe](#input\_jvm\_gc\_young\_collection\_latency\_timeframe) | Timeframe for the Cluster Status monitor | `string` | `"last_15m"` | no | +| [jvm\_heap\_memory\_usage\_enabled](#input\_jvm\_heap\_memory\_usage\_enabled) | Flag to enable Cluster Status monitor | `string` | `"true"` | no | +| [jvm\_heap\_memory\_usage\_extra\_tags](#input\_jvm\_heap\_memory\_usage\_extra\_tags) | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | +| [jvm\_heap\_memory\_usage\_message](#input\_jvm\_heap\_memory\_usage\_message) | Custom message for the Cluster Status monitor | `string` | `""` | no | +| [jvm\_heap\_memory\_usage\_threshold\_critical](#input\_jvm\_heap\_memory\_usage\_threshold\_critical) | Cluster Status critical threshold | `string` | `90` | no | +| [jvm\_heap\_memory\_usage\_threshold\_warning](#input\_jvm\_heap\_memory\_usage\_threshold\_warning) | Cluster Status warning threshold | `string` | `80` | no | +| [jvm\_heap\_memory\_usage\_time\_aggregator](#input\_jvm\_heap\_memory\_usage\_time\_aggregator) | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | +| [jvm\_heap\_memory\_usage\_timeframe](#input\_jvm\_heap\_memory\_usage\_timeframe) | Timeframe for the Cluster Status monitor | `string` | `"last_5m"` | no | +| [jvm\_memory\_old\_usage\_enabled](#input\_jvm\_memory\_old\_usage\_enabled) | Flag to enable Cluster Status monitor | `string` | `"true"` | no | +| [jvm\_memory\_old\_usage\_extra\_tags](#input\_jvm\_memory\_old\_usage\_extra\_tags) | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | +| [jvm\_memory\_old\_usage\_message](#input\_jvm\_memory\_old\_usage\_message) | Custom message for the Cluster Status monitor | `string` | `""` | no | +| [jvm\_memory\_old\_usage\_threshold\_critical](#input\_jvm\_memory\_old\_usage\_threshold\_critical) | Cluster Status critical threshold | `string` | `90` | no | +| [jvm\_memory\_old\_usage\_threshold\_warning](#input\_jvm\_memory\_old\_usage\_threshold\_warning) | Cluster Status warning threshold | `string` | `80` | no | +| [jvm\_memory\_old\_usage\_time\_aggregator](#input\_jvm\_memory\_old\_usage\_time\_aggregator) | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | +| [jvm\_memory\_old\_usage\_timeframe](#input\_jvm\_memory\_old\_usage\_timeframe) | Timeframe for the Cluster Status monitor | `string` | `"last_10m"` | no | +| [jvm\_memory\_young\_usage\_enabled](#input\_jvm\_memory\_young\_usage\_enabled) | Flag to enable Cluster Status monitor | `string` | `"true"` | no | +| [jvm\_memory\_young\_usage\_extra\_tags](#input\_jvm\_memory\_young\_usage\_extra\_tags) | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | +| [jvm\_memory\_young\_usage\_message](#input\_jvm\_memory\_young\_usage\_message) | Custom message for the Cluster Status monitor | `string` | `""` | no | +| [jvm\_memory\_young\_usage\_threshold\_critical](#input\_jvm\_memory\_young\_usage\_threshold\_critical) | Cluster Status critical threshold | `string` | `90` | no | +| [jvm\_memory\_young\_usage\_threshold\_warning](#input\_jvm\_memory\_young\_usage\_threshold\_warning) | Cluster Status warning threshold | `string` | `80` | no | +| [jvm\_memory\_young\_usage\_time\_aggregator](#input\_jvm\_memory\_young\_usage\_time\_aggregator) | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | +| [jvm\_memory\_young\_usage\_timeframe](#input\_jvm\_memory\_young\_usage\_timeframe) | Timeframe for the Cluster Status monitor | `string` | `"last_10m"` | no | +| [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before begin to monitor new host | `number` | `300` | no | +| [node\_free\_space\_enabled](#input\_node\_free\_space\_enabled) | Flag to enable Cluster Status monitor | `string` | `"true"` | no | +| [node\_free\_space\_extra\_tags](#input\_node\_free\_space\_extra\_tags) | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | +| [node\_free\_space\_message](#input\_node\_free\_space\_message) | Custom message for the Cluster Status monitor | `string` | `""` | no | +| [node\_free\_space\_threshold\_critical](#input\_node\_free\_space\_threshold\_critical) | Cluster Status critical threshold | `string` | `10` | no | +| [node\_free\_space\_threshold\_warning](#input\_node\_free\_space\_threshold\_warning) | Cluster Status warning threshold | `string` | `20` | no | +| [node\_free\_space\_time\_aggregator](#input\_node\_free\_space\_time\_aggregator) | Time aggregator for the Cluster Status monitor | `string` | `"sum"` | no | +| [node\_free\_space\_timeframe](#input\_node\_free\_space\_timeframe) | Timeframe for the Cluster Status monitor | `string` | `"last_5m"` | no | +| [not\_responding\_enabled](#input\_not\_responding\_enabled) | Flag to enable Elasticsearch does not respond monitor | `string` | `"true"` | no | +| [not\_responding\_extra\_tags](#input\_not\_responding\_extra\_tags) | Extra tags for Elasticsearch does not respond monitor | `list(string)` | `[]` | no | +| [not\_responding\_message](#input\_not\_responding\_message) | Custom message for Elasticsearch does not respond monitor | `string` | `""` | no | +| [not\_responding\_no\_data\_timeframe](#input\_not\_responding\_no\_data\_timeframe) | Elasticsearch not responding monitor no data timeframe | `string` | `10` | no | +| [not\_responding\_threshold\_warning](#input\_not\_responding\_threshold\_warning) | Elasticsearch not responding limit (warning threshold) | `number` | `3` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [query\_cache\_evictions\_change\_enabled](#input\_query\_cache\_evictions\_change\_enabled) | Flag to enable Cluster Status monitor | `string` | `"true"` | no | +| [query\_cache\_evictions\_change\_extra\_tags](#input\_query\_cache\_evictions\_change\_extra\_tags) | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | +| [query\_cache\_evictions\_change\_message](#input\_query\_cache\_evictions\_change\_message) | Custom message for the Cluster Status monitor | `string` | `""` | no | +| [query\_cache\_evictions\_change\_threshold\_critical](#input\_query\_cache\_evictions\_change\_threshold\_critical) | Cluster Status critical threshold | `string` | `120` | no | +| [query\_cache\_evictions\_change\_threshold\_warning](#input\_query\_cache\_evictions\_change\_threshold\_warning) | Cluster Status warning threshold | `string` | `60` | no | +| [query\_cache\_evictions\_change\_time\_aggregator](#input\_query\_cache\_evictions\_change\_time\_aggregator) | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | +| [query\_cache\_evictions\_change\_timeframe](#input\_query\_cache\_evictions\_change\_timeframe) | Timeframe for the Cluster Status monitor | `string` | `"last_15m"` | no | +| [query\_cache\_evictions\_change\_timeshift](#input\_query\_cache\_evictions\_change\_timeshift) | Timeframe for the Cluster Status monitor | `string` | `"last_15m"` | no | +| [request\_cache\_evictions\_change\_enabled](#input\_request\_cache\_evictions\_change\_enabled) | Flag to enable Cluster Status monitor | `string` | `"true"` | no | +| [request\_cache\_evictions\_change\_extra\_tags](#input\_request\_cache\_evictions\_change\_extra\_tags) | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | +| [request\_cache\_evictions\_change\_message](#input\_request\_cache\_evictions\_change\_message) | Custom message for the Cluster Status monitor | `string` | `""` | no | +| [request\_cache\_evictions\_change\_threshold\_critical](#input\_request\_cache\_evictions\_change\_threshold\_critical) | Cluster Status critical threshold | `string` | `120` | no | +| [request\_cache\_evictions\_change\_threshold\_warning](#input\_request\_cache\_evictions\_change\_threshold\_warning) | Cluster Status warning threshold | `string` | `60` | no | +| [request\_cache\_evictions\_change\_time\_aggregator](#input\_request\_cache\_evictions\_change\_time\_aggregator) | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | +| [request\_cache\_evictions\_change\_timeframe](#input\_request\_cache\_evictions\_change\_timeframe) | Timeframe for the Cluster Status monitor | `string` | `"last_15m"` | no | +| [request\_cache\_evictions\_change\_timeshift](#input\_request\_cache\_evictions\_change\_timeshift) | Timeshift for the Cluster Status monitor | `string` | `"last_15m"` | no | +| [search\_query\_change\_enabled](#input\_search\_query\_change\_enabled) | Flag to enable Cluster Status monitor | `string` | `"true"` | no | +| [search\_query\_change\_extra\_tags](#input\_search\_query\_change\_extra\_tags) | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | +| [search\_query\_change\_message](#input\_search\_query\_change\_message) | Custom message for the Cluster Status monitor | `string` | `""` | no | +| [search\_query\_change\_threshold\_critical](#input\_search\_query\_change\_threshold\_critical) | Cluster Status critical threshold | `string` | `100` | no | +| [search\_query\_change\_threshold\_warning](#input\_search\_query\_change\_threshold\_warning) | Cluster Status warning threshold | `string` | `75` | no | +| [search\_query\_change\_time\_aggregator](#input\_search\_query\_change\_time\_aggregator) | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | +| [search\_query\_change\_timeframe](#input\_search\_query\_change\_timeframe) | Timeframe for the Cluster Status monitor | `string` | `"last_10m"` | no | +| [search\_query\_change\_timeshift](#input\_search\_query\_change\_timeshift) | Timeshift for the Cluster Status monitor | `string` | `"last_10m"` | no | +| [search\_query\_latency\_enabled](#input\_search\_query\_latency\_enabled) | Flag to enable Cluster Status monitor | `string` | `"true"` | no | +| [search\_query\_latency\_extra\_tags](#input\_search\_query\_latency\_extra\_tags) | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | +| [search\_query\_latency\_message](#input\_search\_query\_latency\_message) | Custom message for the Cluster Status monitor | `string` | `""` | no | +| [search\_query\_latency\_threshold\_critical](#input\_search\_query\_latency\_threshold\_critical) | Cluster Status critical threshold | `string` | `20` | no | +| [search\_query\_latency\_threshold\_warning](#input\_search\_query\_latency\_threshold\_warning) | Cluster Status warning threshold | `string` | `10` | no | +| [search\_query\_latency\_time\_aggregator](#input\_search\_query\_latency\_time\_aggregator) | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | +| [search\_query\_latency\_timeframe](#input\_search\_query\_latency\_timeframe) | Timeframe for the Cluster Status monitor | `string` | `"last_15m"` | no | +| [task\_time\_in\_queue\_change\_enabled](#input\_task\_time\_in\_queue\_change\_enabled) | Flag to enable Cluster Status monitor | `string` | `"true"` | no | +| [task\_time\_in\_queue\_change\_extra\_tags](#input\_task\_time\_in\_queue\_change\_extra\_tags) | Extra tags for Cluster Status monitor | `list(string)` | `[]` | no | +| [task\_time\_in\_queue\_change\_message](#input\_task\_time\_in\_queue\_change\_message) | Custom message for the Cluster Status monitor | `string` | `""` | no | +| [task\_time\_in\_queue\_change\_threshold\_critical](#input\_task\_time\_in\_queue\_change\_threshold\_critical) | Cluster Status critical threshold | `string` | `200` | no | +| [task\_time\_in\_queue\_change\_threshold\_warning](#input\_task\_time\_in\_queue\_change\_threshold\_warning) | Cluster Status warning threshold | `string` | `100` | no | +| [task\_time\_in\_queue\_change\_time\_aggregator](#input\_task\_time\_in\_queue\_change\_time\_aggregator) | Time aggregator for the Cluster Status monitor | `string` | `"avg"` | no | +| [task\_time\_in\_queue\_change\_timeframe](#input\_task\_time\_in\_queue\_change\_timeframe) | Timeframe for the Cluster Status monitor | `string` | `"last_10m"` | no | +| [task\_time\_in\_queue\_change\_timeshift](#input\_task\_time\_in\_queue\_change\_timeshift) | Timeshift for the Cluster Status monitor | `string` | `"last_10m"` | no | ## Outputs | Name | Description | |------|-------------| -| cluster\_initializing\_shards\_id | id for monitor cluster\_initializing\_shards | -| cluster\_relocating\_shards\_id | id for monitor cluster\_relocating\_shards | -| cluster\_status\_not\_green\_id | id for monitor cluster\_status\_not\_green | -| cluster\_unassigned\_shards\_id | id for monitor cluster\_unassigned\_shards | -| fetch\_change\_id | id for monitor fetch\_change | -| fetch\_latency\_id | id for monitor fetch\_latency | -| field\_data\_evictions\_change\_id | id for monitor field\_data\_evictions\_change | -| flush\_latency\_id | id for monitor flush\_latency | -| http\_connections\_anomaly\_id | id for monitor http\_connections\_anomaly | -| indexing\_latency\_id | id for monitor indexing\_latency | -| jvm\_gc\_old\_collection\_latency\_id | id for monitor jvm\_gc\_old\_collection\_latency | -| jvm\_gc\_young\_collection\_latency\_id | id for monitor jvm\_gc\_young\_collection\_latency | -| jvm\_heap\_memory\_usage\_id | id for monitor jvm\_heap\_memory\_usage | -| jvm\_memory\_old\_usage\_id | id for monitor jvm\_memory\_old\_usage | -| jvm\_memory\_young\_usage\_id | id for monitor jvm\_memory\_young\_usage | -| node\_free\_space\_id | id for monitor node\_free\_space | -| not\_responding\_id | id for monitor not\_responding | -| query\_cache\_evictions\_change\_id | id for monitor query\_cache\_evictions\_change | -| request\_cache\_evictions\_change\_id | id for monitor request\_cache\_evictions\_change | -| search\_query\_change\_id | id for monitor search\_query\_change | -| search\_query\_latency\_id | id for monitor search\_query\_latency | -| task\_time\_in\_queue\_change\_id | id for monitor task\_time\_in\_queue\_change | - +| [cluster\_initializing\_shards\_id](#output\_cluster\_initializing\_shards\_id) | id for monitor cluster\_initializing\_shards | +| [cluster\_relocating\_shards\_id](#output\_cluster\_relocating\_shards\_id) | id for monitor cluster\_relocating\_shards | +| [cluster\_status\_not\_green\_id](#output\_cluster\_status\_not\_green\_id) | id for monitor cluster\_status\_not\_green | +| [cluster\_unassigned\_shards\_id](#output\_cluster\_unassigned\_shards\_id) | id for monitor cluster\_unassigned\_shards | +| [fetch\_change\_id](#output\_fetch\_change\_id) | id for monitor fetch\_change | +| [fetch\_latency\_id](#output\_fetch\_latency\_id) | id for monitor fetch\_latency | +| [field\_data\_evictions\_change\_id](#output\_field\_data\_evictions\_change\_id) | id for monitor field\_data\_evictions\_change | +| [flush\_latency\_id](#output\_flush\_latency\_id) | id for monitor flush\_latency | +| [http\_connections\_anomaly\_id](#output\_http\_connections\_anomaly\_id) | id for monitor http\_connections\_anomaly | +| [indexing\_latency\_id](#output\_indexing\_latency\_id) | id for monitor indexing\_latency | +| [jvm\_gc\_old\_collection\_latency\_id](#output\_jvm\_gc\_old\_collection\_latency\_id) | id for monitor jvm\_gc\_old\_collection\_latency | +| [jvm\_gc\_young\_collection\_latency\_id](#output\_jvm\_gc\_young\_collection\_latency\_id) | id for monitor jvm\_gc\_young\_collection\_latency | +| [jvm\_heap\_memory\_usage\_id](#output\_jvm\_heap\_memory\_usage\_id) | id for monitor jvm\_heap\_memory\_usage | +| [jvm\_memory\_old\_usage\_id](#output\_jvm\_memory\_old\_usage\_id) | id for monitor jvm\_memory\_old\_usage | +| [jvm\_memory\_young\_usage\_id](#output\_jvm\_memory\_young\_usage\_id) | id for monitor jvm\_memory\_young\_usage | +| [node\_free\_space\_id](#output\_node\_free\_space\_id) | id for monitor node\_free\_space | +| [not\_responding\_id](#output\_not\_responding\_id) | id for monitor not\_responding | +| [query\_cache\_evictions\_change\_id](#output\_query\_cache\_evictions\_change\_id) | id for monitor query\_cache\_evictions\_change | +| [request\_cache\_evictions\_change\_id](#output\_request\_cache\_evictions\_change\_id) | id for monitor request\_cache\_evictions\_change | +| [search\_query\_change\_id](#output\_search\_query\_change\_id) | id for monitor search\_query\_change | +| [search\_query\_latency\_id](#output\_search\_query\_latency\_id) | id for monitor search\_query\_latency | +| [task\_time\_in\_queue\_change\_id](#output\_task\_time\_in\_queue\_change\_id) | id for monitor task\_time\_in\_queue\_change | ## Related documentation * [Integration Datadog & ElasticSearch](https://docs.datadoghq.com/integrations/elastic/) * [How to monitor ElasticSearch with Datadog](https://www.datadoghq.com/blog/monitor-elasticsearch-datadog/) diff --git a/database/elasticsearch/versions.tf b/database/elasticsearch/versions.tf index 1c28e79..a5c6a87 100644 --- a/database/elasticsearch/versions.tf +++ b/database/elasticsearch/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/database/mongodb/README.md b/database/mongodb/README.md index 6c4c39b..20ea1ee 100644 --- a/database/mongodb/README.md +++ b/database/mongodb/README.md @@ -26,54 +26,76 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [filter-tags](#module\_filter-tags) | ../../common/filter-tags | n/a | +| [filter-tags-secondary](#module\_filter-tags-secondary) | ../../common/filter-tags | n/a | + +## Resources + +| Name | Type | +|------|------| +| [datadog_monitor.mongodb_primary](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.mongodb_replication](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.mongodb_secondary](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.mongodb_server_count](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| environment | Architecture Environment | `string` | n/a | yes | -| 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 | -| 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 | -| message | Message sent when an alert is triggered | `any` | n/a | yes | -| mongodb\_desired\_servers\_count | Number of servers that should be instanciated for this cluster | `number` | `3` | no | -| mongodb\_lag\_critical | Critical replication lag in s | `number` | `5` | no | -| mongodb\_lag\_warning | Warn replication lag in s | `number` | `2` | no | -| mongodb\_primary\_aggregator | Monitor aggregator for MongoDB primary state [available values: min, max] | `string` | `"max"` | no | -| mongodb\_primary\_enabled | Flag to enable MongoDB primary state monitor | `string` | `"true"` | no | -| mongodb\_primary\_extra\_tags | Extra tags for MongoDB primary state monitor | `list(string)` | `[]` | no | -| mongodb\_primary\_message | Custom message for MongoDB primary monitor | `string` | `""` | no | -| mongodb\_primary\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | -| mongodb\_primary\_timeframe | Monitor timeframe for MongoDB wrong state for primary node [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_1m"` | no | -| mongodb\_replication\_aggregator | Monitor aggregator for MongoDB replication lag [available values: min, max, sum or avg] | `string` | `"avg"` | no | -| mongodb\_replication\_enabled | Flag to enable MongoDB replication lag monitor | `string` | `"true"` | no | -| mongodb\_replication\_extra\_tags | Extra tags for MongoDB replication lag monitor | `list(string)` | `[]` | no | -| mongodb\_replication\_message | Custom message for MongoDB replication monitor | `string` | `""` | no | -| mongodb\_replication\_timeframe | Monitor timeframe for MongoDB replication lag [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_1m"` | no | -| mongodb\_secondary\_aggregator | Monitor aggregator for MongoDB secondary state [available values: min, max] | `string` | `"max"` | no | -| mongodb\_secondary\_enabled | Flag to enable MongoDB secondary state monitor | `string` | `"true"` | no | -| mongodb\_secondary\_extra\_tags | Extra tags for MongoDB secondary state monitor | `list(string)` | `[]` | no | -| mongodb\_secondary\_message | Custom message for MongoDB secondary monitor | `string` | `""` | no | -| mongodb\_secondary\_timeframe | Monitor timeframe for MongoDB wrong state for secondaries nodes [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | -| mongodb\_server\_count\_aggregator | Monitor aggregator for MongoDB server count [available values: min, max] | `string` | `"min"` | no | -| mongodb\_server\_count\_enabled | Flag to enable MongoDB server count monitor | `string` | `"true"` | no | -| mongodb\_server\_count\_message | Custom message for MongoDB server count | `string` | `""` | no | -| mongodb\_server\_count\_timeframe | Monitor timeframe for MongoDB wrong server count [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | -| 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 | -| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [environment](#input\_environment) | Architecture Environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [mongodb\_desired\_servers\_count](#input\_mongodb\_desired\_servers\_count) | Number of servers that should be instanciated for this cluster | `number` | `3` | no | +| [mongodb\_lag\_critical](#input\_mongodb\_lag\_critical) | Critical replication lag in s | `number` | `5` | no | +| [mongodb\_lag\_warning](#input\_mongodb\_lag\_warning) | Warn replication lag in s | `number` | `2` | no | +| [mongodb\_primary\_aggregator](#input\_mongodb\_primary\_aggregator) | Monitor aggregator for MongoDB primary state [available values: min, max] | `string` | `"max"` | no | +| [mongodb\_primary\_enabled](#input\_mongodb\_primary\_enabled) | Flag to enable MongoDB primary state monitor | `string` | `"true"` | no | +| [mongodb\_primary\_extra\_tags](#input\_mongodb\_primary\_extra\_tags) | Extra tags for MongoDB primary state monitor | `list(string)` | `[]` | no | +| [mongodb\_primary\_message](#input\_mongodb\_primary\_message) | Custom message for MongoDB primary monitor | `string` | `""` | no | +| [mongodb\_primary\_no\_data\_timeframe](#input\_mongodb\_primary\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no | +| [mongodb\_primary\_timeframe](#input\_mongodb\_primary\_timeframe) | Monitor timeframe for MongoDB wrong state for primary node [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_1m"` | no | +| [mongodb\_replication\_aggregator](#input\_mongodb\_replication\_aggregator) | Monitor aggregator for MongoDB replication lag [available values: min, max, sum or avg] | `string` | `"avg"` | no | +| [mongodb\_replication\_enabled](#input\_mongodb\_replication\_enabled) | Flag to enable MongoDB replication lag monitor | `string` | `"true"` | no | +| [mongodb\_replication\_extra\_tags](#input\_mongodb\_replication\_extra\_tags) | Extra tags for MongoDB replication lag monitor | `list(string)` | `[]` | no | +| [mongodb\_replication\_message](#input\_mongodb\_replication\_message) | Custom message for MongoDB replication monitor | `string` | `""` | no | +| [mongodb\_replication\_timeframe](#input\_mongodb\_replication\_timeframe) | Monitor timeframe for MongoDB replication lag [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_1m"` | no | +| [mongodb\_secondary\_aggregator](#input\_mongodb\_secondary\_aggregator) | Monitor aggregator for MongoDB secondary state [available values: min, max] | `string` | `"max"` | no | +| [mongodb\_secondary\_enabled](#input\_mongodb\_secondary\_enabled) | Flag to enable MongoDB secondary state monitor | `string` | `"true"` | no | +| [mongodb\_secondary\_extra\_tags](#input\_mongodb\_secondary\_extra\_tags) | Extra tags for MongoDB secondary state monitor | `list(string)` | `[]` | no | +| [mongodb\_secondary\_message](#input\_mongodb\_secondary\_message) | Custom message for MongoDB secondary monitor | `string` | `""` | no | +| [mongodb\_secondary\_timeframe](#input\_mongodb\_secondary\_timeframe) | Monitor timeframe for MongoDB wrong state for secondaries nodes [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | +| [mongodb\_server\_count\_aggregator](#input\_mongodb\_server\_count\_aggregator) | Monitor aggregator for MongoDB server count [available values: min, max] | `string` | `"min"` | no | +| [mongodb\_server\_count\_enabled](#input\_mongodb\_server\_count\_enabled) | Flag to enable MongoDB server count monitor | `string` | `"true"` | no | +| [mongodb\_server\_count\_message](#input\_mongodb\_server\_count\_message) | Custom message for MongoDB server count | `string` | `""` | no | +| [mongodb\_server\_count\_timeframe](#input\_mongodb\_server\_count\_timeframe) | Monitor timeframe for MongoDB wrong server count [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | ## Outputs | Name | Description | |------|-------------| -| mongodb\_primary\_id | id for monitor mongodb\_primary | -| mongodb\_replication\_id | id for monitor mongodb\_replication | -| mongodb\_secondary\_id | id for monitor mongodb\_secondary | -| mongodb\_server\_count\_id | id for monitor mongodb\_server\_count | - +| [mongodb\_primary\_id](#output\_mongodb\_primary\_id) | id for monitor mongodb\_primary | +| [mongodb\_replication\_id](#output\_mongodb\_replication\_id) | id for monitor mongodb\_replication | +| [mongodb\_secondary\_id](#output\_mongodb\_secondary\_id) | id for monitor mongodb\_secondary | +| [mongodb\_server\_count\_id](#output\_mongodb\_server\_count\_id) | id for monitor mongodb\_server\_count | ## Related documentation DataDog documentation: [https://docs.datadoghq.com/integrations/mongo/](https://docs.datadoghq.com/integrations/mongo/) diff --git a/database/mongodb/versions.tf b/database/mongodb/versions.tf index 1c28e79..a5c6a87 100644 --- a/database/mongodb/versions.tf +++ b/database/mongodb/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/database/mysql/README.md b/database/mysql/README.md index 1500eb4..be7c9c8 100644 --- a/database/mysql/README.md +++ b/database/mysql/README.md @@ -32,115 +32,142 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [filter-tags](#module\_filter-tags) | ../../common/filter-tags | n/a | + +## Resources + +| Name | Type | +|------|------| +| [datadog_monitor.mysql_aborted](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.mysql_availability](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.mysql_connection](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.mysql_pool_efficiency](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.mysql_pool_utilization](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.mysql_questions_anomaly](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.mysql_replication_lag](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.mysql_replication_status](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.mysql_slow](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.mysql_threads_anomaly](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| environment | Environment | `string` | n/a | yes | -| 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 | -| 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 | -| message | Message sent when an alert is triggered | `any` | n/a | yes | -| mysql\_aborted\_enabled | Flag to enable MySQL aborted connects monitor | `string` | `"true"` | no | -| mysql\_aborted\_extra\_tags | Extra tags for MySQL aborted connects monitor | `list(string)` | `[]` | no | -| mysql\_aborted\_message | Custom message for MySQL aborted connects monitor | `string` | `""` | no | -| mysql\_aborted\_threshold\_critical | Maximum critical acceptable percent of aborted connects | `number` | `10` | no | -| mysql\_aborted\_threshold\_warning | Maximum warning acceptable percent of aborted connects | `number` | `5` | no | -| mysql\_aborted\_time\_aggregator | Monitor time aggregator for MySQL aborted connects monitor [available values: min, max or avg] | `string` | `"avg"` | no | -| mysql\_aborted\_timeframe | Monitor timeframe for MySQL aborted connects monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_10m"` | no | -| mysql\_availability\_enabled | Flag to enable Mysql availability monitor | `string` | `"true"` | no | -| mysql\_availability\_extra\_tags | Extra tags for Mysql availability monitor | `list(string)` | `[]` | no | -| mysql\_availability\_message | Custom message for Mysql availability monitor | `string` | `""` | no | -| mysql\_availability\_no\_data\_timeframe | Mysql availability monitor no data timeframe | `string` | `10` | no | -| mysql\_availability\_threshold\_warning | Mysql availability monitor (warning threshold) | `string` | `3` | no | -| mysql\_connection\_enabled | Flag to enable MySQL connection monitor | `string` | `"true"` | no | -| mysql\_connection\_extra\_tags | Extra tags for MySQL connection monitor | `list(string)` | `[]` | no | -| mysql\_connection\_message | Custom message for MySQL connection monitor | `string` | `""` | no | -| mysql\_connection\_threshold\_critical | Maximum critical acceptable percent of connections | `number` | `80` | no | -| mysql\_connection\_threshold\_warning | Maximum warning acceptable percent of connections | `number` | `70` | no | -| mysql\_connection\_time\_aggregator | Monitor time aggregator for MySQL connection monitor [available values: min, max or avg] | `string` | `"avg"` | no | -| mysql\_connection\_timeframe | Monitor timeframe for MySQL connection monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_10m"` | no | -| mysql\_pool\_efficiency\_enabled | Flag to enable MySQL innodb buffer pool efficiency monitor | `string` | `"true"` | no | -| mysql\_pool\_efficiency\_extra\_tags | Extra tags for MySQL innodb buffer pool efficiency monitor | `list(string)` | `[]` | no | -| mysql\_pool\_efficiency\_message | Custom message for MySQL innodb buffer pool efficiency monitor | `string` | `""` | no | -| mysql\_pool\_efficiency\_threshold\_critical | Maximum critical acceptable percent of innodb buffer pool efficiency | `number` | `30` | no | -| mysql\_pool\_efficiency\_threshold\_warning | Maximum warning acceptable percent of innodb buffer pool efficiency | `number` | `20` | no | -| mysql\_pool\_efficiency\_time\_aggregator | Monitor time aggregator for MySQL innodb buffer pool efficiency monitor [available values: min, max or avg] | `string` | `"min"` | no | -| mysql\_pool\_efficiency\_timeframe | Monitor timeframe for MySQL innodb buffer pool efficiency monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_1h"` | no | -| mysql\_pool\_utilization\_enabled | Flag to enable MySQL innodb buffer pool utilization monitor | `string` | `"true"` | no | -| mysql\_pool\_utilization\_extra\_tags | Extra tags for MySQL innodb buffer pool utilization monitor | `list(string)` | `[]` | no | -| mysql\_pool\_utilization\_message | Custom message for MySQL innodb buffer pool utilization monitor | `string` | `""` | no | -| mysql\_pool\_utilization\_threshold\_critical | Maximum critical acceptable percent of innodb buffer pool utilization | `number` | `95` | no | -| mysql\_pool\_utilization\_threshold\_warning | Maximum warning acceptable percent of innodb buffer pool utilization | `number` | `80` | no | -| mysql\_pool\_utilization\_time\_aggregator | Monitor time aggregator for MySQL innodb buffer pool utilization monitor [available values: min, max or avg] | `string` | `"min"` | no | -| mysql\_pool\_utilization\_timeframe | Monitor timeframe for MySQL innodb buffer pool utilization monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_1h"` | no | -| mysql\_questions\_alert\_window | Alert window. | `string` | `"last_15m"` | no | -| mysql\_questions\_count\_default\_zero | Count default zero. | `string` | `"true"` | no | -| mysql\_questions\_detection\_algorithm | Anomaly Detection Algorithm used | `string` | `"agile"` | no | -| mysql\_questions\_deviations | Deviations to detect the anomaly | `string` | `5` | no | -| mysql\_questions\_direction | Direction of the anomaly. It can be both, below or above. | `string` | `"both"` | no | -| mysql\_questions\_enabled | Flag to enable mysql queries monitor | `string` | `"true"` | no | -| mysql\_questions\_extra\_tags | Extra tags for MySQL queries monitor | `list(string)` | `[]` | no | -| mysql\_questions\_interval | Interval. | `string` | `60` | no | -| mysql\_questions\_message | Custom message for MySQL queries monitor | `string` | `""` | no | -| mysql\_questions\_seasonality | Seasonality of the algorithm | `string` | `"daily"` | no | -| mysql\_questions\_threshold\_critical | Maximum critical acceptable number of queries | `number` | `1` | no | -| mysql\_questions\_time\_aggregator | Monitor time aggregator for MySQL queries monitor [available values: min, max or avg] | `string` | `"avg"` | no | -| mysql\_questions\_timeframe | Monitor timeframe for MySQL queries monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_4h"` | no | -| mysql\_replication\_lag\_enabled | Flag to enable mysql replication lag monitor | `string` | `"false"` | no | -| mysql\_replication\_lag\_extra\_tags | Extra tags for MySQL replication lag monitor | `list(string)` | `[]` | no | -| mysql\_replication\_lag\_message | Custom message for MySQL replication lag monitor | `string` | `""` | no | -| mysql\_replication\_lag\_threshold\_critical | Maximum critical acceptable seconds of replication lag | `number` | `200` | no | -| mysql\_replication\_lag\_threshold\_warning | Maximum warning acceptable seconds of replication lag | `number` | `100` | no | -| mysql\_replication\_lag\_time\_aggregator | Monitor time aggregator for MySQL replication lag monitor [available values: min, max or avg] | `string` | `"min"` | no | -| mysql\_replication\_lag\_timeframe | Monitor timeframe for MySQL replication lag monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | -| mysql\_replication\_status\_enabled | Flag to enable mysql replication status monitor | `string` | `"false"` | no | -| mysql\_replication\_status\_extra\_tags | Extra tags for MySQL replication status monitor | `list(string)` | `[]` | no | -| mysql\_replication\_status\_message | Custom message for MySQL replication status monitor | `string` | `""` | no | -| mysql\_replication\_status\_time\_aggregator | Monitor time aggregator for MySQL replication status monitor [available values: min, max or avg] | `string` | `"min"` | no | -| mysql\_replication\_status\_timeframe | Monitor timeframe for MySQL replication status monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | -| mysql\_slow\_enabled | Flag to enable MySQL slow queries monitor | `string` | `"true"` | no | -| mysql\_slow\_extra\_tags | Extra tags for MySQL slow queries monitor | `list(string)` | `[]` | no | -| mysql\_slow\_message | Custom message for MySQL slow queries monitor | `string` | `""` | no | -| mysql\_slow\_threshold\_critical | Maximum critical acceptable percent of slow queries | `number` | `20` | no | -| mysql\_slow\_threshold\_warning | Maximum warning acceptable percent of slow queries | `number` | `5` | no | -| mysql\_slow\_time\_aggregator | Monitor time aggregator for MySQL slow queries monitor [available values: min, max or avg] | `string` | `"avg"` | no | -| mysql\_slow\_timeframe | Monitor timeframe for MySQL slow queries monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | -| mysql\_threads\_alert\_window | Alert window. | `string` | `"last_15m"` | no | -| mysql\_threads\_count\_default\_zero | Count default zero. | `string` | `"true"` | no | -| mysql\_threads\_detection\_algorithm | Anomaly Detection Algorithm used | `string` | `"basic"` | no | -| mysql\_threads\_deviations | Deviations to detect the anomaly | `string` | `2` | no | -| mysql\_threads\_direction | Direction of the anomaly. It can be both, below or above. | `string` | `"above"` | no | -| mysql\_threads\_enabled | Flag to enable mysql threads monitor | `string` | `"true"` | no | -| mysql\_threads\_extra\_tags | Extra tags for MySQL threads monitor | `list(string)` | `[]` | no | -| mysql\_threads\_interval | Interval. | `string` | `60` | no | -| mysql\_threads\_message | Custom message for MySQL threads monitor | `string` | `""` | no | -| mysql\_threads\_seasonality | Seasonality of the algorithm | `string` | `"daily"` | no | -| mysql\_threads\_threshold\_critical | Maximum critical acceptable number of threads | `number` | `1` | no | -| mysql\_threads\_time\_aggregator | Monitor time aggregator for MySQL threads monitor [available values: min, max or avg] | `string` | `"avg"` | no | -| mysql\_threads\_timeframe | Monitor timeframe for MySQL threads monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_4h"` | no | -| new\_host\_delay | Delay in seconds for the metric evaluation | `number` | `300` | no | -| 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 | +| [environment](#input\_environment) | Environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [mysql\_aborted\_enabled](#input\_mysql\_aborted\_enabled) | Flag to enable MySQL aborted connects monitor | `string` | `"true"` | no | +| [mysql\_aborted\_extra\_tags](#input\_mysql\_aborted\_extra\_tags) | Extra tags for MySQL aborted connects monitor | `list(string)` | `[]` | no | +| [mysql\_aborted\_message](#input\_mysql\_aborted\_message) | Custom message for MySQL aborted connects monitor | `string` | `""` | no | +| [mysql\_aborted\_threshold\_critical](#input\_mysql\_aborted\_threshold\_critical) | Maximum critical acceptable percent of aborted connects | `number` | `10` | no | +| [mysql\_aborted\_threshold\_warning](#input\_mysql\_aborted\_threshold\_warning) | Maximum warning acceptable percent of aborted connects | `number` | `5` | no | +| [mysql\_aborted\_time\_aggregator](#input\_mysql\_aborted\_time\_aggregator) | Monitor time aggregator for MySQL aborted connects monitor [available values: min, max or avg] | `string` | `"avg"` | no | +| [mysql\_aborted\_timeframe](#input\_mysql\_aborted\_timeframe) | Monitor timeframe for MySQL aborted connects monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_10m"` | no | +| [mysql\_availability\_enabled](#input\_mysql\_availability\_enabled) | Flag to enable Mysql availability monitor | `string` | `"true"` | no | +| [mysql\_availability\_extra\_tags](#input\_mysql\_availability\_extra\_tags) | Extra tags for Mysql availability monitor | `list(string)` | `[]` | no | +| [mysql\_availability\_message](#input\_mysql\_availability\_message) | Custom message for Mysql availability monitor | `string` | `""` | no | +| [mysql\_availability\_no\_data\_timeframe](#input\_mysql\_availability\_no\_data\_timeframe) | Mysql availability monitor no data timeframe | `string` | `10` | no | +| [mysql\_availability\_threshold\_warning](#input\_mysql\_availability\_threshold\_warning) | Mysql availability monitor (warning threshold) | `string` | `3` | no | +| [mysql\_connection\_enabled](#input\_mysql\_connection\_enabled) | Flag to enable MySQL connection monitor | `string` | `"true"` | no | +| [mysql\_connection\_extra\_tags](#input\_mysql\_connection\_extra\_tags) | Extra tags for MySQL connection monitor | `list(string)` | `[]` | no | +| [mysql\_connection\_message](#input\_mysql\_connection\_message) | Custom message for MySQL connection monitor | `string` | `""` | no | +| [mysql\_connection\_threshold\_critical](#input\_mysql\_connection\_threshold\_critical) | Maximum critical acceptable percent of connections | `number` | `80` | no | +| [mysql\_connection\_threshold\_warning](#input\_mysql\_connection\_threshold\_warning) | Maximum warning acceptable percent of connections | `number` | `70` | no | +| [mysql\_connection\_time\_aggregator](#input\_mysql\_connection\_time\_aggregator) | Monitor time aggregator for MySQL connection monitor [available values: min, max or avg] | `string` | `"avg"` | no | +| [mysql\_connection\_timeframe](#input\_mysql\_connection\_timeframe) | Monitor timeframe for MySQL connection monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_10m"` | no | +| [mysql\_pool\_efficiency\_enabled](#input\_mysql\_pool\_efficiency\_enabled) | Flag to enable MySQL innodb buffer pool efficiency monitor | `string` | `"true"` | no | +| [mysql\_pool\_efficiency\_extra\_tags](#input\_mysql\_pool\_efficiency\_extra\_tags) | Extra tags for MySQL innodb buffer pool efficiency monitor | `list(string)` | `[]` | no | +| [mysql\_pool\_efficiency\_message](#input\_mysql\_pool\_efficiency\_message) | Custom message for MySQL innodb buffer pool efficiency monitor | `string` | `""` | no | +| [mysql\_pool\_efficiency\_threshold\_critical](#input\_mysql\_pool\_efficiency\_threshold\_critical) | Maximum critical acceptable percent of innodb buffer pool efficiency | `number` | `30` | no | +| [mysql\_pool\_efficiency\_threshold\_warning](#input\_mysql\_pool\_efficiency\_threshold\_warning) | Maximum warning acceptable percent of innodb buffer pool efficiency | `number` | `20` | no | +| [mysql\_pool\_efficiency\_time\_aggregator](#input\_mysql\_pool\_efficiency\_time\_aggregator) | Monitor time aggregator for MySQL innodb buffer pool efficiency monitor [available values: min, max or avg] | `string` | `"min"` | no | +| [mysql\_pool\_efficiency\_timeframe](#input\_mysql\_pool\_efficiency\_timeframe) | Monitor timeframe for MySQL innodb buffer pool efficiency monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_1h"` | no | +| [mysql\_pool\_utilization\_enabled](#input\_mysql\_pool\_utilization\_enabled) | Flag to enable MySQL innodb buffer pool utilization monitor | `string` | `"true"` | no | +| [mysql\_pool\_utilization\_extra\_tags](#input\_mysql\_pool\_utilization\_extra\_tags) | Extra tags for MySQL innodb buffer pool utilization monitor | `list(string)` | `[]` | no | +| [mysql\_pool\_utilization\_message](#input\_mysql\_pool\_utilization\_message) | Custom message for MySQL innodb buffer pool utilization monitor | `string` | `""` | no | +| [mysql\_pool\_utilization\_threshold\_critical](#input\_mysql\_pool\_utilization\_threshold\_critical) | Maximum critical acceptable percent of innodb buffer pool utilization | `number` | `95` | no | +| [mysql\_pool\_utilization\_threshold\_warning](#input\_mysql\_pool\_utilization\_threshold\_warning) | Maximum warning acceptable percent of innodb buffer pool utilization | `number` | `80` | no | +| [mysql\_pool\_utilization\_time\_aggregator](#input\_mysql\_pool\_utilization\_time\_aggregator) | Monitor time aggregator for MySQL innodb buffer pool utilization monitor [available values: min, max or avg] | `string` | `"min"` | no | +| [mysql\_pool\_utilization\_timeframe](#input\_mysql\_pool\_utilization\_timeframe) | Monitor timeframe for MySQL innodb buffer pool utilization monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_1h"` | no | +| [mysql\_questions\_alert\_window](#input\_mysql\_questions\_alert\_window) | Alert window. | `string` | `"last_15m"` | no | +| [mysql\_questions\_count\_default\_zero](#input\_mysql\_questions\_count\_default\_zero) | Count default zero. | `string` | `"true"` | no | +| [mysql\_questions\_detection\_algorithm](#input\_mysql\_questions\_detection\_algorithm) | Anomaly Detection Algorithm used | `string` | `"agile"` | no | +| [mysql\_questions\_deviations](#input\_mysql\_questions\_deviations) | Deviations to detect the anomaly | `string` | `5` | no | +| [mysql\_questions\_direction](#input\_mysql\_questions\_direction) | Direction of the anomaly. It can be both, below or above. | `string` | `"both"` | no | +| [mysql\_questions\_enabled](#input\_mysql\_questions\_enabled) | Flag to enable mysql queries monitor | `string` | `"true"` | no | +| [mysql\_questions\_extra\_tags](#input\_mysql\_questions\_extra\_tags) | Extra tags for MySQL queries monitor | `list(string)` | `[]` | no | +| [mysql\_questions\_interval](#input\_mysql\_questions\_interval) | Interval. | `string` | `60` | no | +| [mysql\_questions\_message](#input\_mysql\_questions\_message) | Custom message for MySQL queries monitor | `string` | `""` | no | +| [mysql\_questions\_seasonality](#input\_mysql\_questions\_seasonality) | Seasonality of the algorithm | `string` | `"daily"` | no | +| [mysql\_questions\_threshold\_critical](#input\_mysql\_questions\_threshold\_critical) | Maximum critical acceptable number of queries | `number` | `1` | no | +| [mysql\_questions\_time\_aggregator](#input\_mysql\_questions\_time\_aggregator) | Monitor time aggregator for MySQL queries monitor [available values: min, max or avg] | `string` | `"avg"` | no | +| [mysql\_questions\_timeframe](#input\_mysql\_questions\_timeframe) | Monitor timeframe for MySQL queries monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_4h"` | no | +| [mysql\_replication\_lag\_enabled](#input\_mysql\_replication\_lag\_enabled) | Flag to enable mysql replication lag monitor | `string` | `"false"` | no | +| [mysql\_replication\_lag\_extra\_tags](#input\_mysql\_replication\_lag\_extra\_tags) | Extra tags for MySQL replication lag monitor | `list(string)` | `[]` | no | +| [mysql\_replication\_lag\_message](#input\_mysql\_replication\_lag\_message) | Custom message for MySQL replication lag monitor | `string` | `""` | no | +| [mysql\_replication\_lag\_threshold\_critical](#input\_mysql\_replication\_lag\_threshold\_critical) | Maximum critical acceptable seconds of replication lag | `number` | `200` | no | +| [mysql\_replication\_lag\_threshold\_warning](#input\_mysql\_replication\_lag\_threshold\_warning) | Maximum warning acceptable seconds of replication lag | `number` | `100` | no | +| [mysql\_replication\_lag\_time\_aggregator](#input\_mysql\_replication\_lag\_time\_aggregator) | Monitor time aggregator for MySQL replication lag monitor [available values: min, max or avg] | `string` | `"min"` | no | +| [mysql\_replication\_lag\_timeframe](#input\_mysql\_replication\_lag\_timeframe) | Monitor timeframe for MySQL replication lag monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | +| [mysql\_replication\_status\_enabled](#input\_mysql\_replication\_status\_enabled) | Flag to enable mysql replication status monitor | `string` | `"false"` | no | +| [mysql\_replication\_status\_extra\_tags](#input\_mysql\_replication\_status\_extra\_tags) | Extra tags for MySQL replication status monitor | `list(string)` | `[]` | no | +| [mysql\_replication\_status\_message](#input\_mysql\_replication\_status\_message) | Custom message for MySQL replication status monitor | `string` | `""` | no | +| [mysql\_replication\_status\_time\_aggregator](#input\_mysql\_replication\_status\_time\_aggregator) | Monitor time aggregator for MySQL replication status monitor [available values: min, max or avg] | `string` | `"min"` | no | +| [mysql\_replication\_status\_timeframe](#input\_mysql\_replication\_status\_timeframe) | Monitor timeframe for MySQL replication status monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | +| [mysql\_slow\_enabled](#input\_mysql\_slow\_enabled) | Flag to enable MySQL slow queries monitor | `string` | `"true"` | no | +| [mysql\_slow\_extra\_tags](#input\_mysql\_slow\_extra\_tags) | Extra tags for MySQL slow queries monitor | `list(string)` | `[]` | no | +| [mysql\_slow\_message](#input\_mysql\_slow\_message) | Custom message for MySQL slow queries monitor | `string` | `""` | no | +| [mysql\_slow\_threshold\_critical](#input\_mysql\_slow\_threshold\_critical) | Maximum critical acceptable percent of slow queries | `number` | `20` | no | +| [mysql\_slow\_threshold\_warning](#input\_mysql\_slow\_threshold\_warning) | Maximum warning acceptable percent of slow queries | `number` | `5` | no | +| [mysql\_slow\_time\_aggregator](#input\_mysql\_slow\_time\_aggregator) | Monitor time aggregator for MySQL slow queries monitor [available values: min, max or avg] | `string` | `"avg"` | no | +| [mysql\_slow\_timeframe](#input\_mysql\_slow\_timeframe) | Monitor timeframe for MySQL slow queries monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | +| [mysql\_threads\_alert\_window](#input\_mysql\_threads\_alert\_window) | Alert window. | `string` | `"last_15m"` | no | +| [mysql\_threads\_count\_default\_zero](#input\_mysql\_threads\_count\_default\_zero) | Count default zero. | `string` | `"true"` | no | +| [mysql\_threads\_detection\_algorithm](#input\_mysql\_threads\_detection\_algorithm) | Anomaly Detection Algorithm used | `string` | `"basic"` | no | +| [mysql\_threads\_deviations](#input\_mysql\_threads\_deviations) | Deviations to detect the anomaly | `string` | `2` | no | +| [mysql\_threads\_direction](#input\_mysql\_threads\_direction) | Direction of the anomaly. It can be both, below or above. | `string` | `"above"` | no | +| [mysql\_threads\_enabled](#input\_mysql\_threads\_enabled) | Flag to enable mysql threads monitor | `string` | `"true"` | no | +| [mysql\_threads\_extra\_tags](#input\_mysql\_threads\_extra\_tags) | Extra tags for MySQL threads monitor | `list(string)` | `[]` | no | +| [mysql\_threads\_interval](#input\_mysql\_threads\_interval) | Interval. | `string` | `60` | no | +| [mysql\_threads\_message](#input\_mysql\_threads\_message) | Custom message for MySQL threads monitor | `string` | `""` | no | +| [mysql\_threads\_seasonality](#input\_mysql\_threads\_seasonality) | Seasonality of the algorithm | `string` | `"daily"` | no | +| [mysql\_threads\_threshold\_critical](#input\_mysql\_threads\_threshold\_critical) | Maximum critical acceptable number of threads | `number` | `1` | no | +| [mysql\_threads\_time\_aggregator](#input\_mysql\_threads\_time\_aggregator) | Monitor time aggregator for MySQL threads monitor [available values: min, max or avg] | `string` | `"avg"` | no | +| [mysql\_threads\_timeframe](#input\_mysql\_threads\_timeframe) | Monitor timeframe for MySQL threads monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_4h"` | no | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds for the metric evaluation | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | ## Outputs | Name | Description | |------|-------------| -| mysql\_aborted\_id | id for monitor mysql\_aborted | -| mysql\_availability\_id | id for monitor mysql\_availability | -| mysql\_connection\_id | id for monitor mysql\_connection | -| mysql\_pool\_efficiency\_id | id for monitor mysql\_pool\_efficiency | -| mysql\_pool\_utilization\_id | id for monitor mysql\_pool\_utilization | -| mysql\_questions\_anomaly\_id | id for monitor mysql\_questions\_anomaly | -| mysql\_replication\_lag\_id | id for monitor mysql\_replication\_lag | -| mysql\_replication\_status\_id | id for monitor mysql\_replication\_status | -| mysql\_slow\_id | id for monitor mysql\_slow | -| mysql\_threads\_anomaly\_id | id for monitor mysql\_threads\_anomaly | - +| [mysql\_aborted\_id](#output\_mysql\_aborted\_id) | id for monitor mysql\_aborted | +| [mysql\_availability\_id](#output\_mysql\_availability\_id) | id for monitor mysql\_availability | +| [mysql\_connection\_id](#output\_mysql\_connection\_id) | id for monitor mysql\_connection | +| [mysql\_pool\_efficiency\_id](#output\_mysql\_pool\_efficiency\_id) | id for monitor mysql\_pool\_efficiency | +| [mysql\_pool\_utilization\_id](#output\_mysql\_pool\_utilization\_id) | id for monitor mysql\_pool\_utilization | +| [mysql\_questions\_anomaly\_id](#output\_mysql\_questions\_anomaly\_id) | id for monitor mysql\_questions\_anomaly | +| [mysql\_replication\_lag\_id](#output\_mysql\_replication\_lag\_id) | id for monitor mysql\_replication\_lag | +| [mysql\_replication\_status\_id](#output\_mysql\_replication\_status\_id) | id for monitor mysql\_replication\_status | +| [mysql\_slow\_id](#output\_mysql\_slow\_id) | id for monitor mysql\_slow | +| [mysql\_threads\_anomaly\_id](#output\_mysql\_threads\_anomaly\_id) | id for monitor mysql\_threads\_anomaly | ## Related documentation DataDog documentation: [https://docs.datadoghq.com/integrations/mysql/](https://docs.datadoghq.com/integrations/mysql/) diff --git a/database/mysql/versions.tf b/database/mysql/versions.tf index 1c28e79..a5c6a87 100644 --- a/database/mysql/versions.tf +++ b/database/mysql/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/database/postgresql/README.md b/database/postgresql/README.md index d7a2948..95583bd 100644 --- a/database/postgresql/README.md +++ b/database/postgresql/README.md @@ -25,49 +25,69 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [filter-tags](#module\_filter-tags) | ../../common/filter-tags | n/a | + +## Resources + +| Name | Type | +|------|------| +| [datadog_monitor.postgresql_availability](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.postgresql_connection_too_high](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.postgresql_too_many_locks](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| environment | Environment | `string` | n/a | yes | -| 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 | -| 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 | -| message | Message sent when an alert is triggered | `any` | n/a | yes | -| new\_host\_delay | Delay in seconds for the metric evaluation | `number` | `300` | no | -| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | -| postgresql\_availability\_enabled | Flag to enable PostgreSQL availability monitor | `string` | `"true"` | no | -| postgresql\_availability\_extra\_tags | Extra tags for PostgreSQL availability monitor | `list(string)` | `[]` | no | -| postgresql\_availability\_message | Custom message for PostgreSQL availability monitor | `string` | `""` | no | -| postgresql\_availability\_no\_data\_timeframe | PostgreSQL availability monitor no data timeframe | `string` | `10` | no | -| postgresql\_availability\_threshold\_warning | PostgreSQL availability monitor (warning threshold) | `string` | `3` | no | -| postgresql\_connection\_enabled | Flag to enable PostgreSQL connection monitor | `string` | `"true"` | no | -| postgresql\_connection\_extra\_tags | Extra tags for PostgreSQL connection connects monitor | `list(string)` | `[]` | no | -| postgresql\_connection\_message | Custom message for PostgreSQL connection monitor | `string` | `""` | no | -| postgresql\_connection\_threshold\_critical | Maximum critical acceptable percent of connections | `number` | `80` | no | -| postgresql\_connection\_threshold\_warning | Maximum warning acceptable percent of connections | `number` | `70` | no | -| postgresql\_connection\_time\_aggregator | Monitor time aggregator for PostgreSQL connection monitor [available values: min, max or avg] | `string` | `"avg"` | no | -| postgresql\_connection\_timeframe | Monitor timeframe for PostgreSQL connection monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | -| postgresql\_lock\_enabled | Flag to enable PostgreSQL lock monitor | `string` | `"true"` | no | -| postgresql\_lock\_extra\_tags | Extra tags for PostgreSQL lock connects monitor | `list(string)` | `[]` | no | -| postgresql\_lock\_message | Custom message for PostgreSQL lock monitor | `string` | `""` | no | -| postgresql\_lock\_threshold\_critical | Maximum critical acceptable number of locks | `number` | `99` | no | -| postgresql\_lock\_threshold\_warning | Maximum warning acceptable number of locks | `number` | `70` | no | -| postgresql\_lock\_time\_aggregator | Monitor time aggregator for PostgreSQL lock monitor [available values: min, max or avg] | `string` | `"min"` | no | -| postgresql\_lock\_timeframe | Monitor timeframe for PostgreSQL lock monitor [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 | +| [environment](#input\_environment) | Environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds for the metric evaluation | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [postgresql\_availability\_enabled](#input\_postgresql\_availability\_enabled) | Flag to enable PostgreSQL availability monitor | `string` | `"true"` | no | +| [postgresql\_availability\_extra\_tags](#input\_postgresql\_availability\_extra\_tags) | Extra tags for PostgreSQL availability monitor | `list(string)` | `[]` | no | +| [postgresql\_availability\_message](#input\_postgresql\_availability\_message) | Custom message for PostgreSQL availability monitor | `string` | `""` | no | +| [postgresql\_availability\_no\_data\_timeframe](#input\_postgresql\_availability\_no\_data\_timeframe) | PostgreSQL availability monitor no data timeframe | `string` | `10` | no | +| [postgresql\_availability\_threshold\_warning](#input\_postgresql\_availability\_threshold\_warning) | PostgreSQL availability monitor (warning threshold) | `string` | `3` | no | +| [postgresql\_connection\_enabled](#input\_postgresql\_connection\_enabled) | Flag to enable PostgreSQL connection monitor | `string` | `"true"` | no | +| [postgresql\_connection\_extra\_tags](#input\_postgresql\_connection\_extra\_tags) | Extra tags for PostgreSQL connection connects monitor | `list(string)` | `[]` | no | +| [postgresql\_connection\_message](#input\_postgresql\_connection\_message) | Custom message for PostgreSQL connection monitor | `string` | `""` | no | +| [postgresql\_connection\_threshold\_critical](#input\_postgresql\_connection\_threshold\_critical) | Maximum critical acceptable percent of connections | `number` | `80` | no | +| [postgresql\_connection\_threshold\_warning](#input\_postgresql\_connection\_threshold\_warning) | Maximum warning acceptable percent of connections | `number` | `70` | no | +| [postgresql\_connection\_time\_aggregator](#input\_postgresql\_connection\_time\_aggregator) | Monitor time aggregator for PostgreSQL connection monitor [available values: min, max or avg] | `string` | `"avg"` | no | +| [postgresql\_connection\_timeframe](#input\_postgresql\_connection\_timeframe) | Monitor timeframe for PostgreSQL connection monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | +| [postgresql\_lock\_enabled](#input\_postgresql\_lock\_enabled) | Flag to enable PostgreSQL lock monitor | `string` | `"true"` | no | +| [postgresql\_lock\_extra\_tags](#input\_postgresql\_lock\_extra\_tags) | Extra tags for PostgreSQL lock connects monitor | `list(string)` | `[]` | no | +| [postgresql\_lock\_message](#input\_postgresql\_lock\_message) | Custom message for PostgreSQL lock monitor | `string` | `""` | no | +| [postgresql\_lock\_threshold\_critical](#input\_postgresql\_lock\_threshold\_critical) | Maximum critical acceptable number of locks | `number` | `99` | no | +| [postgresql\_lock\_threshold\_warning](#input\_postgresql\_lock\_threshold\_warning) | Maximum warning acceptable number of locks | `number` | `70` | no | +| [postgresql\_lock\_time\_aggregator](#input\_postgresql\_lock\_time\_aggregator) | Monitor time aggregator for PostgreSQL lock monitor [available values: min, max or avg] | `string` | `"min"` | no | +| [postgresql\_lock\_timeframe](#input\_postgresql\_lock\_timeframe) | Monitor timeframe for PostgreSQL lock monitor [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](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | ## Outputs | Name | Description | |------|-------------| -| postgresql\_availability\_id | id for monitor postgresql\_availability | -| postgresql\_connection\_too\_high\_id | id for monitor postgresql\_connection\_too\_high | -| postgresql\_too\_many\_locks\_id | id for monitor postgresql\_too\_many\_locks | - +| [postgresql\_availability\_id](#output\_postgresql\_availability\_id) | id for monitor postgresql\_availability | +| [postgresql\_connection\_too\_high\_id](#output\_postgresql\_connection\_too\_high\_id) | id for monitor postgresql\_connection\_too\_high | +| [postgresql\_too\_many\_locks\_id](#output\_postgresql\_too\_many\_locks\_id) | id for monitor postgresql\_too\_many\_locks | ## Related documentation DataDog documentation: [https://docs.datadoghq.com/integrations/postgres/](https://docs.datadoghq.com/integrations/postgres/) diff --git a/database/postgresql/versions.tf b/database/postgresql/versions.tf index 1c28e79..a5c6a87 100644 --- a/database/postgresql/versions.tf +++ b/database/postgresql/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/database/proxysql/README.md b/database/proxysql/README.md index abf2857..9becd38 100644 --- a/database/proxysql/README.md +++ b/database/proxysql/README.md @@ -27,67 +27,89 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [filter-tags](#module\_filter-tags) | ../../common/filter-tags | n/a | + +## Resources + +| Name | Type | +|------|------| +| [datadog_monitor.proxysql_client_conn_aborted](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.proxysql_pool_conn_failure](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.proxysql_server_conn_aborted](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.proxysql_slow](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.proxysql_thread_worker](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| environment | Environment | `string` | n/a | yes | -| 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 | -| 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 | -| message | Message sent when an alert is triggered | `any` | n/a | yes | -| new\_host\_delay | Delay in seconds for the metric evaluation | `number` | `300` | no | -| notify\_no\_data | Will raise no data alert if set to true | `bool` | `false` | no | -| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | -| proxysql\_client\_conn\_aborted\_enabled | Flag to enable ProxySQL client connections aborted monitor | `string` | `"true"` | no | -| proxysql\_client\_conn\_aborted\_extra\_tags | Extra tags for ProxySQL client connections aborted monitor | `list(string)` | `[]` | no | -| proxysql\_client\_conn\_aborted\_message | Custom message for ProxySQL client connections aborted monitor | `string` | `""` | no | -| proxysql\_client\_conn\_aborted\_threshold\_critical | Maximum critical acceptable percent of aborted connects | `number` | `10` | no | -| proxysql\_client\_conn\_aborted\_threshold\_warning | Maximum warning acceptable percent of aborted connects | `number` | `1` | no | -| proxysql\_client\_conn\_aborted\_time\_aggregator | Monitor time aggregator for ProxySQL client connections aborted monitor [available values: min, max or avg] | `string` | `"avg"` | no | -| proxysql\_client\_conn\_aborted\_timeframe | Monitor timeframe for ProxySQL client connections aborted monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_10m"` | no | -| proxysql\_pool\_conn\_failure\_enabled | Flag to enable ProxySQL pool connections failure monitor | `string` | `"true"` | no | -| proxysql\_pool\_conn\_failure\_extra\_tags | Extra tags for ProxySQL pool connections failure monitor | `list(string)` | `[]` | no | -| proxysql\_pool\_conn\_failure\_message | Custom message for ProxySQL pool connections failure monitor | `string` | `""` | no | -| proxysql\_pool\_conn\_failure\_threshold\_critical | Maximum critical acceptable of pool connections failure | `number` | `20` | no | -| proxysql\_pool\_conn\_failure\_threshold\_warning | Maximum warning acceptable of pool connections failure | `number` | `1` | no | -| proxysql\_pool\_conn\_failure\_time\_aggregator | Monitor time aggregator for ProxySQL pool connections failure monitor [available values: min, max or avg] | `string` | `"avg"` | no | -| proxysql\_pool\_conn\_failure\_timeframe | Monitor timeframe for ProxySQL pool connections failure monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | -| proxysql\_server\_conn\_aborted\_enabled | Flag to enable ProxySQL server connections aborted monitor | `string` | `"true"` | no | -| proxysql\_server\_conn\_aborted\_extra\_tags | Extra tags for ProxySQL server connections aborted monitor | `list(string)` | `[]` | no | -| proxysql\_server\_conn\_aborted\_message | Custom message for ProxySQL server connections aborted monitor | `string` | `""` | no | -| proxysql\_server\_conn\_aborted\_threshold\_critical | Maximum critical acceptable percent of aborted connects | `number` | `10` | no | -| proxysql\_server\_conn\_aborted\_threshold\_warning | Maximum warning acceptable percent of aborted connects | `number` | `1` | no | -| proxysql\_server\_conn\_aborted\_time\_aggregator | Monitor time aggregator for ProxySQL server connections aborted monitor [available values: min, max or avg] | `string` | `"avg"` | no | -| proxysql\_server\_conn\_aborted\_timeframe | Monitor timeframe for ProxySQL server connections aborted monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_10m"` | no | -| proxysql\_slow\_enabled | Flag to enable ProxySQL slow queries monitor | `string` | `"true"` | no | -| proxysql\_slow\_extra\_tags | Extra tags for ProxySQL slow queries monitor | `list(string)` | `[]` | no | -| proxysql\_slow\_message | Custom message for ProxySQL slow queries monitor | `string` | `""` | no | -| proxysql\_slow\_threshold\_critical | Maximum critical acceptable of slow queries | `number` | `20` | no | -| proxysql\_slow\_threshold\_warning | Maximum warning acceptable of slow queries | `number` | `1` | no | -| proxysql\_slow\_time\_aggregator | Monitor time aggregator for ProxySQL slow queries monitor [available values: min, max or avg] | `string` | `"avg"` | no | -| proxysql\_slow\_timeframe | Monitor timeframe for ProxySQL slow queries monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | -| proxysql\_thread\_worker\_enabled | Flag to enable ProxySQL thread worker monitor | `string` | `"true"` | no | -| proxysql\_thread\_worker\_extra\_tags | Extra tags for ProxySQL thread worker monitor | `list(string)` | `[]` | no | -| proxysql\_thread\_worker\_message | Custom message for ProxySQL thread worker monitor | `string` | `""` | no | -| proxysql\_thread\_worker\_threshold\_critical | Minimum critical acceptable of thread worker running | `number` | `1` | no | -| proxysql\_thread\_worker\_threshold\_warning | Minimum warning acceptable of thread worker running | `number` | `4` | no | -| proxysql\_thread\_worker\_time\_aggregator | Monitor time aggregator for ProxySQL thread worker monitor [available values: min, max or avg] | `string` | `"avg"` | no | -| proxysql\_thread\_worker\_timeframe | Monitor timeframe for ProxySQL thread worker 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](#input\_environment) | Environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds for the metric evaluation | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `false` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [proxysql\_client\_conn\_aborted\_enabled](#input\_proxysql\_client\_conn\_aborted\_enabled) | Flag to enable ProxySQL client connections aborted monitor | `string` | `"true"` | no | +| [proxysql\_client\_conn\_aborted\_extra\_tags](#input\_proxysql\_client\_conn\_aborted\_extra\_tags) | Extra tags for ProxySQL client connections aborted monitor | `list(string)` | `[]` | no | +| [proxysql\_client\_conn\_aborted\_message](#input\_proxysql\_client\_conn\_aborted\_message) | Custom message for ProxySQL client connections aborted monitor | `string` | `""` | no | +| [proxysql\_client\_conn\_aborted\_threshold\_critical](#input\_proxysql\_client\_conn\_aborted\_threshold\_critical) | Maximum critical acceptable percent of aborted connects | `number` | `10` | no | +| [proxysql\_client\_conn\_aborted\_threshold\_warning](#input\_proxysql\_client\_conn\_aborted\_threshold\_warning) | Maximum warning acceptable percent of aborted connects | `number` | `1` | no | +| [proxysql\_client\_conn\_aborted\_time\_aggregator](#input\_proxysql\_client\_conn\_aborted\_time\_aggregator) | Monitor time aggregator for ProxySQL client connections aborted monitor [available values: min, max or avg] | `string` | `"avg"` | no | +| [proxysql\_client\_conn\_aborted\_timeframe](#input\_proxysql\_client\_conn\_aborted\_timeframe) | Monitor timeframe for ProxySQL client connections aborted monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_10m"` | no | +| [proxysql\_pool\_conn\_failure\_enabled](#input\_proxysql\_pool\_conn\_failure\_enabled) | Flag to enable ProxySQL pool connections failure monitor | `string` | `"true"` | no | +| [proxysql\_pool\_conn\_failure\_extra\_tags](#input\_proxysql\_pool\_conn\_failure\_extra\_tags) | Extra tags for ProxySQL pool connections failure monitor | `list(string)` | `[]` | no | +| [proxysql\_pool\_conn\_failure\_message](#input\_proxysql\_pool\_conn\_failure\_message) | Custom message for ProxySQL pool connections failure monitor | `string` | `""` | no | +| [proxysql\_pool\_conn\_failure\_threshold\_critical](#input\_proxysql\_pool\_conn\_failure\_threshold\_critical) | Maximum critical acceptable of pool connections failure | `number` | `20` | no | +| [proxysql\_pool\_conn\_failure\_threshold\_warning](#input\_proxysql\_pool\_conn\_failure\_threshold\_warning) | Maximum warning acceptable of pool connections failure | `number` | `1` | no | +| [proxysql\_pool\_conn\_failure\_time\_aggregator](#input\_proxysql\_pool\_conn\_failure\_time\_aggregator) | Monitor time aggregator for ProxySQL pool connections failure monitor [available values: min, max or avg] | `string` | `"avg"` | no | +| [proxysql\_pool\_conn\_failure\_timeframe](#input\_proxysql\_pool\_conn\_failure\_timeframe) | Monitor timeframe for ProxySQL pool connections failure monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | +| [proxysql\_server\_conn\_aborted\_enabled](#input\_proxysql\_server\_conn\_aborted\_enabled) | Flag to enable ProxySQL server connections aborted monitor | `string` | `"true"` | no | +| [proxysql\_server\_conn\_aborted\_extra\_tags](#input\_proxysql\_server\_conn\_aborted\_extra\_tags) | Extra tags for ProxySQL server connections aborted monitor | `list(string)` | `[]` | no | +| [proxysql\_server\_conn\_aborted\_message](#input\_proxysql\_server\_conn\_aborted\_message) | Custom message for ProxySQL server connections aborted monitor | `string` | `""` | no | +| [proxysql\_server\_conn\_aborted\_threshold\_critical](#input\_proxysql\_server\_conn\_aborted\_threshold\_critical) | Maximum critical acceptable percent of aborted connects | `number` | `10` | no | +| [proxysql\_server\_conn\_aborted\_threshold\_warning](#input\_proxysql\_server\_conn\_aborted\_threshold\_warning) | Maximum warning acceptable percent of aborted connects | `number` | `1` | no | +| [proxysql\_server\_conn\_aborted\_time\_aggregator](#input\_proxysql\_server\_conn\_aborted\_time\_aggregator) | Monitor time aggregator for ProxySQL server connections aborted monitor [available values: min, max or avg] | `string` | `"avg"` | no | +| [proxysql\_server\_conn\_aborted\_timeframe](#input\_proxysql\_server\_conn\_aborted\_timeframe) | Monitor timeframe for ProxySQL server connections aborted monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_10m"` | no | +| [proxysql\_slow\_enabled](#input\_proxysql\_slow\_enabled) | Flag to enable ProxySQL slow queries monitor | `string` | `"true"` | no | +| [proxysql\_slow\_extra\_tags](#input\_proxysql\_slow\_extra\_tags) | Extra tags for ProxySQL slow queries monitor | `list(string)` | `[]` | no | +| [proxysql\_slow\_message](#input\_proxysql\_slow\_message) | Custom message for ProxySQL slow queries monitor | `string` | `""` | no | +| [proxysql\_slow\_threshold\_critical](#input\_proxysql\_slow\_threshold\_critical) | Maximum critical acceptable of slow queries | `number` | `20` | no | +| [proxysql\_slow\_threshold\_warning](#input\_proxysql\_slow\_threshold\_warning) | Maximum warning acceptable of slow queries | `number` | `1` | no | +| [proxysql\_slow\_time\_aggregator](#input\_proxysql\_slow\_time\_aggregator) | Monitor time aggregator for ProxySQL slow queries monitor [available values: min, max or avg] | `string` | `"avg"` | no | +| [proxysql\_slow\_timeframe](#input\_proxysql\_slow\_timeframe) | Monitor timeframe for ProxySQL slow queries monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | +| [proxysql\_thread\_worker\_enabled](#input\_proxysql\_thread\_worker\_enabled) | Flag to enable ProxySQL thread worker monitor | `string` | `"true"` | no | +| [proxysql\_thread\_worker\_extra\_tags](#input\_proxysql\_thread\_worker\_extra\_tags) | Extra tags for ProxySQL thread worker monitor | `list(string)` | `[]` | no | +| [proxysql\_thread\_worker\_message](#input\_proxysql\_thread\_worker\_message) | Custom message for ProxySQL thread worker monitor | `string` | `""` | no | +| [proxysql\_thread\_worker\_threshold\_critical](#input\_proxysql\_thread\_worker\_threshold\_critical) | Minimum critical acceptable of thread worker running | `number` | `1` | no | +| [proxysql\_thread\_worker\_threshold\_warning](#input\_proxysql\_thread\_worker\_threshold\_warning) | Minimum warning acceptable of thread worker running | `number` | `4` | no | +| [proxysql\_thread\_worker\_time\_aggregator](#input\_proxysql\_thread\_worker\_time\_aggregator) | Monitor time aggregator for ProxySQL thread worker monitor [available values: min, max or avg] | `string` | `"avg"` | no | +| [proxysql\_thread\_worker\_timeframe](#input\_proxysql\_thread\_worker\_timeframe) | Monitor timeframe for ProxySQL thread worker 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 | Name | Description | |------|-------------| -| proxysql\_client\_conn\_aborted\_id | id for monitor proxysql\_client\_conn\_aborted | -| proxysql\_pool\_conn\_failure\_id | id for monitor proxysql\_pool\_conn\_failure | -| proxysql\_server\_conn\_aborted\_id | id for monitor proxysql\_server\_conn\_aborted | -| proxysql\_slow\_id | id for monitor proxysql\_slow | -| proxysql\_thread\_worker\_id | id for monitor proxysql\_thread\_worker | - +| [proxysql\_client\_conn\_aborted\_id](#output\_proxysql\_client\_conn\_aborted\_id) | id for monitor proxysql\_client\_conn\_aborted | +| [proxysql\_pool\_conn\_failure\_id](#output\_proxysql\_pool\_conn\_failure\_id) | id for monitor proxysql\_pool\_conn\_failure | +| [proxysql\_server\_conn\_aborted\_id](#output\_proxysql\_server\_conn\_aborted\_id) | id for monitor proxysql\_server\_conn\_aborted | +| [proxysql\_slow\_id](#output\_proxysql\_slow\_id) | id for monitor proxysql\_slow | +| [proxysql\_thread\_worker\_id](#output\_proxysql\_thread\_worker\_id) | id for monitor proxysql\_thread\_worker | ## Related documentation * [Datadog documentation](https://docs.datadoghq.com/integrations/proxysql/) diff --git a/database/proxysql/versions.tf b/database/proxysql/versions.tf index 1c28e79..a5c6a87 100644 --- a/database/proxysql/versions.tf +++ b/database/proxysql/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/database/redis/README.md b/database/redis/README.md index 0413378..c81e648 100644 --- a/database/redis/README.md +++ b/database/redis/README.md @@ -32,105 +32,132 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [filter-tags](#module\_filter-tags) | ../../common/filter-tags | n/a | + +## Resources + +| Name | Type | +|------|------| +| [datadog_monitor.blocked_clients](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.evicted_keys](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.expirations](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.hitrate](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.keyspace_full](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.latency](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.memory_frag](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [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 | +| [datadog_monitor.rejected_connections](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| blocked\_clients\_enabled | Flag to enable Redis Blocked clients monitor | `string` | `"true"` | no | -| blocked\_clients\_extra\_tags | Extra tags for Redis Blocked clients monitor | `list(string)` | `[]` | no | -| blocked\_clients\_message | Custom message for Redis Blocked clients monitor | `string` | `""` | no | -| blocked\_clients\_threshold\_critical | Blocked clients rate (critical threshold) | `number` | `30` | no | -| blocked\_clients\_threshold\_warning | Blocked clients rate (warning threshold) | `number` | `10` | no | -| blocked\_clients\_time\_aggregator | Monitor aggregator for Redis Blocked clients [available values: min, max or avg] | `string` | `"min"` | no | -| blocked\_clients\_timeframe | Monitor timeframe for Redis Blocked clients [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 | -| evaluation\_delay | Delay in seconds for the metric evaluation | `number` | `15` | no | -| evictedkeys\_change\_enabled | Flag to enable Redis evicted keys monitor | `string` | `"true"` | no | -| evictedkeys\_change\_extra\_tags | Extra tags for Redis evicted keys monitor | `list(string)` | `[]` | no | -| evictedkeys\_change\_message | Custom message for Redis evicted keys monitor | `string` | `""` | no | -| evictedkeys\_change\_threshold\_critical | Evicted keys change (critical threshold) | `number` | `100` | no | -| evictedkeys\_change\_threshold\_warning | Evicted keys change (warning threshold) | `number` | `20` | no | -| evictedkeys\_change\_time\_aggregator | Monitor aggregator for Redis evicted keys [available values: min, max or avg] | `string` | `"avg"` | no | -| evictedkeys\_change\_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 | -| expirations\_rate\_enabled | Flag to enable Redis keys expirations monitor | `string` | `"true"` | no | -| expirations\_rate\_extra\_tags | Extra tags for Redis keys expirations monitor | `list(string)` | `[]` | no | -| expirations\_rate\_message | Custom message for Redis keys expirations monitor | `string` | `""` | no | -| expirations\_rate\_threshold\_critical | Expirations percent (critical threshold) | `number` | `80` | no | -| expirations\_rate\_threshold\_warning | Expirations percent (warning threshold) | `number` | `60` | no | -| expirations\_rate\_time\_aggregator | Monitor aggregator for Redis keys expirations [available values: min, max or avg] | `string` | `"min"` | no | -| expirations\_rate\_timeframe | Monitor timeframe for Redis keys expirations [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 | -| 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 | -| hitrate\_enabled | Flag to enable Redis hitrate monitor | `string` | `"true"` | no | -| hitrate\_extra\_tags | Extra tags for Redis hitrate monitor | `list(string)` | `[]` | no | -| hitrate\_message | Custom message for Redis hitrate monitor | `string` | `""` | no | -| hitrate\_threshold\_critical | hitrate limit (critical threshold) | `number` | `10` | no | -| hitrate\_threshold\_warning | hitrate limit (warning threshold) | `number` | `30` | no | -| hitrate\_time\_aggregator | Monitor aggregator for Redis hitrate [available values: min, max or avg] | `string` | `"max"` | no | -| hitrate\_timeframe | Monitor timeframe for Redis hitrate [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | -| keyspace\_enabled | Flag to enable Redis keyspace monitor | `string` | `"true"` | no | -| keyspace\_extra\_tags | Extra tags for Redis keyspace monitor | `list(string)` | `[]` | no | -| keyspace\_message | Custom message for Redis keyspace monitor | `string` | `""` | no | -| keyspace\_threshold\_critical | Keyspace no changement (critical threshold) | `number` | `0` | no | -| keyspace\_threshold\_warning | Keyspace no changement (warning threshold) | `number` | `1` | no | -| keyspace\_time\_aggregator | Monitor aggregator for Redis keyspace [available values: min, max or avg] | `string` | `"min"` | no | -| keyspace\_timeframe | Monitor timeframe for Redis keyspace [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 Redis latency monitor | `string` | `"true"` | no | -| latency\_extra\_tags | Extra tags for Redis latency monitor | `list(string)` | `[]` | no | -| latency\_message | Custom message for Redis latency monitor | `string` | `""` | no | -| latency\_threshold\_critical | latency limit (critical threshold) | `number` | `100` | no | -| latency\_threshold\_warning | latency limit (warning threshold) | `number` | `50` | no | -| latency\_time\_aggregator | Monitor aggregator for Redis latency [available values: min, max or avg] | `string` | `"min"` | no | -| latency\_timeframe | Monitor timeframe for Redis latency [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | -| mem\_frag\_enabled | Flag to enable Redis memory RAM fragmentation monitor | `string` | `"true"` | no | -| mem\_frag\_extra\_tags | Extra tags for Redis memory RAM fragmentation monitor | `list(string)` | `[]` | no | -| mem\_frag\_message | Custom message for Redis memory RAM fragmentation monitor | `string` | `""` | no | -| mem\_frag\_threshold\_critical | memory RAM fragmentation limit (critical threshold) | `number` | `150` | no | -| mem\_frag\_threshold\_warning | memory RAM fragmentation limit (warning threshold) | `number` | `130` | no | -| mem\_frag\_time\_aggregator | Monitor aggregator for Redis memory RAM fragmentation [available values: min, max or avg] | `string` | `"min"` | no | -| mem\_frag\_timeframe | Monitor timeframe for Redis memory RAM fragmentation [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | -| mem\_used\_enabled | Flag to enable Redis RAM memory used monitor | `string` | `"true"` | no | -| mem\_used\_extra\_tags | Extra tags for Redis RAM memory used monitor | `list(string)` | `[]` | no | -| mem\_used\_message | Custom message for Redis RAM memory used monitor | `string` | `""` | no | -| mem\_used\_threshold\_critical | RAM memory used limit (critical threshold) | `number` | `95` | no | -| mem\_used\_threshold\_warning | RAM memory used limit (warning threshold) | `number` | `85` | no | -| mem\_used\_time\_aggregator | Monitor aggregator for Redis RAM memory used [available values: min, max or avg] | `string` | `"min"` | no | -| mem\_used\_timeframe | Monitor timeframe for Redis RAM memory used [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 Redis monitor is triggered | `any` | n/a | yes | -| new\_host\_delay | Delay in seconds for the metric evaluation | `number` | `300` | no | -| not\_responding\_enabled | Flag to enable Redis does not respond monitor | `string` | `"true"` | no | -| not\_responding\_extra\_tags | Extra tags for Redis does not respond monitor | `list(string)` | `[]` | no | -| not\_responding\_message | Custom message for Redis does not respond monitor | `string` | `""` | no | -| not\_responding\_no\_data\_timeframe | Redis does not respond monitor no data timeframe | `string` | `10` | no | -| not\_responding\_threshold\_warning | Redis does not respond monitor (warning threshold) | `string` | `3` | no | -| 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 | -| rejected\_con\_enabled | Flag to enable Redis rejected connections errors monitor | `string` | `"true"` | no | -| rejected\_con\_extra\_tags | Extra tags for Redis rejected connections errors monitor | `list(string)` | `[]` | no | -| rejected\_con\_message | Custom message for Redis rejected connections errors monitor | `string` | `""` | no | -| rejected\_con\_threshold\_critical | rejected connections errors limit (critical threshold) | `number` | `50` | no | -| rejected\_con\_threshold\_warning | rejected connections errors limit (warning threshold) | `number` | `10` | no | -| rejected\_con\_time\_aggregator | Monitor aggregator for Redis rejected connections errors [available values: min, max or avg] | `string` | `"min"` | no | -| rejected\_con\_timeframe | Monitor timeframe for Redis rejected connections errors [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | +| [blocked\_clients\_enabled](#input\_blocked\_clients\_enabled) | Flag to enable Redis Blocked clients monitor | `string` | `"true"` | no | +| [blocked\_clients\_extra\_tags](#input\_blocked\_clients\_extra\_tags) | Extra tags for Redis Blocked clients monitor | `list(string)` | `[]` | no | +| [blocked\_clients\_message](#input\_blocked\_clients\_message) | Custom message for Redis Blocked clients monitor | `string` | `""` | no | +| [blocked\_clients\_threshold\_critical](#input\_blocked\_clients\_threshold\_critical) | Blocked clients rate (critical threshold) | `number` | `30` | no | +| [blocked\_clients\_threshold\_warning](#input\_blocked\_clients\_threshold\_warning) | Blocked clients rate (warning threshold) | `number` | `10` | no | +| [blocked\_clients\_time\_aggregator](#input\_blocked\_clients\_time\_aggregator) | Monitor aggregator for Redis Blocked clients [available values: min, max or avg] | `string` | `"min"` | no | +| [blocked\_clients\_timeframe](#input\_blocked\_clients\_timeframe) | Monitor timeframe for Redis Blocked clients [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | +| [environment](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no | +| [evictedkeys\_change\_enabled](#input\_evictedkeys\_change\_enabled) | Flag to enable Redis evicted keys monitor | `string` | `"true"` | no | +| [evictedkeys\_change\_extra\_tags](#input\_evictedkeys\_change\_extra\_tags) | Extra tags for Redis evicted keys monitor | `list(string)` | `[]` | no | +| [evictedkeys\_change\_message](#input\_evictedkeys\_change\_message) | Custom message for Redis evicted keys monitor | `string` | `""` | no | +| [evictedkeys\_change\_threshold\_critical](#input\_evictedkeys\_change\_threshold\_critical) | Evicted keys change (critical threshold) | `number` | `100` | no | +| [evictedkeys\_change\_threshold\_warning](#input\_evictedkeys\_change\_threshold\_warning) | Evicted keys change (warning threshold) | `number` | `20` | no | +| [evictedkeys\_change\_time\_aggregator](#input\_evictedkeys\_change\_time\_aggregator) | Monitor aggregator for Redis evicted keys [available values: min, max or avg] | `string` | `"avg"` | no | +| [evictedkeys\_change\_timeframe](#input\_evictedkeys\_change\_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 | +| [expirations\_rate\_enabled](#input\_expirations\_rate\_enabled) | Flag to enable Redis keys expirations monitor | `string` | `"true"` | no | +| [expirations\_rate\_extra\_tags](#input\_expirations\_rate\_extra\_tags) | Extra tags for Redis keys expirations monitor | `list(string)` | `[]` | no | +| [expirations\_rate\_message](#input\_expirations\_rate\_message) | Custom message for Redis keys expirations monitor | `string` | `""` | no | +| [expirations\_rate\_threshold\_critical](#input\_expirations\_rate\_threshold\_critical) | Expirations percent (critical threshold) | `number` | `80` | no | +| [expirations\_rate\_threshold\_warning](#input\_expirations\_rate\_threshold\_warning) | Expirations percent (warning threshold) | `number` | `60` | no | +| [expirations\_rate\_time\_aggregator](#input\_expirations\_rate\_time\_aggregator) | Monitor aggregator for Redis keys expirations [available values: min, max or avg] | `string` | `"min"` | no | +| [expirations\_rate\_timeframe](#input\_expirations\_rate\_timeframe) | Monitor timeframe for Redis keys expirations [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](#input\_filter\_tags\_custom) | Tags used for custom filtering when filter\_tags\_use\_defaults is false | `string` | `"*"` | no | +| [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](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [hitrate\_enabled](#input\_hitrate\_enabled) | Flag to enable Redis hitrate monitor | `string` | `"true"` | no | +| [hitrate\_extra\_tags](#input\_hitrate\_extra\_tags) | Extra tags for Redis hitrate monitor | `list(string)` | `[]` | no | +| [hitrate\_message](#input\_hitrate\_message) | Custom message for Redis hitrate monitor | `string` | `""` | no | +| [hitrate\_threshold\_critical](#input\_hitrate\_threshold\_critical) | hitrate limit (critical threshold) | `number` | `10` | no | +| [hitrate\_threshold\_warning](#input\_hitrate\_threshold\_warning) | hitrate limit (warning threshold) | `number` | `30` | no | +| [hitrate\_time\_aggregator](#input\_hitrate\_time\_aggregator) | Monitor aggregator for Redis hitrate [available values: min, max or avg] | `string` | `"max"` | no | +| [hitrate\_timeframe](#input\_hitrate\_timeframe) | Monitor timeframe for Redis hitrate [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | +| [keyspace\_enabled](#input\_keyspace\_enabled) | Flag to enable Redis keyspace monitor | `string` | `"true"` | no | +| [keyspace\_extra\_tags](#input\_keyspace\_extra\_tags) | Extra tags for Redis keyspace monitor | `list(string)` | `[]` | no | +| [keyspace\_message](#input\_keyspace\_message) | Custom message for Redis keyspace monitor | `string` | `""` | no | +| [keyspace\_threshold\_critical](#input\_keyspace\_threshold\_critical) | Keyspace no changement (critical threshold) | `number` | `0` | no | +| [keyspace\_threshold\_warning](#input\_keyspace\_threshold\_warning) | Keyspace no changement (warning threshold) | `number` | `1` | no | +| [keyspace\_time\_aggregator](#input\_keyspace\_time\_aggregator) | Monitor aggregator for Redis keyspace [available values: min, max or avg] | `string` | `"min"` | no | +| [keyspace\_timeframe](#input\_keyspace\_timeframe) | Monitor timeframe for Redis keyspace [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](#input\_latency\_enabled) | Flag to enable Redis latency monitor | `string` | `"true"` | no | +| [latency\_extra\_tags](#input\_latency\_extra\_tags) | Extra tags for Redis latency monitor | `list(string)` | `[]` | no | +| [latency\_message](#input\_latency\_message) | Custom message for Redis latency monitor | `string` | `""` | no | +| [latency\_threshold\_critical](#input\_latency\_threshold\_critical) | latency limit (critical threshold) | `number` | `100` | no | +| [latency\_threshold\_warning](#input\_latency\_threshold\_warning) | latency limit (warning threshold) | `number` | `50` | no | +| [latency\_time\_aggregator](#input\_latency\_time\_aggregator) | Monitor aggregator for Redis latency [available values: min, max or avg] | `string` | `"min"` | no | +| [latency\_timeframe](#input\_latency\_timeframe) | Monitor timeframe for Redis latency [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | +| [mem\_frag\_enabled](#input\_mem\_frag\_enabled) | Flag to enable Redis memory RAM fragmentation monitor | `string` | `"true"` | no | +| [mem\_frag\_extra\_tags](#input\_mem\_frag\_extra\_tags) | Extra tags for Redis memory RAM fragmentation monitor | `list(string)` | `[]` | no | +| [mem\_frag\_message](#input\_mem\_frag\_message) | Custom message for Redis memory RAM fragmentation monitor | `string` | `""` | no | +| [mem\_frag\_threshold\_critical](#input\_mem\_frag\_threshold\_critical) | memory RAM fragmentation limit (critical threshold) | `number` | `150` | no | +| [mem\_frag\_threshold\_warning](#input\_mem\_frag\_threshold\_warning) | memory RAM fragmentation limit (warning threshold) | `number` | `130` | no | +| [mem\_frag\_time\_aggregator](#input\_mem\_frag\_time\_aggregator) | Monitor aggregator for Redis memory RAM fragmentation [available values: min, max or avg] | `string` | `"min"` | no | +| [mem\_frag\_timeframe](#input\_mem\_frag\_timeframe) | Monitor timeframe for Redis memory RAM fragmentation [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | +| [mem\_used\_enabled](#input\_mem\_used\_enabled) | Flag to enable Redis RAM memory used monitor | `string` | `"true"` | no | +| [mem\_used\_extra\_tags](#input\_mem\_used\_extra\_tags) | Extra tags for Redis RAM memory used monitor | `list(string)` | `[]` | no | +| [mem\_used\_message](#input\_mem\_used\_message) | Custom message for Redis RAM memory used monitor | `string` | `""` | no | +| [mem\_used\_threshold\_critical](#input\_mem\_used\_threshold\_critical) | RAM memory used limit (critical threshold) | `number` | `95` | no | +| [mem\_used\_threshold\_warning](#input\_mem\_used\_threshold\_warning) | RAM memory used limit (warning threshold) | `number` | `85` | no | +| [mem\_used\_time\_aggregator](#input\_mem\_used\_time\_aggregator) | Monitor aggregator for Redis RAM memory used [available values: min, max or avg] | `string` | `"min"` | no | +| [mem\_used\_timeframe](#input\_mem\_used\_timeframe) | Monitor timeframe for Redis RAM memory used [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | +| [message](#input\_message) | Message sent when a Redis monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds for the metric evaluation | `number` | `300` | no | +| [not\_responding\_enabled](#input\_not\_responding\_enabled) | Flag to enable Redis does not respond monitor | `string` | `"true"` | no | +| [not\_responding\_extra\_tags](#input\_not\_responding\_extra\_tags) | Extra tags for Redis does not respond monitor | `list(string)` | `[]` | no | +| [not\_responding\_message](#input\_not\_responding\_message) | Custom message for Redis does not respond monitor | `string` | `""` | no | +| [not\_responding\_no\_data\_timeframe](#input\_not\_responding\_no\_data\_timeframe) | Redis does not respond monitor no data timeframe | `string` | `10` | no | +| [not\_responding\_threshold\_warning](#input\_not\_responding\_threshold\_warning) | Redis does not respond monitor (warning threshold) | `string` | `3` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [rejected\_con\_enabled](#input\_rejected\_con\_enabled) | Flag to enable Redis rejected connections errors monitor | `string` | `"true"` | no | +| [rejected\_con\_extra\_tags](#input\_rejected\_con\_extra\_tags) | Extra tags for Redis rejected connections errors monitor | `list(string)` | `[]` | no | +| [rejected\_con\_message](#input\_rejected\_con\_message) | Custom message for Redis rejected connections errors monitor | `string` | `""` | no | +| [rejected\_con\_threshold\_critical](#input\_rejected\_con\_threshold\_critical) | rejected connections errors limit (critical threshold) | `number` | `50` | no | +| [rejected\_con\_threshold\_warning](#input\_rejected\_con\_threshold\_warning) | rejected connections errors limit (warning threshold) | `number` | `10` | no | +| [rejected\_con\_time\_aggregator](#input\_rejected\_con\_time\_aggregator) | Monitor aggregator for Redis rejected connections errors [available values: min, max or avg] | `string` | `"min"` | no | +| [rejected\_con\_timeframe](#input\_rejected\_con\_timeframe) | Monitor timeframe for Redis rejected connections 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 | Name | Description | |------|-------------| -| blocked\_clients\_id | id for monitor blocked\_clients | -| evicted\_keys\_id | id for monitor evicted\_keys | -| expirations\_id | id for monitor expirations | -| hitrate\_id | id for monitor hitrate | -| keyspace\_full\_id | id for monitor keyspace\_full | -| latency\_id | id for monitor latency | -| memory\_frag\_id | id for monitor memory\_frag | -| memory\_used\_id | id for monitor memory\_used | -| not\_responding\_id | id for monitor not\_responding | -| rejected\_connections\_id | id for monitor rejected\_connections | - +| [blocked\_clients\_id](#output\_blocked\_clients\_id) | id for monitor blocked\_clients | +| [evicted\_keys\_id](#output\_evicted\_keys\_id) | id for monitor evicted\_keys | +| [expirations\_id](#output\_expirations\_id) | id for monitor expirations | +| [hitrate\_id](#output\_hitrate\_id) | id for monitor hitrate | +| [keyspace\_full\_id](#output\_keyspace\_full\_id) | id for monitor keyspace\_full | +| [latency\_id](#output\_latency\_id) | id for monitor latency | +| [memory\_frag\_id](#output\_memory\_frag\_id) | id for monitor memory\_frag | +| [memory\_used\_id](#output\_memory\_used\_id) | id for monitor memory\_used | +| [not\_responding\_id](#output\_not\_responding\_id) | id for monitor not\_responding | +| [rejected\_connections\_id](#output\_rejected\_connections\_id) | id for monitor rejected\_connections | ## Related documentation [Datadog blog: How to monitor Redis](https://www.datadoghq.com/blog/how-to-monitor-redis-performance-metrics/) diff --git a/database/redis/versions.tf b/database/redis/versions.tf index 1c28e79..a5c6a87 100644 --- a/database/redis/versions.tf +++ b/database/redis/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/database/solr/README.md b/database/solr/README.md index 1aa27e6..429a452 100644 --- a/database/solr/README.md +++ b/database/solr/README.md @@ -25,52 +25,72 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [filter-tags](#module\_filter-tags) | ../../common/filter-tags | n/a | + +## Resources + +| Name | Type | +|------|------| +| [datadog_monitor.not_responding](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.search_handler_errors](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.searcher_warmup_time](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| environment | Architecture environment | `string` | n/a | yes | -| 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 | -| 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 | -| message | Message sent when a monitor is triggered | `any` | n/a | yes | -| new\_host\_delay | Delay in seconds before begin to monitor new host | `number` | `300` | no | -| not\_responding\_enabled | Flag to enable Solr does not repsond monitor | `bool` | `true` | no | -| not\_responding\_extra\_tags | Extra tags for solr does not respond monitor | `list(string)` | `[]` | no | -| not\_responding\_group\_by | Not responding tags to group data | `list(string)` |
[
"instance"
]
| no | -| not\_responding\_message | Custom message for Solr does not respond monitor | `string` | `""` | no | -| not\_responding\_no\_data\_timeframe | Solr not responding monitor no data timeframe | `number` | `10` | no | -| not\_responding\_threshold\_warning | Solr not responding limit (warning threshold) | `number` | `3` | no | -| 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 | -| search\_handler\_errors\_enabled | Flag to enable Solr search handler errors monitor | `bool` | `true` | no | -| search\_handler\_errors\_extra\_tags | Extra tags for Search handler errors monitor | `list(string)` | `[]` | no | -| search\_handler\_errors\_group\_by | Search handler errors tags to group datas | `list(string)` |
[
"instance"
]
| no | -| search\_handler\_errors\_message | Custom message for Solr search handler errors monitor | `string` | `""` | no | -| search\_handler\_errors\_rate\_threshold\_critical | Handler errors rate critical threshold | `number` | `50` | no | -| search\_handler\_errors\_rate\_threshold\_warning | Handler errors rate warning threshold | `number` | `10` | no | -| search\_handler\_errors\_time\_aggregator | Time aggregator for the Handler errors monitor | `string` | `"min"` | no | -| search\_handler\_errors\_timeframe | Timeframe for the search handler errors monitor | `string` | `"last_5m"` | no | -| searcher\_warmup\_time\_aggregator | Time aggregator for the searcher warmup time monitor | `string` | `"max"` | no | -| searcher\_warmup\_time\_enabled | Flag to enable Solr searcher warmup time monitor | `bool` | `true` | no | -| searcher\_warmup\_time\_extra\_tags | Extra tags for searcher warmum time monitor | `list(string)` | `[]` | no | -| searcher\_warmup\_time\_group\_by | Search warmup time tags to group datas | `list(string)` |
[
"instance"
]
| no | -| searcher\_warmup\_time\_message | Custom message for Solr searcher warmup time monitor | `string` | `""` | no | -| searcher\_warmup\_time\_threshold\_critical | Searcher warmup time critical threshold in ms | `number` | `5000` | no | -| searcher\_warmup\_time\_threshold\_warning | Searcher warmup time warning threshold in ms | `number` | `2000` | no | -| searcher\_warmup\_time\_timeframe | Timeframe for the searcher warmup time monitor | `string` | `"last_5m"` | no | +| [environment](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before begin to monitor new host | `number` | `300` | no | +| [not\_responding\_enabled](#input\_not\_responding\_enabled) | Flag to enable Solr does not repsond monitor | `bool` | `true` | no | +| [not\_responding\_extra\_tags](#input\_not\_responding\_extra\_tags) | Extra tags for solr does not respond monitor | `list(string)` | `[]` | no | +| [not\_responding\_group\_by](#input\_not\_responding\_group\_by) | Not responding tags to group data | `list(string)` |
[
"instance"
]
| no | +| [not\_responding\_message](#input\_not\_responding\_message) | Custom message for Solr does not respond monitor | `string` | `""` | no | +| [not\_responding\_no\_data\_timeframe](#input\_not\_responding\_no\_data\_timeframe) | Solr not responding monitor no data timeframe | `number` | `10` | no | +| [not\_responding\_threshold\_warning](#input\_not\_responding\_threshold\_warning) | Solr not responding limit (warning threshold) | `number` | `3` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [search\_handler\_errors\_enabled](#input\_search\_handler\_errors\_enabled) | Flag to enable Solr search handler errors monitor | `bool` | `true` | no | +| [search\_handler\_errors\_extra\_tags](#input\_search\_handler\_errors\_extra\_tags) | Extra tags for Search handler errors monitor | `list(string)` | `[]` | no | +| [search\_handler\_errors\_group\_by](#input\_search\_handler\_errors\_group\_by) | Search handler errors tags to group datas | `list(string)` |
[
"instance"
]
| no | +| [search\_handler\_errors\_message](#input\_search\_handler\_errors\_message) | Custom message for Solr search handler errors monitor | `string` | `""` | no | +| [search\_handler\_errors\_rate\_threshold\_critical](#input\_search\_handler\_errors\_rate\_threshold\_critical) | Handler errors rate critical threshold | `number` | `50` | no | +| [search\_handler\_errors\_rate\_threshold\_warning](#input\_search\_handler\_errors\_rate\_threshold\_warning) | Handler errors rate warning threshold | `number` | `10` | no | +| [search\_handler\_errors\_time\_aggregator](#input\_search\_handler\_errors\_time\_aggregator) | Time aggregator for the Handler errors monitor | `string` | `"min"` | no | +| [search\_handler\_errors\_timeframe](#input\_search\_handler\_errors\_timeframe) | Timeframe for the search handler errors monitor | `string` | `"last_5m"` | no | +| [searcher\_warmup\_time\_aggregator](#input\_searcher\_warmup\_time\_aggregator) | Time aggregator for the searcher warmup time monitor | `string` | `"max"` | no | +| [searcher\_warmup\_time\_enabled](#input\_searcher\_warmup\_time\_enabled) | Flag to enable Solr searcher warmup time monitor | `bool` | `true` | no | +| [searcher\_warmup\_time\_extra\_tags](#input\_searcher\_warmup\_time\_extra\_tags) | Extra tags for searcher warmum time monitor | `list(string)` | `[]` | no | +| [searcher\_warmup\_time\_group\_by](#input\_searcher\_warmup\_time\_group\_by) | Search warmup time tags to group datas | `list(string)` |
[
"instance"
]
| no | +| [searcher\_warmup\_time\_message](#input\_searcher\_warmup\_time\_message) | Custom message for Solr searcher warmup time monitor | `string` | `""` | no | +| [searcher\_warmup\_time\_threshold\_critical](#input\_searcher\_warmup\_time\_threshold\_critical) | Searcher warmup time critical threshold in ms | `number` | `5000` | no | +| [searcher\_warmup\_time\_threshold\_warning](#input\_searcher\_warmup\_time\_threshold\_warning) | Searcher warmup time warning threshold in ms | `number` | `2000` | no | +| [searcher\_warmup\_time\_timeframe](#input\_searcher\_warmup\_time\_timeframe) | Timeframe for the searcher warmup time monitor | `string` | `"last_5m"` | no | ## Outputs | Name | Description | |------|-------------| -| not\_responding\_id | id for monitor not\_responding | -| search\_handler\_errors\_id | id for monitor search\_handler\_errors | -| searcher\_warmup\_time\_id | id for monitor searcher\_warmup\_time | - +| [not\_responding\_id](#output\_not\_responding\_id) | id for monitor not\_responding | +| [search\_handler\_errors\_id](#output\_search\_handler\_errors\_id) | id for monitor search\_handler\_errors | +| [searcher\_warmup\_time\_id](#output\_searcher\_warmup\_time\_id) | id for monitor searcher\_warmup\_time | ## Related documentation - [Integration Datadog & Solr](https://docs.datadoghq.com/integrations/solr/) diff --git a/database/solr/versions.tf b/database/solr/versions.tf index 1c28e79..a5c6a87 100644 --- a/database/solr/versions.tf +++ b/database/solr/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/database/sqlserver/README.md b/database/sqlserver/README.md index 26d6574..c78785c 100644 --- a/database/sqlserver/README.md +++ b/database/sqlserver/README.md @@ -23,33 +23,51 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [filter-tags](#module\_filter-tags) | ../../common/filter-tags | n/a | + +## Resources + +| Name | Type | +|------|------| +| [datadog_monitor.sqlserver_availability](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| environment | Environment | `string` | n/a | yes | -| 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 | -| 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 | -| message | Message sent when an alert is triggered | `any` | n/a | yes | -| new\_host\_delay | Delay in seconds for the metric evaluation | `number` | `300` | no | -| 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 | -| sqlserver\_availability\_enabled | Flag to enable SQL Server availability monitor | `string` | `"true"` | no | -| sqlserver\_availability\_extra\_tags | Extra tags for SQL Server availability monitor | `list(string)` | `[]` | no | -| sqlserver\_availability\_message | Custom message for SQL Server availability monitor | `string` | `""` | no | -| sqlserver\_availability\_no\_data\_timeframe | SQL Server availability monitor no data timeframe | `string` | `10` | no | -| sqlserver\_availability\_threshold\_warning | SQL Server availability monitor (warning threshold) | `string` | `3` | no | +| [environment](#input\_environment) | Environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds for the metric evaluation | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [sqlserver\_availability\_enabled](#input\_sqlserver\_availability\_enabled) | Flag to enable SQL Server availability monitor | `string` | `"true"` | no | +| [sqlserver\_availability\_extra\_tags](#input\_sqlserver\_availability\_extra\_tags) | Extra tags for SQL Server availability monitor | `list(string)` | `[]` | no | +| [sqlserver\_availability\_message](#input\_sqlserver\_availability\_message) | Custom message for SQL Server availability monitor | `string` | `""` | no | +| [sqlserver\_availability\_no\_data\_timeframe](#input\_sqlserver\_availability\_no\_data\_timeframe) | SQL Server availability monitor no data timeframe | `string` | `10` | no | +| [sqlserver\_availability\_threshold\_warning](#input\_sqlserver\_availability\_threshold\_warning) | SQL Server availability monitor (warning threshold) | `string` | `3` | no | ## Outputs | Name | Description | |------|-------------| -| sqlserver\_availability\_id | id for monitor sqlserver\_availability | - +| [sqlserver\_availability\_id](#output\_sqlserver\_availability\_id) | id for monitor sqlserver\_availability | ## Related documentation DataDog documentation: [https://docs.datadoghq.com/integrations/sqlserver/](https://docs.datadoghq.com/integrations/sqlserver/) diff --git a/database/sqlserver/versions.tf b/database/sqlserver/versions.tf index 1c28e79..a5c6a87 100644 --- a/database/sqlserver/versions.tf +++ b/database/sqlserver/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/database/zookeeper/README.md b/database/zookeeper/README.md index 4df7c55..8b8402b 100644 --- a/database/zookeeper/README.md +++ b/database/zookeeper/README.md @@ -24,45 +24,64 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [filter-tags](#module\_filter-tags) | ../../common/filter-tags | n/a | + +## Resources + +| Name | Type | +|------|------| +| [datadog_monitor.datadog_monitor_zookeeper_latency](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 | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| environment | Architecture environment | `string` | n/a | yes | -| 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 | -| 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 | -| message | Message sent when a monitor is triggered | `any` | n/a | yes | -| new\_host\_delay | Delay in seconds before begin to monitor new host | `number` | `300` | no | -| not\_responding\_group\_by | List of tags to use to group data | `list(string)` |
[
"host",
"server"
]
| no | -| not\_responding\_no\_data\_timeframe | Zookeeper monitor no\_data\_timeframe | `number` | `10` | no | -| not\_responding\_notify\_no\_data | Send notification if not\_responding monitor does not retrieve data | `bool` | `true` | no | -| not\_responding\_threshold\_warning | Zookeeper not responding limit (warning threshold) | `number` | `3` | no | -| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | -| zookeeper\_latency\_availability\_extra\_tags | Extra tags for zookeeper read latency monitor | `list(string)` | `[]` | no | -| zookeeper\_latency\_enabled | Flag to enable Zookeeper read latency monitor | `string` | `"true"` | no | -| zookeeper\_latency\_group\_by | Tags to use to group datas | `list(string)` |
[
"host"
]
| no | -| zookeeper\_latency\_status\_message | Custom message for Zookeeper read latency monitor | `string` | `""` | no | -| zookeeper\_latency\_threshold\_critical | Maximum critical acceptable ms of zookeeper latency monitor | `number` | `300000` | no | -| zookeeper\_latency\_threshold\_warning | Maximum warning acceptable ms of zookeeper latency monitor | `number` | `250000` | no | -| zookeeper\_latency\_time\_aggregator | Monitor time aggregator for Zookeeper read latency monitor [available values: min, max or avg] | `string` | `"avg"` | no | -| zookeeper\_latency\_timeframe | Monitor timeframe for Zookeeper read latency monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | -| zookeeper\_not\_responding\_enabled | Flag to enable Zookeeper does not respond monitor | `string` | `"true"` | no | -| zookeeper\_not\_responding\_extra\_tags | Extra tags for Zookeeper does not respond monitor | `list(string)` | `[]` | no | -| zookeeper\_not\_responding\_message | Custom message for Zookeeper does not respond monitor | `string` | `""` | no | -| zookeeper\_not\_responding\_time\_aggregator | Time aggregator for the Zookeeper does not respond monitor | `string` | `"avg"` | no | -| zookeeper\_not\_responding\_timeframe | Timeframe for the does not respond monitor | `string` | `"last_5m"` | no | +| [environment](#input\_environment) | Architecture environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before begin to monitor new host | `number` | `300` | no | +| [not\_responding\_group\_by](#input\_not\_responding\_group\_by) | List of tags to use to group data | `list(string)` |
[
"host",
"server"
]
| no | +| [not\_responding\_no\_data\_timeframe](#input\_not\_responding\_no\_data\_timeframe) | Zookeeper monitor no\_data\_timeframe | `number` | `10` | no | +| [not\_responding\_notify\_no\_data](#input\_not\_responding\_notify\_no\_data) | Send notification if not\_responding monitor does not retrieve data | `bool` | `true` | no | +| [not\_responding\_threshold\_warning](#input\_not\_responding\_threshold\_warning) | Zookeeper not responding limit (warning threshold) | `number` | `3` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [zookeeper\_latency\_availability\_extra\_tags](#input\_zookeeper\_latency\_availability\_extra\_tags) | Extra tags for zookeeper read latency monitor | `list(string)` | `[]` | no | +| [zookeeper\_latency\_enabled](#input\_zookeeper\_latency\_enabled) | Flag to enable Zookeeper read latency monitor | `string` | `"true"` | no | +| [zookeeper\_latency\_group\_by](#input\_zookeeper\_latency\_group\_by) | Tags to use to group datas | `list(string)` |
[
"host"
]
| no | +| [zookeeper\_latency\_status\_message](#input\_zookeeper\_latency\_status\_message) | Custom message for Zookeeper read latency monitor | `string` | `""` | no | +| [zookeeper\_latency\_threshold\_critical](#input\_zookeeper\_latency\_threshold\_critical) | Maximum critical acceptable ms of zookeeper latency monitor | `number` | `300000` | no | +| [zookeeper\_latency\_threshold\_warning](#input\_zookeeper\_latency\_threshold\_warning) | Maximum warning acceptable ms of zookeeper latency monitor | `number` | `250000` | no | +| [zookeeper\_latency\_time\_aggregator](#input\_zookeeper\_latency\_time\_aggregator) | Monitor time aggregator for Zookeeper read latency monitor [available values: min, max or avg] | `string` | `"avg"` | no | +| [zookeeper\_latency\_timeframe](#input\_zookeeper\_latency\_timeframe) | Monitor timeframe for Zookeeper read latency monitor [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_15m"` | no | +| [zookeeper\_not\_responding\_enabled](#input\_zookeeper\_not\_responding\_enabled) | Flag to enable Zookeeper does not respond monitor | `string` | `"true"` | no | +| [zookeeper\_not\_responding\_extra\_tags](#input\_zookeeper\_not\_responding\_extra\_tags) | Extra tags for Zookeeper does not respond monitor | `list(string)` | `[]` | no | +| [zookeeper\_not\_responding\_message](#input\_zookeeper\_not\_responding\_message) | Custom message for Zookeeper does not respond monitor | `string` | `""` | no | +| [zookeeper\_not\_responding\_time\_aggregator](#input\_zookeeper\_not\_responding\_time\_aggregator) | Time aggregator for the Zookeeper does not respond monitor | `string` | `"avg"` | no | +| [zookeeper\_not\_responding\_timeframe](#input\_zookeeper\_not\_responding\_timeframe) | Timeframe for the does not respond monitor | `string` | `"last_5m"` | no | ## Outputs | Name | Description | |------|-------------| -| datadog\_monitor\_zookeeper\_latency\_id | id for monitor datadog\_monitor\_zookeeper\_latency | -| not\_responding\_id | id for monitor not\_responding | - +| [datadog\_monitor\_zookeeper\_latency\_id](#output\_datadog\_monitor\_zookeeper\_latency\_id) | id for monitor datadog\_monitor\_zookeeper\_latency | +| [not\_responding\_id](#output\_not\_responding\_id) | id for monitor not\_responding | ## Related documentation DataDog documentation: [https://docs.datadoghq.com/integrations/zk/](https://docs.datadoghq.com/integrations/zk/) diff --git a/database/zookeeper/versions.tf b/database/zookeeper/versions.tf index 1c28e79..a5c6a87 100644 --- a/database/zookeeper/versions.tf +++ b/database/zookeeper/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/middleware/apache/README.md b/middleware/apache/README.md index 0aeebf2..af17369 100644 --- a/middleware/apache/README.md +++ b/middleware/apache/README.md @@ -23,33 +23,51 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [filter-tags](#module\_filter-tags) | ../../common/filter-tags | n/a | + +## Resources + +| Name | Type | +|------|------| +| [datadog_monitor.datadog_apache_process](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| apache\_connect\_enabled | Flag to enable Apache status monitor | `string` | `"true"` | no | -| apache\_connect\_extra\_tags | Extra tags for Apache process monitor | `list(string)` | `[]` | no | -| apache\_connect\_message | Custom message for Apache status monitor | `string` | `""` | no | -| apache\_connect\_threshold\_warning | Apache status monitor (warning threshold) | `string` | `3` | no | -| datadog\_apache\_process\_no\_data\_timeframe | Number of minutes before reporting no data | `string` | `10` | no | -| environment | Architecture Environment | `string` | n/a | yes | -| 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 | -| 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 | -| 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 | -| 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 | +| [apache\_connect\_enabled](#input\_apache\_connect\_enabled) | Flag to enable Apache status monitor | `string` | `"true"` | no | +| [apache\_connect\_extra\_tags](#input\_apache\_connect\_extra\_tags) | Extra tags for Apache process monitor | `list(string)` | `[]` | no | +| [apache\_connect\_message](#input\_apache\_connect\_message) | Custom message for Apache status monitor | `string` | `""` | no | +| [apache\_connect\_threshold\_warning](#input\_apache\_connect\_threshold\_warning) | Apache status monitor (warning threshold) | `string` | `3` | no | +| [datadog\_apache\_process\_no\_data\_timeframe](#input\_datadog\_apache\_process\_no\_data\_timeframe) | Number of minutes before reporting no data | `string` | `10` | no | +| [environment](#input\_environment) | Architecture Environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | ## Outputs | Name | Description | |------|-------------| -| datadog\_apache\_process\_id | id for monitor datadog\_apache\_process | - +| [datadog\_apache\_process\_id](#output\_datadog\_apache\_process\_id) | id for monitor datadog\_apache\_process | ## Related documentation DataDog documentation: [https://docs.datadoghq.com/integrations/apache/](https://docs.datadoghq.com/integrations/apache/) diff --git a/middleware/apache/versions.tf b/middleware/apache/versions.tf index 1c28e79..a5c6a87 100644 --- a/middleware/apache/versions.tf +++ b/middleware/apache/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/middleware/kong/README.md b/middleware/kong/README.md index 7916d71..fead376 100644 --- a/middleware/kong/README.md +++ b/middleware/kong/README.md @@ -24,41 +24,60 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [filter-tags](#module\_filter-tags) | ../../common/filter-tags | n/a | + +## Resources + +| Name | Type | +|------|------| +| [datadog_monitor.not_responding](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.treatment_limit](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| environment | Architecture Environment | `string` | n/a | yes | -| 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 | -| 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 | -| 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 | -| not\_responding\_enabled | Flag to enable Kong does not respond monitor | `string` | `"true"` | no | -| not\_responding\_extra\_tags | Extra tags for Kong does not respond monitor | `list(string)` | `[]` | no | -| not\_responding\_message | Custom message for Kong does not respond monitor | `string` | `""` | no | -| not\_responding\_no\_data\_timeframe | Kong does not respond monitor no data timeframe | `string` | `10` | no | -| not\_responding\_threshold\_warning | Warning threshold for the service check | `string` | `3` | no | -| 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 | -| treatment\_limit\_enabled | Flag to enable Kong Treatment Limit monitor | `string` | `"true"` | no | -| treatment\_limit\_extra\_tags | Extra tags for Kong Treatment Limit monitor | `list(string)` | `[]` | no | -| treatment\_limit\_message | Custom message for the Kong Treatment Limit monitor | `string` | `""` | no | -| treatment\_limit\_threshold\_critical | Docker Container Memory Usage critical threshold | `string` | `20` | no | -| treatment\_limit\_threshold\_warning | Docker Container Memory Usage warning threshold | `string` | `0` | no | -| treatment\_limit\_time\_aggregator | Time aggregator for the Kong Treatment Limit monitor | `string` | `"min"` | no | -| treatment\_limit\_timeframe | Timeframe for the Kong Treatment Limit monitor | `string` | `"last_15m"` | no | +| [environment](#input\_environment) | Architecture Environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [not\_responding\_enabled](#input\_not\_responding\_enabled) | Flag to enable Kong does not respond monitor | `string` | `"true"` | no | +| [not\_responding\_extra\_tags](#input\_not\_responding\_extra\_tags) | Extra tags for Kong does not respond monitor | `list(string)` | `[]` | no | +| [not\_responding\_message](#input\_not\_responding\_message) | Custom message for Kong does not respond monitor | `string` | `""` | no | +| [not\_responding\_no\_data\_timeframe](#input\_not\_responding\_no\_data\_timeframe) | Kong does not respond monitor no data timeframe | `string` | `10` | no | +| [not\_responding\_threshold\_warning](#input\_not\_responding\_threshold\_warning) | Warning threshold for the service check | `string` | `3` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [treatment\_limit\_enabled](#input\_treatment\_limit\_enabled) | Flag to enable Kong Treatment Limit monitor | `string` | `"true"` | no | +| [treatment\_limit\_extra\_tags](#input\_treatment\_limit\_extra\_tags) | Extra tags for Kong Treatment Limit monitor | `list(string)` | `[]` | no | +| [treatment\_limit\_message](#input\_treatment\_limit\_message) | Custom message for the Kong Treatment Limit monitor | `string` | `""` | no | +| [treatment\_limit\_threshold\_critical](#input\_treatment\_limit\_threshold\_critical) | Docker Container Memory Usage critical threshold | `string` | `20` | no | +| [treatment\_limit\_threshold\_warning](#input\_treatment\_limit\_threshold\_warning) | Docker Container Memory Usage warning threshold | `string` | `0` | no | +| [treatment\_limit\_time\_aggregator](#input\_treatment\_limit\_time\_aggregator) | Time aggregator for the Kong Treatment Limit monitor | `string` | `"min"` | no | +| [treatment\_limit\_timeframe](#input\_treatment\_limit\_timeframe) | Timeframe for the Kong Treatment Limit monitor | `string` | `"last_15m"` | no | ## Outputs | Name | Description | |------|-------------| -| not\_responding\_id | id for monitor not\_responding | -| treatment\_limit\_id | id for monitor treatment\_limit | - +| [not\_responding\_id](#output\_not\_responding\_id) | id for monitor not\_responding | +| [treatment\_limit\_id](#output\_treatment\_limit\_id) | id for monitor treatment\_limit | ## Related documentation * [Datadog Kong integration](https://docs.datadoghq.com/integrations/kong/) diff --git a/middleware/kong/versions.tf b/middleware/kong/versions.tf index 1c28e79..a5c6a87 100644 --- a/middleware/kong/versions.tf +++ b/middleware/kong/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/middleware/nginx/README.md b/middleware/nginx/README.md index 3e81a3d..3591e85 100644 --- a/middleware/nginx/README.md +++ b/middleware/nginx/README.md @@ -24,40 +24,59 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [filter-tags](#module\_filter-tags) | ../../common/filter-tags | n/a | + +## Resources + +| Name | Type | +|------|------| +| [datadog_monitor.datadog_nginx_dropped_connections](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.datadog_nginx_process](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| environment | Architecture Environment | `string` | n/a | yes | -| 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 | -| 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 | -| 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 | -| nginx\_connect\_enabled | Flag to enable Nginx status monitor | `string` | `"true"` | no | -| nginx\_connect\_extra\_tags | Extra tags for Nginx process monitor | `list(string)` | `[]` | no | -| nginx\_connect\_message | Custom message for Nginx status monitor | `string` | `""` | no | -| nginx\_connect\_no\_data\_timeframe | Nginx status monitor no data timeframe | `string` | `10` | no | -| nginx\_connect\_threshold\_warning | Nginx status monitor (warning threshold) | `string` | `3` | no | -| nginx\_dropped\_enabled | Flag to enable Nginx dropped monitor | `string` | `"true"` | no | -| nginx\_dropped\_extra\_tags | Extra tags for Nginx dropped connections monitor | `list(string)` | `[]` | no | -| nginx\_dropped\_message | Custom message for Nginx dropped connections monitor | `string` | `""` | no | -| nginx\_dropped\_threshold\_critical | Nginx dropped connections critical threshold | `number` | `0` | no | -| nginx\_dropped\_time\_aggregator | Monitor aggregator for Nginx dropped connections [available values: min, max or avg] | `string` | `"min"` | no | -| nginx\_dropped\_timeframe | Monitor timeframe for Nginx dropped 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 | -| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [environment](#input\_environment) | Architecture Environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [nginx\_connect\_enabled](#input\_nginx\_connect\_enabled) | Flag to enable Nginx status monitor | `string` | `"true"` | no | +| [nginx\_connect\_extra\_tags](#input\_nginx\_connect\_extra\_tags) | Extra tags for Nginx process monitor | `list(string)` | `[]` | no | +| [nginx\_connect\_message](#input\_nginx\_connect\_message) | Custom message for Nginx status monitor | `string` | `""` | no | +| [nginx\_connect\_no\_data\_timeframe](#input\_nginx\_connect\_no\_data\_timeframe) | Nginx status monitor no data timeframe | `string` | `10` | no | +| [nginx\_connect\_threshold\_warning](#input\_nginx\_connect\_threshold\_warning) | Nginx status monitor (warning threshold) | `string` | `3` | no | +| [nginx\_dropped\_enabled](#input\_nginx\_dropped\_enabled) | Flag to enable Nginx dropped monitor | `string` | `"true"` | no | +| [nginx\_dropped\_extra\_tags](#input\_nginx\_dropped\_extra\_tags) | Extra tags for Nginx dropped connections monitor | `list(string)` | `[]` | no | +| [nginx\_dropped\_message](#input\_nginx\_dropped\_message) | Custom message for Nginx dropped connections monitor | `string` | `""` | no | +| [nginx\_dropped\_threshold\_critical](#input\_nginx\_dropped\_threshold\_critical) | Nginx dropped connections critical threshold | `number` | `0` | no | +| [nginx\_dropped\_time\_aggregator](#input\_nginx\_dropped\_time\_aggregator) | Monitor aggregator for Nginx dropped connections [available values: min, max or avg] | `string` | `"min"` | no | +| [nginx\_dropped\_timeframe](#input\_nginx\_dropped\_timeframe) | Monitor timeframe for Nginx dropped 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](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | ## Outputs | Name | Description | |------|-------------| -| datadog\_nginx\_dropped\_connections\_id | id for monitor datadog\_nginx\_dropped\_connections | -| datadog\_nginx\_process\_id | id for monitor datadog\_nginx\_process | - +| [datadog\_nginx\_dropped\_connections\_id](#output\_datadog\_nginx\_dropped\_connections\_id) | id for monitor datadog\_nginx\_dropped\_connections | +| [datadog\_nginx\_process\_id](#output\_datadog\_nginx\_process\_id) | id for monitor datadog\_nginx\_process | ## Related documentation DataDog documentation: [https://docs.datadoghq.com/integrations/nginx/](https://docs.datadoghq.com/integrations/nginx/) diff --git a/middleware/nginx/versions.tf b/middleware/nginx/versions.tf index 1c28e79..a5c6a87 100644 --- a/middleware/nginx/versions.tf +++ b/middleware/nginx/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/middleware/php-fpm/README.md b/middleware/php-fpm/README.md index d305012..b191831 100644 --- a/middleware/php-fpm/README.md +++ b/middleware/php-fpm/README.md @@ -24,41 +24,60 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [filter-tags](#module\_filter-tags) | ../../common/filter-tags | n/a | + +## Resources + +| Name | Type | +|------|------| +| [datadog_monitor.php_fpm_connect](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.php_fpm_connect_idle](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| environment | Architecture Environment | `string` | n/a | yes | -| 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 | -| 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 | -| 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 | -| notify\_no\_data | Will raise no data alert if set to true | `bool` | `true` | no | -| php\_fpm\_busy\_enabled | Flag to enable PHP FPM busy worker monitor | `string` | `"true"` | no | -| php\_fpm\_busy\_extra\_tags | Extra tags for PHP FPM busy worker monitor | `list(string)` | `[]` | no | -| php\_fpm\_busy\_message | Custom message for PHP FPM busy worker monitor | `string` | `""` | no | -| php\_fpm\_busy\_threshold\_critical | php fpm busy critical threshold | `number` | `90` | no | -| php\_fpm\_busy\_threshold\_warning | php fpm busy warning threshold | `number` | `80` | no | -| php\_fpm\_busy\_time\_aggregator | Monitor aggregator for PHP FPM busy worker [available values: min, max or avg] | `string` | `"avg"` | no | -| php\_fpm\_busy\_timeframe | Monitor timeframe for PHP FPM busy worker [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_10m"` | no | -| php\_fpm\_connect\_enabled | Flag to enable PHP FPM status monitor | `string` | `"true"` | no | -| php\_fpm\_connect\_extra\_tags | Extra tags for PHP FPM status monitor | `list(string)` | `[]` | no | -| php\_fpm\_connect\_message | Custom message for PHP FPM status monitor | `string` | `""` | no | -| php\_fpm\_connect\_no\_data\_timeframe | PHP FPM status monitor no data timeframe | `string` | `10` | no | -| php\_fpm\_connect\_threshold\_warning | PHP FPM status monitor (warning threshold) | `string` | `3` | no | -| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [environment](#input\_environment) | Architecture Environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [php\_fpm\_busy\_enabled](#input\_php\_fpm\_busy\_enabled) | Flag to enable PHP FPM busy worker monitor | `string` | `"true"` | no | +| [php\_fpm\_busy\_extra\_tags](#input\_php\_fpm\_busy\_extra\_tags) | Extra tags for PHP FPM busy worker monitor | `list(string)` | `[]` | no | +| [php\_fpm\_busy\_message](#input\_php\_fpm\_busy\_message) | Custom message for PHP FPM busy worker monitor | `string` | `""` | no | +| [php\_fpm\_busy\_threshold\_critical](#input\_php\_fpm\_busy\_threshold\_critical) | php fpm busy critical threshold | `number` | `90` | no | +| [php\_fpm\_busy\_threshold\_warning](#input\_php\_fpm\_busy\_threshold\_warning) | php fpm busy warning threshold | `number` | `80` | no | +| [php\_fpm\_busy\_time\_aggregator](#input\_php\_fpm\_busy\_time\_aggregator) | Monitor aggregator for PHP FPM busy worker [available values: min, max or avg] | `string` | `"avg"` | no | +| [php\_fpm\_busy\_timeframe](#input\_php\_fpm\_busy\_timeframe) | Monitor timeframe for PHP FPM busy worker [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_10m"` | no | +| [php\_fpm\_connect\_enabled](#input\_php\_fpm\_connect\_enabled) | Flag to enable PHP FPM status monitor | `string` | `"true"` | no | +| [php\_fpm\_connect\_extra\_tags](#input\_php\_fpm\_connect\_extra\_tags) | Extra tags for PHP FPM status monitor | `list(string)` | `[]` | no | +| [php\_fpm\_connect\_message](#input\_php\_fpm\_connect\_message) | Custom message for PHP FPM status monitor | `string` | `""` | no | +| [php\_fpm\_connect\_no\_data\_timeframe](#input\_php\_fpm\_connect\_no\_data\_timeframe) | PHP FPM status monitor no data timeframe | `string` | `10` | no | +| [php\_fpm\_connect\_threshold\_warning](#input\_php\_fpm\_connect\_threshold\_warning) | PHP FPM status monitor (warning threshold) | `string` | `3` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | ## Outputs | Name | Description | |------|-------------| -| php\_fpm\_connect\_id | id for monitor php\_fpm\_connect | -| php\_fpm\_connect\_idle\_id | id for monitor php\_fpm\_connect\_idle | - +| [php\_fpm\_connect\_id](#output\_php\_fpm\_connect\_id) | id for monitor php\_fpm\_connect | +| [php\_fpm\_connect\_idle\_id](#output\_php\_fpm\_connect\_idle\_id) | id for monitor php\_fpm\_connect\_idle | ## Related documentation DataDog documentation: [https://docs.datadoghq.com/integrations/php_fpm/](https://docs.datadoghq.com/integrations/php_fpm/) diff --git a/middleware/php-fpm/versions.tf b/middleware/php-fpm/versions.tf index 1c28e79..a5c6a87 100644 --- a/middleware/php-fpm/versions.tf +++ b/middleware/php-fpm/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/network/dns/README.md b/network/dns/README.md index 2f21bb3..4e0e5b6 100644 --- a/network/dns/README.md +++ b/network/dns/README.md @@ -23,33 +23,51 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [filter-tags](#module\_filter-tags) | ../../common/filter-tags | n/a | + +## Resources + +| Name | Type | +|------|------| +| [datadog_monitor.cannot_resolve](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| cannot\_resolve\_enabled | Flag to enable DNS cannot resolve monitor | `string` | `"true"` | no | -| cannot\_resolve\_extra\_tags | Extra tags for DNS cannot resolve monitor | `list(string)` | `[]` | no | -| cannot\_resolve\_message | Custom message for DNS cannot resolve monitor | `string` | `""` | no | -| cannot\_resolve\_no\_data\_timeframe | DNS cannot resolve monitor no data timeframe | `string` | `10` | no | -| cannot\_resolve\_threshold\_warning | DNS cannot resolve monitor (warning threshold) | `string` | `3` | no | -| environment | Architecture Environment | `string` | n/a | yes | -| 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 | -| 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 | -| 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 | -| 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 | +| [cannot\_resolve\_enabled](#input\_cannot\_resolve\_enabled) | Flag to enable DNS cannot resolve monitor | `string` | `"true"` | no | +| [cannot\_resolve\_extra\_tags](#input\_cannot\_resolve\_extra\_tags) | Extra tags for DNS cannot resolve monitor | `list(string)` | `[]` | no | +| [cannot\_resolve\_message](#input\_cannot\_resolve\_message) | Custom message for DNS cannot resolve monitor | `string` | `""` | no | +| [cannot\_resolve\_no\_data\_timeframe](#input\_cannot\_resolve\_no\_data\_timeframe) | DNS cannot resolve monitor no data timeframe | `string` | `10` | no | +| [cannot\_resolve\_threshold\_warning](#input\_cannot\_resolve\_threshold\_warning) | DNS cannot resolve monitor (warning threshold) | `string` | `3` | no | +| [environment](#input\_environment) | Architecture Environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | ## Outputs | Name | Description | |------|-------------| -| cannot\_resolve\_id | id for monitor cannot\_resolve | - +| [cannot\_resolve\_id](#output\_cannot\_resolve\_id) | id for monitor cannot\_resolve | ## Related documentation - [Datadog DNS integration](https://docs.datadoghq.com/integrations/dns_check/) diff --git a/network/dns/versions.tf b/network/dns/versions.tf index 1c28e79..a5c6a87 100644 --- a/network/dns/versions.tf +++ b/network/dns/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/network/http/ssl/README.md b/network/http/ssl/README.md index 94f3d54..fb05c32 100644 --- a/network/http/ssl/README.md +++ b/network/http/ssl/README.md @@ -24,40 +24,59 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a | + +## Resources + +| Name | Type | +|------|------| +| [datadog_monitor.certificate_expiration_date](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.invalid_ssl_certificate](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| certificate\_expiration\_date\_enabled | Flag to enable Certificate Expiration Date monitor | `string` | `"false"` | no | -| certificate\_expiration\_date\_extra\_tags | Extra tags for Certificate Expiration Date monitor | `list(string)` | `[]` | no | -| certificate\_expiration\_date\_message | Custom message for the Certificate Expiration Date monitor | `string` | `""` | no | -| certificate\_expiration\_date\_threshold\_critical | Certificate Expiration Date critical threshold | `string` | `15` | no | -| certificate\_expiration\_date\_threshold\_warning | Certificate Expiration Date warning threshold | `string` | `30` | no | -| certificate\_expiration\_date\_time\_aggregator | Time aggregator for the Certificate Expiration Date monitor | `string` | `"max"` | no | -| certificate\_expiration\_date\_timeframe | Timeframe for the Certificate Expiration Date monitor | `string` | `"last_5m"` | no | -| environment | Architecture Environment | `string` | n/a | yes | -| 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 | -| 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 | -| invalid\_ssl\_certificate\_enabled | Flag to enable SSL invalid certificate monitor | `string` | `"true"` | no | -| invalid\_ssl\_certificate\_extra\_tags | Extra tags for SSL invalid certificate monitor | `list(string)` | `[]` | no | -| invalid\_ssl\_certificate\_message | Custom message for SSL invalid certificate monitor | `string` | `""` | no | -| invalid\_ssl\_certificate\_no\_data\_timeframe | SSL invalid certificate monitor no data timeframe | `string` | `10` | no | -| invalid\_ssl\_certificate\_threshold\_warning | SSL invalid certificate monitor (warning threshold) | `string` | `3` | no | -| 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 | -| 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 | +| [certificate\_expiration\_date\_enabled](#input\_certificate\_expiration\_date\_enabled) | Flag to enable Certificate Expiration Date monitor | `string` | `"false"` | no | +| [certificate\_expiration\_date\_extra\_tags](#input\_certificate\_expiration\_date\_extra\_tags) | Extra tags for Certificate Expiration Date monitor | `list(string)` | `[]` | no | +| [certificate\_expiration\_date\_message](#input\_certificate\_expiration\_date\_message) | Custom message for the Certificate Expiration Date monitor | `string` | `""` | no | +| [certificate\_expiration\_date\_threshold\_critical](#input\_certificate\_expiration\_date\_threshold\_critical) | Certificate Expiration Date critical threshold | `string` | `15` | no | +| [certificate\_expiration\_date\_threshold\_warning](#input\_certificate\_expiration\_date\_threshold\_warning) | Certificate Expiration Date warning threshold | `string` | `30` | no | +| [certificate\_expiration\_date\_time\_aggregator](#input\_certificate\_expiration\_date\_time\_aggregator) | Time aggregator for the Certificate Expiration Date monitor | `string` | `"max"` | no | +| [certificate\_expiration\_date\_timeframe](#input\_certificate\_expiration\_date\_timeframe) | Timeframe for the Certificate Expiration Date monitor | `string` | `"last_5m"` | no | +| [environment](#input\_environment) | Architecture Environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [invalid\_ssl\_certificate\_enabled](#input\_invalid\_ssl\_certificate\_enabled) | Flag to enable SSL invalid certificate monitor | `string` | `"true"` | no | +| [invalid\_ssl\_certificate\_extra\_tags](#input\_invalid\_ssl\_certificate\_extra\_tags) | Extra tags for SSL invalid certificate monitor | `list(string)` | `[]` | no | +| [invalid\_ssl\_certificate\_message](#input\_invalid\_ssl\_certificate\_message) | Custom message for SSL invalid certificate monitor | `string` | `""` | no | +| [invalid\_ssl\_certificate\_no\_data\_timeframe](#input\_invalid\_ssl\_certificate\_no\_data\_timeframe) | SSL invalid certificate monitor no data timeframe | `string` | `10` | no | +| [invalid\_ssl\_certificate\_threshold\_warning](#input\_invalid\_ssl\_certificate\_threshold\_warning) | SSL invalid certificate monitor (warning threshold) | `string` | `3` | no | +| [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | ## Outputs | Name | Description | |------|-------------| -| certificate\_expiration\_date\_id | id for monitor certificate\_expiration\_date | -| invalid\_ssl\_certificate\_id | id for monitor invalid\_ssl\_certificate | - +| [certificate\_expiration\_date\_id](#output\_certificate\_expiration\_date\_id) | id for monitor certificate\_expiration\_date | +| [invalid\_ssl\_certificate\_id](#output\_invalid\_ssl\_certificate\_id) | id for monitor invalid\_ssl\_certificate | ## Related documentation diff --git a/network/http/ssl/versions.tf b/network/http/ssl/versions.tf index 1c28e79..a5c6a87 100644 --- a/network/http/ssl/versions.tf +++ b/network/http/ssl/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/network/http/webcheck/README.md b/network/http/webcheck/README.md index 75cd2bb..d821219 100644 --- a/network/http/webcheck/README.md +++ b/network/http/webcheck/README.md @@ -23,32 +23,50 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [filter-tags](#module\_filter-tags) | ../../../common/filter-tags | n/a | + +## Resources + +| Name | Type | +|------|------| +| [datadog_monitor.cannot_connect](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| cannot\_connect\_enabled | Flag to enable HTTP cannot connect monitor | `string` | `"true"` | no | -| cannot\_connect\_extra\_tags | Extra tags for HTTP cannot connect monitor | `list(string)` | `[]` | no | -| cannot\_connect\_message | Custom message for HTTP cannot connect monitor | `string` | `""` | no | -| cannot\_connect\_no\_data\_timeframe | HTTP cannot connect monitor no data timeframe | `string` | `10` | no | -| cannot\_connect\_threshold\_warning | HTTP cannot connect monitor (warning threshold) | `string` | `3` | no | -| environment | Architecture Environment | `string` | n/a | yes | -| 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 | -| 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 | -| 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 | -| 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 | +| [cannot\_connect\_enabled](#input\_cannot\_connect\_enabled) | Flag to enable HTTP cannot connect monitor | `string` | `"true"` | no | +| [cannot\_connect\_extra\_tags](#input\_cannot\_connect\_extra\_tags) | Extra tags for HTTP cannot connect monitor | `list(string)` | `[]` | no | +| [cannot\_connect\_message](#input\_cannot\_connect\_message) | Custom message for HTTP cannot connect monitor | `string` | `""` | no | +| [cannot\_connect\_no\_data\_timeframe](#input\_cannot\_connect\_no\_data\_timeframe) | HTTP cannot connect monitor no data timeframe | `string` | `10` | no | +| [cannot\_connect\_threshold\_warning](#input\_cannot\_connect\_threshold\_warning) | HTTP cannot connect monitor (warning threshold) | `string` | `3` | no | +| [environment](#input\_environment) | Architecture Environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | ## Outputs | Name | Description | |------|-------------| -| cannot\_connect\_id | id for monitor cannot\_connect | - +| [cannot\_connect\_id](#output\_cannot\_connect\_id) | id for monitor cannot\_connect | ## Related documentation diff --git a/network/http/webcheck/versions.tf b/network/http/webcheck/versions.tf index 1c28e79..a5c6a87 100644 --- a/network/http/webcheck/versions.tf +++ b/network/http/webcheck/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/network/tls/README.md b/network/tls/README.md index 8d003a5..fe12cad 100644 --- a/network/tls/README.md +++ b/network/tls/README.md @@ -26,51 +26,72 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [filter-tags](#module\_filter-tags) | ../../common/filter-tags | n/a | + +## Resources + +| Name | Type | +|------|------| +| [datadog_monitor.cannot_connect](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.certificate_expiration_date](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.invalid_tls_certificate](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.tls_certificate_expiration](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| cannot\_connect\_enabled | Flag to enable TLS cannot connect monitor | `string` | `"true"` | no | -| cannot\_connect\_extra\_tags | Extra tags for TLS cannot connect monitor | `list(string)` | `[]` | no | -| cannot\_connect\_message | Custom message for TLS cannot connect monitor | `string` | `""` | no | -| cannot\_connect\_no\_data\_timeframe | TLS cannot connect monitor no data timeframe | `string` | `10` | no | -| cannot\_connect\_threshold\_warning | TLS cannot connect monitor (warning threshold) | `string` | `3` | no | -| certificate\_expiration\_date\_enabled | Flag to enable Certificate Expiration Date monitor | `string` | `"false"` | no | -| certificate\_expiration\_date\_extra\_tags | Extra tags for Certificate Expiration Date monitor | `list(string)` | `[]` | no | -| certificate\_expiration\_date\_message | Custom message for the Certificate Expiration Date monitor | `string` | `""` | no | -| certificate\_expiration\_date\_threshold\_critical | Container Memory Usage critical threshold | `string` | `15` | no | -| certificate\_expiration\_date\_threshold\_warning | Container Memory Usage warning threshold | `string` | `30` | no | -| certificate\_expiration\_date\_time\_aggregator | Time aggregator for the Certificate Expiration Date monitor | `string` | `"max"` | no | -| certificate\_expiration\_date\_timeframe | Timeframe for the Certificate Expiration Date monitor | `string` | `"last_5m"` | no | -| environment | Architecture Environment | `string` | n/a | yes | -| 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 | -| 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 | -| invalid\_tls\_certificate\_enabled | Flag to enable TLS certificate expiration monitor | `string` | `"true"` | no | -| invalid\_tls\_certificate\_extra\_tags | Extra tags for TLS certificate expiration monitor | `list(string)` | `[]` | no | -| invalid\_tls\_certificate\_message | Custom message for TLS certificate expiration monitor | `string` | `""` | no | -| invalid\_tls\_certificate\_threshold\_warning | TLS certificate expiration monitor (warning threshold) | `string` | `3` | no | -| 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 | -| 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 | -| tls\_certificate\_expiration\_enabled | Flag to enable TLS certificate expiration monitor | `string` | `"true"` | no | -| tls\_certificate\_expiration\_extra\_tags | Extra tags for TLS certificate expiration monitor | `list(string)` | `[]` | no | -| tls\_certificate\_expiration\_message | Custom message for TLS certificate expiration monitor | `string` | `""` | no | -| tls\_certificate\_expiration\_threshold\_warning | TLS certificate expiration monitor (warning threshold) | `string` | `5` | no | +| [cannot\_connect\_enabled](#input\_cannot\_connect\_enabled) | Flag to enable TLS cannot connect monitor | `string` | `"true"` | no | +| [cannot\_connect\_extra\_tags](#input\_cannot\_connect\_extra\_tags) | Extra tags for TLS cannot connect monitor | `list(string)` | `[]` | no | +| [cannot\_connect\_message](#input\_cannot\_connect\_message) | Custom message for TLS cannot connect monitor | `string` | `""` | no | +| [cannot\_connect\_no\_data\_timeframe](#input\_cannot\_connect\_no\_data\_timeframe) | TLS cannot connect monitor no data timeframe | `string` | `10` | no | +| [cannot\_connect\_threshold\_warning](#input\_cannot\_connect\_threshold\_warning) | TLS cannot connect monitor (warning threshold) | `string` | `3` | no | +| [certificate\_expiration\_date\_enabled](#input\_certificate\_expiration\_date\_enabled) | Flag to enable Certificate Expiration Date monitor | `string` | `"false"` | no | +| [certificate\_expiration\_date\_extra\_tags](#input\_certificate\_expiration\_date\_extra\_tags) | Extra tags for Certificate Expiration Date monitor | `list(string)` | `[]` | no | +| [certificate\_expiration\_date\_message](#input\_certificate\_expiration\_date\_message) | Custom message for the Certificate Expiration Date monitor | `string` | `""` | no | +| [certificate\_expiration\_date\_threshold\_critical](#input\_certificate\_expiration\_date\_threshold\_critical) | Container Memory Usage critical threshold | `string` | `15` | no | +| [certificate\_expiration\_date\_threshold\_warning](#input\_certificate\_expiration\_date\_threshold\_warning) | Container Memory Usage warning threshold | `string` | `30` | no | +| [certificate\_expiration\_date\_time\_aggregator](#input\_certificate\_expiration\_date\_time\_aggregator) | Time aggregator for the Certificate Expiration Date monitor | `string` | `"max"` | no | +| [certificate\_expiration\_date\_timeframe](#input\_certificate\_expiration\_date\_timeframe) | Timeframe for the Certificate Expiration Date monitor | `string` | `"last_5m"` | no | +| [environment](#input\_environment) | Architecture Environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [invalid\_tls\_certificate\_enabled](#input\_invalid\_tls\_certificate\_enabled) | Flag to enable TLS certificate expiration monitor | `string` | `"true"` | no | +| [invalid\_tls\_certificate\_extra\_tags](#input\_invalid\_tls\_certificate\_extra\_tags) | Extra tags for TLS certificate expiration monitor | `list(string)` | `[]` | no | +| [invalid\_tls\_certificate\_message](#input\_invalid\_tls\_certificate\_message) | Custom message for TLS certificate expiration monitor | `string` | `""` | no | +| [invalid\_tls\_certificate\_threshold\_warning](#input\_invalid\_tls\_certificate\_threshold\_warning) | TLS certificate expiration monitor (warning threshold) | `string` | `3` | no | +| [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [tls\_certificate\_expiration\_enabled](#input\_tls\_certificate\_expiration\_enabled) | Flag to enable TLS certificate expiration monitor | `string` | `"true"` | no | +| [tls\_certificate\_expiration\_extra\_tags](#input\_tls\_certificate\_expiration\_extra\_tags) | Extra tags for TLS certificate expiration monitor | `list(string)` | `[]` | no | +| [tls\_certificate\_expiration\_message](#input\_tls\_certificate\_expiration\_message) | Custom message for TLS certificate expiration monitor | `string` | `""` | no | +| [tls\_certificate\_expiration\_threshold\_warning](#input\_tls\_certificate\_expiration\_threshold\_warning) | TLS certificate expiration monitor (warning threshold) | `string` | `5` | no | ## Outputs | Name | Description | |------|-------------| -| cannot\_connect\_id | id for monitor cannot\_connect | -| certificate\_expiration\_date\_id | id for monitor certificate\_expiration\_date | -| invalid\_tls\_certificate\_id | id for monitor invalid\_tls\_certificate | -| tls\_certificate\_expiration\_id | id for monitor tls\_certificate\_expiration | - +| [cannot\_connect\_id](#output\_cannot\_connect\_id) | id for monitor cannot\_connect | +| [certificate\_expiration\_date\_id](#output\_certificate\_expiration\_date\_id) | id for monitor certificate\_expiration\_date | +| [invalid\_tls\_certificate\_id](#output\_invalid\_tls\_certificate\_id) | id for monitor invalid\_tls\_certificate | +| [tls\_certificate\_expiration\_id](#output\_tls\_certificate\_expiration\_id) | id for monitor tls\_certificate\_expiration | ## Related documentation - [Datadog TLS integration](https://docs.datadoghq.com/integrations/tls/) diff --git a/network/tls/versions.tf b/network/tls/versions.tf index 1c28e79..a5c6a87 100644 --- a/network/tls/versions.tf +++ b/network/tls/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/saas/new-relic/README.md b/saas/new-relic/README.md index cdb56d9..9d78193 100644 --- a/saas/new-relic/README.md +++ b/saas/new-relic/README.md @@ -24,43 +24,62 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [filter-tags](#module\_filter-tags) | ../../common/filter-tags | n/a | + +## Resources + +| Name | Type | +|------|------| +| [datadog_monitor.app_apdex_score](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.app_error_rate](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| app\_apdex\_score\_enabled | Flag to enable APP Apdex Score monitor | `string` | `"true"` | no | -| app\_apdex\_score\_extra\_tags | Extra tags for New Relic APP Apdex Score monitor | `list(string)` | `[]` | no | -| app\_apdex\_score\_message | Custom message for the APP Apdex Score monitor | `string` | `""` | no | -| app\_apdex\_score\_threshold\_critical | APP Apdex Score critical threshold | `string` | `0.25` | no | -| app\_apdex\_score\_threshold\_warning | APP Apdex Score warning threshold | `string` | `0.5` | no | -| app\_apdex\_score\_time\_aggregator | Time aggregator for the APP Apdex Score monitor | `string` | `"avg"` | no | -| app\_apdex\_score\_timeframe | Timeframe for the APP Apdex Score monitor | `string` | `"last_15m"` | no | -| app\_error\_rate\_enabled | Flag to enable APP Error Rate monitor | `string` | `"true"` | no | -| app\_error\_rate\_extra\_tags | Extra tags for New Relic APP Error Rate monitor | `list(string)` | `[]` | no | -| app\_error\_rate\_message | Custom message for the APP Error Rate monitor | `string` | `""` | no | -| app\_error\_rate\_threshold\_critical | APP Error Rate critical threshold | `string` | `5` | no | -| app\_error\_rate\_threshold\_warning | APP Error Rate warning threshold | `string` | `1` | no | -| app\_error\_rate\_time\_aggregator | Time aggregator for the APP Error Rate monitor | `string` | `"min"` | no | -| app\_error\_rate\_timeframe | Timeframe for the APP Error Rate monitor | `string` | `"last_5m"` | no | -| environment | Architecture Environment | `string` | n/a | yes | -| 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 | -| 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 | -| 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 | -| 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 | +| [app\_apdex\_score\_enabled](#input\_app\_apdex\_score\_enabled) | Flag to enable APP Apdex Score monitor | `string` | `"true"` | no | +| [app\_apdex\_score\_extra\_tags](#input\_app\_apdex\_score\_extra\_tags) | Extra tags for New Relic APP Apdex Score monitor | `list(string)` | `[]` | no | +| [app\_apdex\_score\_message](#input\_app\_apdex\_score\_message) | Custom message for the APP Apdex Score monitor | `string` | `""` | no | +| [app\_apdex\_score\_threshold\_critical](#input\_app\_apdex\_score\_threshold\_critical) | APP Apdex Score critical threshold | `string` | `0.25` | no | +| [app\_apdex\_score\_threshold\_warning](#input\_app\_apdex\_score\_threshold\_warning) | APP Apdex Score warning threshold | `string` | `0.5` | no | +| [app\_apdex\_score\_time\_aggregator](#input\_app\_apdex\_score\_time\_aggregator) | Time aggregator for the APP Apdex Score monitor | `string` | `"avg"` | no | +| [app\_apdex\_score\_timeframe](#input\_app\_apdex\_score\_timeframe) | Timeframe for the APP Apdex Score monitor | `string` | `"last_15m"` | no | +| [app\_error\_rate\_enabled](#input\_app\_error\_rate\_enabled) | Flag to enable APP Error Rate monitor | `string` | `"true"` | no | +| [app\_error\_rate\_extra\_tags](#input\_app\_error\_rate\_extra\_tags) | Extra tags for New Relic APP Error Rate monitor | `list(string)` | `[]` | no | +| [app\_error\_rate\_message](#input\_app\_error\_rate\_message) | Custom message for the APP Error Rate monitor | `string` | `""` | no | +| [app\_error\_rate\_threshold\_critical](#input\_app\_error\_rate\_threshold\_critical) | APP Error Rate critical threshold | `string` | `5` | no | +| [app\_error\_rate\_threshold\_warning](#input\_app\_error\_rate\_threshold\_warning) | APP Error Rate warning threshold | `string` | `1` | no | +| [app\_error\_rate\_time\_aggregator](#input\_app\_error\_rate\_time\_aggregator) | Time aggregator for the APP Error Rate monitor | `string` | `"min"` | no | +| [app\_error\_rate\_timeframe](#input\_app\_error\_rate\_timeframe) | Timeframe for the APP Error Rate monitor | `string` | `"last_5m"` | no | +| [environment](#input\_environment) | Architecture Environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `900` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | ## Outputs | Name | Description | |------|-------------| -| app\_apdex\_score\_id | id for monitor app\_apdex\_score | -| app\_error\_rate\_id | id for monitor app\_error\_rate | - +| [app\_apdex\_score\_id](#output\_app\_apdex\_score\_id) | id for monitor app\_apdex\_score | +| [app\_error\_rate\_id](#output\_app\_error\_rate\_id) | id for monitor app\_error\_rate | ## Related documentation * [Datadog New Relic integration](https://docs.datadoghq.com/integrations/new_relic/) diff --git a/saas/new-relic/versions.tf b/saas/new-relic/versions.tf index 1c28e79..a5c6a87 100644 --- a/saas/new-relic/versions.tf +++ b/saas/new-relic/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/scripts b/scripts index 5a7cb7b..f234d1c 160000 --- a/scripts +++ b/scripts @@ -1 +1 @@ -Subproject commit 5a7cb7bfefb12a178c01c4becf9a893b98723f6c +Subproject commit f234d1c92f0e816d9a129c279afded4fe5828c0d diff --git a/system/generic/README.md b/system/generic/README.md index 4733d56..0c4aca4 100644 --- a/system/generic/README.md +++ b/system/generic/README.md @@ -30,81 +30,105 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [filter-tags](#module\_filter-tags) | ../../common/filter-tags | n/a | +| [filter-tags-disk](#module\_filter-tags-disk) | ../../common/filter-tags | n/a | + +## Resources + +| Name | Type | +|------|------| +| [datadog_monitor.cpu](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.disk_inodes](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.disk_space](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.disk_space_forecast](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.load](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | +| [datadog_monitor.memory](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| cpu\_enabled | Flag to enable CPU high monitor | `string` | `"true"` | no | -| cpu\_extra\_tags | Extra tags for CPU high monitor | `list(string)` | `[]` | no | -| cpu\_message | Custom message for CPU high monitor | `string` | `""` | no | -| cpu\_threshold\_critical | CPU high critical threshold | `number` | `90` | no | -| cpu\_threshold\_warning | CPU high warning threshold | `number` | `85` | no | -| cpu\_time\_aggregator | Monitor aggregator for CPU high [available values: min, max or avg] | `string` | `"min"` | no | -| cpu\_timeframe | Monitor timeframe for CPU high [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_1h"` | no | -| disk\_inodes\_enabled | Flag to enable Free disk inodes monitor | `string` | `"true"` | no | -| disk\_inodes\_extra\_tags | Extra tags for Free disk inodes monitor | `list(string)` | `[]` | no | -| disk\_inodes\_message | Custom message for Free disk inodes monitor | `string` | `""` | no | -| disk\_inodes\_threshold\_critical | Free disk space critical threshold | `number` | `95` | no | -| disk\_inodes\_threshold\_warning | Free disk space warning threshold | `number` | `90` | no | -| disk\_inodes\_time\_aggregator | Monitor aggregator for Free disk inodes [available values: min, max or avg] | `string` | `"min"` | no | -| disk\_inodes\_timeframe | Monitor timeframe for Free disk inodes [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | -| disk\_space\_enabled | Flag to enable Free diskspace monitor | `string` | `"true"` | no | -| disk\_space\_extra\_tags | Extra tags for Free diskspace monitor | `list(string)` | `[]` | no | -| disk\_space\_forecast\_algorithm | Algorithm for the Free diskspace Forecast monitor [available values: `linear` or `seasonal`] | `string` | `"linear"` | no | -| disk\_space\_forecast\_deviations | Deviations for the Free diskspace Forecast monitor [available values: `1`, `2`, `3`, `4` or `5`] | `string` | `1` | no | -| disk\_space\_forecast\_enabled | Flag to enable Free diskspace forecast monitor | `string` | `"true"` | no | -| disk\_space\_forecast\_extra\_tags | Extra tags for Free diskspace forecast monitor | `list(string)` | `[]` | no | -| disk\_space\_forecast\_interval | Interval for the Free diskspace Forecast monitor [available values: `30m`, `60m` or `120m`] | `string` | `"60m"` | no | -| disk\_space\_forecast\_linear\_history | History for the Free diskspace Forecast monitor [available values: `12h`, `#d` (1, 2, or 3), `#w` (1, or 2) or `#mo` (1, 2 or 3)] | `string` | `"1w"` | no | -| disk\_space\_forecast\_linear\_model | Model for the Free diskspace Forecast monitor [available values: `default`, `simple` or `reactive`] | `string` | `"default"` | no | -| disk\_space\_forecast\_message | Custom message for Free diskspace forecast monitor | `string` | `""` | no | -| disk\_space\_forecast\_seasonal\_seasonality | Seasonality for the Free diskspace Forecast monitor | `string` | `"weekly"` | no | -| disk\_space\_forecast\_threshold\_critical | Free disk space forecast critical threshold | `number` | `80` | no | -| disk\_space\_forecast\_threshold\_critical\_recovery | Free disk space forecast recovery threshold | `number` | `72` | no | -| disk\_space\_forecast\_time\_aggregator | Monitor aggregator for Free diskspace forecast [available values: min, max or avg] | `string` | `"max"` | no | -| disk\_space\_forecast\_timeframe | Monitor timeframe for Free diskspace forecast [available values: `next_12h`, `next_#d` (1, 2, or 3), `next_#w` (1 or 2) or `next_#mo` (1, 2 or 3)] | `string` | `"next_1w"` | no | -| disk\_space\_message | Custom message for Free diskspace monitor | `string` | `""` | no | -| disk\_space\_threshold\_critical | Free disk space critical threshold | `number` | `90` | no | -| disk\_space\_threshold\_warning | Free disk space warning threshold | `number` | `80` | no | -| disk\_space\_time\_aggregator | Monitor aggregator for Free diskspace [available values: min, max or avg] | `string` | `"max"` | no | -| disk\_space\_timeframe | Monitor timeframe for Free diskspace [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 | -| 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 | -| 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 | -| load\_enabled | Flag to enable CPU load ratio monitor | `string` | `"true"` | no | -| load\_extra\_tags | Extra tags for CPU load ratio monitor | `list(string)` | `[]` | no | -| load\_message | Custom message for CPU load ratio monitor | `string` | `""` | no | -| load\_threshold\_critical | CPU load ratio critical threshold | `number` | `2.5` | no | -| load\_threshold\_warning | CPU load ratio warning threshold | `number` | `2` | no | -| load\_time\_aggregator | Monitor aggregator for CPU load ratio [available values: min, max or avg] | `string` | `"min"` | no | -| load\_timeframe | Monitor timeframe for CPU load ratio [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_30m"` | no | -| memory\_enabled | Flag to enable Free memory monitor | `string` | `"true"` | no | -| memory\_extra\_tags | Extra tags for Free memory monitor | `list(string)` | `[]` | no | -| memory\_message | Mandatory message for Free memory monitor to avoid NBH alerting by default | `string` | n/a | yes | -| memory\_threshold\_critical | Free disk space critical threshold | `number` | `5` | no | -| memory\_threshold\_warning | Free disk space warning threshold | `number` | `10` | no | -| memory\_time\_aggregator | Monitor aggregator for Free memory [available values: min, max or avg] | `string` | `"max"` | no | -| memory\_timeframe | Monitor timeframe for Free memory [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 | -| 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 | -| prefix\_slug | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [cpu\_enabled](#input\_cpu\_enabled) | Flag to enable CPU high monitor | `string` | `"true"` | no | +| [cpu\_extra\_tags](#input\_cpu\_extra\_tags) | Extra tags for CPU high monitor | `list(string)` | `[]` | no | +| [cpu\_message](#input\_cpu\_message) | Custom message for CPU high monitor | `string` | `""` | no | +| [cpu\_threshold\_critical](#input\_cpu\_threshold\_critical) | CPU high critical threshold | `number` | `90` | no | +| [cpu\_threshold\_warning](#input\_cpu\_threshold\_warning) | CPU high warning threshold | `number` | `85` | no | +| [cpu\_time\_aggregator](#input\_cpu\_time\_aggregator) | Monitor aggregator for CPU high [available values: min, max or avg] | `string` | `"min"` | no | +| [cpu\_timeframe](#input\_cpu\_timeframe) | Monitor timeframe for CPU high [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_1h"` | no | +| [disk\_inodes\_enabled](#input\_disk\_inodes\_enabled) | Flag to enable Free disk inodes monitor | `string` | `"true"` | no | +| [disk\_inodes\_extra\_tags](#input\_disk\_inodes\_extra\_tags) | Extra tags for Free disk inodes monitor | `list(string)` | `[]` | no | +| [disk\_inodes\_message](#input\_disk\_inodes\_message) | Custom message for Free disk inodes monitor | `string` | `""` | no | +| [disk\_inodes\_threshold\_critical](#input\_disk\_inodes\_threshold\_critical) | Free disk space critical threshold | `number` | `95` | no | +| [disk\_inodes\_threshold\_warning](#input\_disk\_inodes\_threshold\_warning) | Free disk space warning threshold | `number` | `90` | no | +| [disk\_inodes\_time\_aggregator](#input\_disk\_inodes\_time\_aggregator) | Monitor aggregator for Free disk inodes [available values: min, max or avg] | `string` | `"min"` | no | +| [disk\_inodes\_timeframe](#input\_disk\_inodes\_timeframe) | Monitor timeframe for Free disk inodes [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | +| [disk\_space\_enabled](#input\_disk\_space\_enabled) | Flag to enable Free diskspace monitor | `string` | `"true"` | no | +| [disk\_space\_extra\_tags](#input\_disk\_space\_extra\_tags) | Extra tags for Free diskspace monitor | `list(string)` | `[]` | no | +| [disk\_space\_forecast\_algorithm](#input\_disk\_space\_forecast\_algorithm) | Algorithm for the Free diskspace Forecast monitor [available values: `linear` or `seasonal`] | `string` | `"linear"` | no | +| [disk\_space\_forecast\_deviations](#input\_disk\_space\_forecast\_deviations) | Deviations for the Free diskspace Forecast monitor [available values: `1`, `2`, `3`, `4` or `5`] | `string` | `1` | no | +| [disk\_space\_forecast\_enabled](#input\_disk\_space\_forecast\_enabled) | Flag to enable Free diskspace forecast monitor | `string` | `"true"` | no | +| [disk\_space\_forecast\_extra\_tags](#input\_disk\_space\_forecast\_extra\_tags) | Extra tags for Free diskspace forecast monitor | `list(string)` | `[]` | no | +| [disk\_space\_forecast\_interval](#input\_disk\_space\_forecast\_interval) | Interval for the Free diskspace Forecast monitor [available values: `30m`, `60m` or `120m`] | `string` | `"60m"` | no | +| [disk\_space\_forecast\_linear\_history](#input\_disk\_space\_forecast\_linear\_history) | History for the Free diskspace Forecast monitor [available values: `12h`, `#d` (1, 2, or 3), `#w` (1, or 2) or `#mo` (1, 2 or 3)] | `string` | `"1w"` | no | +| [disk\_space\_forecast\_linear\_model](#input\_disk\_space\_forecast\_linear\_model) | Model for the Free diskspace Forecast monitor [available values: `default`, `simple` or `reactive`] | `string` | `"default"` | no | +| [disk\_space\_forecast\_message](#input\_disk\_space\_forecast\_message) | Custom message for Free diskspace forecast monitor | `string` | `""` | no | +| [disk\_space\_forecast\_seasonal\_seasonality](#input\_disk\_space\_forecast\_seasonal\_seasonality) | Seasonality for the Free diskspace Forecast monitor | `string` | `"weekly"` | no | +| [disk\_space\_forecast\_threshold\_critical](#input\_disk\_space\_forecast\_threshold\_critical) | Free disk space forecast critical threshold | `number` | `80` | no | +| [disk\_space\_forecast\_threshold\_critical\_recovery](#input\_disk\_space\_forecast\_threshold\_critical\_recovery) | Free disk space forecast recovery threshold | `number` | `72` | no | +| [disk\_space\_forecast\_time\_aggregator](#input\_disk\_space\_forecast\_time\_aggregator) | Monitor aggregator for Free diskspace forecast [available values: min, max or avg] | `string` | `"max"` | no | +| [disk\_space\_forecast\_timeframe](#input\_disk\_space\_forecast\_timeframe) | Monitor timeframe for Free diskspace forecast [available values: `next_12h`, `next_#d` (1, 2, or 3), `next_#w` (1 or 2) or `next_#mo` (1, 2 or 3)] | `string` | `"next_1w"` | no | +| [disk\_space\_message](#input\_disk\_space\_message) | Custom message for Free diskspace monitor | `string` | `""` | no | +| [disk\_space\_threshold\_critical](#input\_disk\_space\_threshold\_critical) | Free disk space critical threshold | `number` | `90` | no | +| [disk\_space\_threshold\_warning](#input\_disk\_space\_threshold\_warning) | Free disk space warning threshold | `number` | `80` | no | +| [disk\_space\_time\_aggregator](#input\_disk\_space\_time\_aggregator) | Monitor aggregator for Free diskspace [available values: min, max or avg] | `string` | `"max"` | no | +| [disk\_space\_timeframe](#input\_disk\_space\_timeframe) | Monitor timeframe for Free diskspace [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | +| [environment](#input\_environment) | Architecture Environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [load\_enabled](#input\_load\_enabled) | Flag to enable CPU load ratio monitor | `string` | `"true"` | no | +| [load\_extra\_tags](#input\_load\_extra\_tags) | Extra tags for CPU load ratio monitor | `list(string)` | `[]` | no | +| [load\_message](#input\_load\_message) | Custom message for CPU load ratio monitor | `string` | `""` | no | +| [load\_threshold\_critical](#input\_load\_threshold\_critical) | CPU load ratio critical threshold | `number` | `2.5` | no | +| [load\_threshold\_warning](#input\_load\_threshold\_warning) | CPU load ratio warning threshold | `number` | `2` | no | +| [load\_time\_aggregator](#input\_load\_time\_aggregator) | Monitor aggregator for CPU load ratio [available values: min, max or avg] | `string` | `"min"` | no | +| [load\_timeframe](#input\_load\_timeframe) | Monitor timeframe for CPU load ratio [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_30m"` | no | +| [memory\_enabled](#input\_memory\_enabled) | Flag to enable Free memory monitor | `string` | `"true"` | no | +| [memory\_extra\_tags](#input\_memory\_extra\_tags) | Extra tags for Free memory monitor | `list(string)` | `[]` | no | +| [memory\_message](#input\_memory\_message) | Mandatory message for Free memory monitor to avoid NBH alerting by default | `string` | n/a | yes | +| [memory\_threshold\_critical](#input\_memory\_threshold\_critical) | Free disk space critical threshold | `number` | `5` | no | +| [memory\_threshold\_warning](#input\_memory\_threshold\_warning) | Free disk space warning threshold | `number` | `10` | no | +| [memory\_time\_aggregator](#input\_memory\_time\_aggregator) | Monitor aggregator for Free memory [available values: min, max or avg] | `string` | `"max"` | no | +| [memory\_timeframe](#input\_memory\_timeframe) | Monitor timeframe for Free memory [available values: `last_#m` (1, 5, 10, 15, or 30), `last_#h` (1, 2, or 4), or `last_1d`] | `string` | `"last_5m"` | no | +| [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | ## Outputs | Name | Description | |------|-------------| -| cpu\_id | id for monitor cpu | -| disk\_inodes\_id | id for monitor disk\_inodes | -| disk\_space\_forecast\_id | id for monitor disk\_space\_forecast | -| disk\_space\_id | id for monitor disk\_space | -| load\_id | id for monitor load | -| memory\_id | id for monitor memory | - +| [cpu\_id](#output\_cpu\_id) | id for monitor cpu | +| [disk\_inodes\_id](#output\_disk\_inodes\_id) | id for monitor disk\_inodes | +| [disk\_space\_forecast\_id](#output\_disk\_space\_forecast\_id) | id for monitor disk\_space\_forecast | +| [disk\_space\_id](#output\_disk\_space\_id) | id for monitor disk\_space | +| [load\_id](#output\_load\_id) | id for monitor load | +| [memory\_id](#output\_memory\_id) | id for monitor memory | ## Related documentation DataDog documentation: diff --git a/system/generic/versions.tf b/system/generic/versions.tf index 1c28e79..a5c6a87 100644 --- a/system/generic/versions.tf +++ b/system/generic/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } } diff --git a/system/unreachable/README.md b/system/unreachable/README.md index 654ded8..62941a4 100644 --- a/system/unreachable/README.md +++ b/system/unreachable/README.md @@ -23,31 +23,49 @@ Creates DataDog monitors with the following checks: | Name | Version | |------|---------| -| terraform | >= 0.12.31 | +| [terraform](#requirement\_terraform) | >= 0.12.31 | +| [datadog](#requirement\_datadog) | >= 3.1.0 | + +## Providers + +| Name | Version | +|------|---------| +| [datadog](#provider\_datadog) | 3.1.2 | + +## Modules + +| Name | Source | Version | +|------|--------|---------| +| [filter-tags](#module\_filter-tags) | ../../common/filter-tags | n/a | + +## Resources + +| Name | Type | +|------|------| +| [datadog_monitor.host_unreachable](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/monitor) | resource | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| -| environment | Architecture Environment | `string` | n/a | yes | -| 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 | -| 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 | -| 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 | -| 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 | -| unreachable\_enabled | Flag to enable Host unreachable monitor | `string` | `"true"` | no | -| unreachable\_extra\_tags | Extra tags for Host unreachable monitor | `list(string)` | `[]` | no | -| unreachable\_message | Custom message for Host unreachable monitor | `string` | `""` | no | -| unreachable\_no\_data\_timeframe | Timeframe for Host unreachable monitor to alert on no data | `string` | `20` | no | +| [environment](#input\_environment) | Architecture Environment | `string` | n/a | yes | +| [evaluation\_delay](#input\_evaluation\_delay) | Delay in seconds for the metric evaluation | `number` | `15` | no | +| [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](#input\_filter\_tags\_custom\_excluded) | Tags excluded for custom filtering when filter\_tags\_use\_defaults is false | `string` | `""` | no | +| [filter\_tags\_use\_defaults](#input\_filter\_tags\_use\_defaults) | Use default filter tags convention | `string` | `"true"` | no | +| [message](#input\_message) | Message sent when an alert is triggered | `any` | n/a | yes | +| [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | +| [notify\_no\_data](#input\_notify\_no\_data) | Will raise no data alert if set to true | `bool` | `true` | no | +| [prefix\_slug](#input\_prefix\_slug) | Prefix string to prepend between brackets on every monitors names | `string` | `""` | no | +| [unreachable\_enabled](#input\_unreachable\_enabled) | Flag to enable Host unreachable monitor | `string` | `"true"` | no | +| [unreachable\_extra\_tags](#input\_unreachable\_extra\_tags) | Extra tags for Host unreachable monitor | `list(string)` | `[]` | no | +| [unreachable\_message](#input\_unreachable\_message) | Custom message for Host unreachable monitor | `string` | `""` | no | +| [unreachable\_no\_data\_timeframe](#input\_unreachable\_no\_data\_timeframe) | Timeframe for Host unreachable monitor to alert on no data | `string` | `20` | no | ## Outputs | Name | Description | |------|-------------| -| host\_unreachable\_id | id for monitor host\_unreachable | - +| [host\_unreachable\_id](#output\_host\_unreachable\_id) | id for monitor host\_unreachable | ## Related documentation diff --git a/system/unreachable/versions.tf b/system/unreachable/versions.tf index 1c28e79..a5c6a87 100644 --- a/system/unreachable/versions.tf +++ b/system/unreachable/versions.tf @@ -1,7 +1,7 @@ terraform { required_providers { datadog = { - source = "DataDog/datadog" + source = "DataDog/datadog" version = ">= 3.1.0" } }