module "fargate_service_dashboard" {
  source = "git@github.com:theorchard/terraform-datadog.git//modules/service?ref=6.13.4"

  environment                       = var.environment
  environment_type                  = "fargate"
  service_name                      = var.service_name
  application_family                = var.application_family
  critical_number_5xx               = var.critical_number_5xx
  critical_recovery_number_5xx      = var.critical_recovery_number_5xx
  warning_number_5xx                = var.warning_number_5xx
  warning_recovery_number_5xx       = var.warning_recovery_number_5xx
  notification_endpoints            = var.notification_endpoints
  escalation_notification_endpoints = var.escalation_notification_endpoints
  additional_tags                   = { service_type : "critical" }
  teams                             = [var.application_family]
  dependent_applications            = var.dependent_applications

  healthy_tasks_monitor_enabled = true
  service_4xx_monitor_enabled   = false
  service_5xx_monitor_enabled   = true
  service_cpu_monitor_enabled   = true
  service_cpu_time_window       = var.cpu_time_window
}

module "ows_video_rds_dashboard" {
  source = "git@github.com:theorchard/terraform-datadog.git//modules/rds?ref=6.13.4"

  application_family = var.application_family
  environment        = var.environment
  service_name       = var.service_name

  notification_endpoints            = var.notification_endpoints
  escalation_notification_endpoints = var.escalation_notification_endpoints
}

module "datadog" {
  source = "git@github.com:theorchard/terraform-datadog.git//modules/s3?ref=6.13.4"

  environment                       = var.environment
  service_name                      = var.video_assets_bucket_name
  application_family                = var.application_family
  teams                             = ["devops"]
  notification_endpoints            = "@slack-backup-alerts"
  escalation_notification_endpoints = "@slack-backup-alerts"

  dashboard_configuration = {
    enabled                       = true
    show_advanced_storage_metrics = true
    show_replication_metrics      = true
    show_activity_metrics         = true
  }
  replication_failures_monitor_configuration = {
    enabled = true
  }
  replication_latency_monitor_configuration = {
    enabled = true
  }
}
