From c6d629309a43fff6d3e4b3f15b31fa7fa5b73764 Mon Sep 17 00:00:00 2001 From: Florent DELAHAYE Date: Thu, 19 Sep 2024 11:08:42 +0200 Subject: [PATCH] feat: variabilize (cron)jobs groups (#59) * feat: variabilize (cron)jobs groups * doc: update readme --------- Co-authored-by: Florent DELAHAYE --- caas/kubernetes/workload/README.md | 2 ++ caas/kubernetes/workload/inputs.tf | 8 ++++++++ caas/kubernetes/workload/locals.tf | 6 ++++-- caas/kubernetes/workload/monitors-k8s-workload.tf | 4 ++-- 4 files changed, 16 insertions(+), 4 deletions(-) diff --git a/caas/kubernetes/workload/README.md b/caas/kubernetes/workload/README.md index d8476911..3f7650c1 100644 --- a/caas/kubernetes/workload/README.md +++ b/caas/kubernetes/workload/README.md @@ -61,6 +61,7 @@ Creates DataDog monitors with the following checks: | [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 | +| [cronjobfailed\_group\_by](#input\_cronjobfailed\_group\_by) | n/a | `list` |
[
"kube_cronjob"
]
| no | | [deployment\_group\_by](#input\_deployment\_group\_by) | Select group by element on deployment monitors | `list` |
[
"kube_namespace",
"kube_deployment",
"kube_cluster_name"
]
| 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 | @@ -72,6 +73,7 @@ Creates DataDog monitors with the following checks: | [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 | +| [jobfailed\_group\_by](#input\_jobfailed\_group\_by) | n/a | `list` |
[
"kube_job",
"kube_cluster_name"
]
| no | | [message](#input\_message) | Message sent when a monitor is triggered | `any` | n/a | yes | | [new\_group\_delay](#input\_new\_group\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | | [new\_host\_delay](#input\_new\_host\_delay) | Delay in seconds before monitor new resource | `number` | `300` | no | diff --git a/caas/kubernetes/workload/inputs.tf b/caas/kubernetes/workload/inputs.tf index 00b2f034..338cb9e3 100644 --- a/caas/kubernetes/workload/inputs.tf +++ b/caas/kubernetes/workload/inputs.tf @@ -223,3 +223,11 @@ variable "deployment_group_by" { default = ["kube_namespace", "kube_deployment", "kube_cluster_name"] description = "Select group by element on deployment monitors" } + +variable "jobfailed_group_by" { + default = ["kube_job", "kube_cluster_name"] +} + +variable "cronjobfailed_group_by" { + default = ["kube_cronjob"] +} diff --git a/caas/kubernetes/workload/locals.tf b/caas/kubernetes/workload/locals.tf index ca4bbf6a..a4b621c1 100644 --- a/caas/kubernetes/workload/locals.tf +++ b/caas/kubernetes/workload/locals.tf @@ -1,4 +1,6 @@ locals { - replica_group_by = join(", ", var.replica_group_by) - deployment_group_by = join(", ", var.deployment_group_by) + replica_group_by = join(", ", var.replica_group_by) + deployment_group_by = join(", ", var.deployment_group_by) + jobfailed_group_by = join(", ", [for i in var.jobfailed_group_by : format("%q", i)]) + cronjobfailed_group_by = join(", ", [for i in var.cronjobfailed_group_by : format("%q", i)]) } diff --git a/caas/kubernetes/workload/monitors-k8s-workload.tf b/caas/kubernetes/workload/monitors-k8s-workload.tf index 128aa543..7cceb884 100644 --- a/caas/kubernetes/workload/monitors-k8s-workload.tf +++ b/caas/kubernetes/workload/monitors-k8s-workload.tf @@ -5,7 +5,7 @@ resource "datadog_monitor" "job" { type = "service check" query = <