resource "aws_cloudwatch_log_group" "log_groups" {
  for_each = toset(local.cloudwatch_log_group_suffixes)

  name              = "${local.cloudwatch_log_group_prefix}-${each.value}"
  kms_key_id        = aws_kms_key.kms_key.arn
  retention_in_days = var.log_retention_in_days
  tags              = local.tags
}

resource "aws_cloudwatch_log_subscription_filter" "datadog_log_subscription_filters" {
  for_each = var.log_forward_to_datadog_enabled ? toset(local.cloudwatch_log_group_suffixes) : toset([])

  log_group_name  = aws_cloudwatch_log_group.log_groups[each.value].name
  name            = "${aws_cloudwatch_log_group.log_groups[each.value].name}-logs-subscription-filter"
  filter_pattern  = ""
  destination_arn = local.datadog_lambda_arn
  distribution    = "ByLogStream"
}
