terraform-modules/observability/variables.tf

118 lines
2.6 KiB
HCL

variable "project_id" {
description = "STACKIT project ID"
type = string
}
variable "name" {
description = "Observability instance name"
type = string
}
variable "plan_name" {
description = "Observability plan name"
type = string
}
variable "acl" {
description = "Allowed CIDR list"
type = list(string)
default = null
}
variable "metrics_retention_days" {
description = "Retention days raw metrics"
type = number
default = null
}
variable "metrics_retention_days_5m_downsampling" {
description = "Retention days 5m downsample"
type = number
default = null
}
variable "metrics_retention_days_1h_downsampling" {
description = "Retention days 1h downsample"
type = number
default = null
}
variable "alert_config" {
description = "Alertmanager config object"
type = any
default = null
}
variable "parameters" {
description = "Extra key/value parameters"
type = map(string)
default = null
}
variable "create_credentials" {
description = "Create credentials"
type = bool
default = true
}
variable "credentials_count" {
description = "Credential count when enabled"
type = number
default = 1
}
variable "alertgroups" {
description = "Map of alert-groups to create"
type = map(object({
name = string
interval = optional(string)
rules = list(object({
alert = string
expression = string
for = optional(string)
labels = optional(map(string))
annotations = optional(map(string))
}))
}))
default = {}
}
variable "logalertgroups" {
description = "Map of log-alert-groups to create"
type = map(object({
name = string
interval = optional(string)
rules = list(object({
alert = string
expression = string
for = optional(string)
labels = optional(map(string))
annotations = optional(map(string))
}))
}))
default = {}
}
variable "scrapeconfigs" {
description = "Map of scrape-configs to create"
type = map(object({
name = string
metrics_path = string
targets = list(object({
urls = list(string)
labels = optional(map(string))
}))
basic_auth = optional(object({
username = string
password = string
}))
saml2 = optional(object({
enable_url_parameters = optional(bool)
}))
sample_limit = optional(number)
scheme = optional(string)
scrape_interval = optional(string)
scrape_timeout = optional(string)
}))
default = {}
}