variable "aws_region" {
  default     = "us-east-1"
  description = "AWS region"
}

variable "environment" {
  description = "Available values:  dev, qa, prod."
  default     = "qa"
}

variable "application_family" {
  default = "user-platform"
}

variable "team" {
  default = "accounts-platform"
}

variable "service_name" {
  default = "gda-sks-leads"
}

variable "lambda_name" {
  default = "lambda-gda-sks-leads"
}

variable "lambda_handler" {
  default = "src.app.handler"
}

variable "lambda_provisioned_concurrent_executions" {
  default = 1
}

variable "msk_cluster_name" {
  description = "MSK cluster name to read from."
  default     = "qa-managed-kafka-artist-diy"
}

variable "kafka_topic" {
  description = "Kafka topic to send messages to."
  default     = "event.gdaLeads"
}

variable "kafka_offset_topic" {
  description = "Kafka topic to store consumed offsets."
  default     = "event.gdaLeads.offsets"
}

variable "group_id" {
  description = "Consumer group id."
  default     = "qa-salesforce-leads-poller"
}

variable "salesforce_domain" {
  description = "Salesforce domain (should be 'test' for any sandbox)"
  default     = "test"
}

variable "dlq_enabled" {
  description = "Enable lambda DLQ"
  default     = true
}

variable "datadog_advanced_enabled" {
  description = "Enabled DataDog monitoring."
  default     = true
}

variable "cloudwatch_event_schedule" {
  description = "The schedule for cloudwatch event-based invocations. Specify a cron() or rate() expression"
  default     = "rate(30 minutes)"
}

variable "datadog_notification_endpoints" {
  description = "DataDog notification endpoints - no notifications for qa."
  default     = ""
}

variable "datadog_error_monitor_threshold" {
  description = "number of failed invocations caused by errors before alerting"
  default     = 3
}

variable "datadog_warning_monitor_threshold" {
  description = "warning threshold for failed invocation monitor"
  default     = 1
}

variable "datadog_recovery_threshold" {
  description = "recovery threshold for lambda error monitor"
  default     = 1
}
