Files
grafana-terraform/environments/dev/adibrov/locals.tf

77 lines
2.2 KiB
Terraform
Raw Normal View History

locals {
# Определяем HTTP заголовки на основе значения disable_provenance
grafana_headers = {
"X-Disable-Provenance" = var.disable_provenance ? "true" : "false"
}
# IRM escalation chains
# ID пользователей/расписаний хранятся в Vault: app/groups/monitoring/grafana/dev/ext
irm_escalation_chains = [
{
name = "infra-default"
steps = [
{
type = "notify_persons"
persons_to_notify = [data.vault_kv_secret_v2.secret_ext.data["irm_user_adibrov"]]
},
{
type = "wait"
duration_seconds = 300
},
{
type = "notify_persons"
persons_to_notify = [data.vault_kv_secret_v2.secret_ext.data["irm_user_adibrov"]]
important = true
},
{
type = "repeat_escalation"
}
]
}
]
2026-03-25 07:31:02 +03:00
# Contact points configuration
contact_points = [
{
name = "default"
type = "slack"
is_default = true
settings = {
webhook_url = data.vault_kv_secret_v2.secret_ext.data["mmwebhook_default"]
template = "../../modules/grafana_contact_points/template/alerts_message_mm.template"
2026-03-25 07:31:02 +03:00
}
},
2026-03-25 07:31:02 +03:00
{
name = "infra-alerts-critical"
type = "slack"
is_default = false
settings = {
webhook_url = data.vault_kv_secret_v2.secret_ext.data["mmwebhook_infra_alerts_critical"]
template = "../../modules/grafana_contact_points/template/alerts_message_mm.template"
2026-03-25 07:31:02 +03:00
}
},
2026-03-25 07:31:02 +03:00
{
name = "infra-alerts-informational"
type = "slack"
is_default = false
settings = {
webhook_url = data.vault_kv_secret_v2.secret_ext.data["mmwebhook_infra_alerts_info"]
template = "../../modules/grafana_contact_points/template/alerts_message_mm.template"
2026-03-25 07:31:02 +03:00
}
},
2026-03-25 07:31:02 +03:00
{
name = "infra-alerts-test"
type = "slack"
is_default = false
settings = {
webhook_url = data.vault_kv_secret_v2.secret_ext.data["mmwebhook_infra_alerts_test"]
template = "../../modules/grafana_contact_points/template/alerts_message_mm.template"
2026-03-25 07:31:02 +03:00
}
}
]
}