Я пытаюсь добавить логику в мой скрипт terraform, чтобы при создании лямбды добавлялась логика хранения CW, чтобы наши журналы очищались через 30 дней. Я вижу, что при запуске terraform для обновления существующей лямбды (которая была развернута до того, как была добавлена моя новая логика хранения) моя работа завершается с ошибкой ниже.
aws_cloudwatch_log_group.lambda-deploy: 1 произошла ошибка:
aws_cloudwatch_log_group.lambda-deploy: Ошибка создания группы журналов CloudWatch: ResourceAlreadyExistsException: указанная группа журналов уже существует, код состояния: 400, идентификатор запроса: e500eb50-4a81-11e9-9c08-7152b4a0ad31: группа журналов CloudWatch '/ aws / lambda / {lambda-name} 'уже существует.
Ниже показано, как мне настроить мой код terraform:
resource "aws_lambda_function" "lambda-deploy" {
filename = "${var.filename}"
function_name = "${var.functionname}"
role = "${var.role}"
handler = "${var.handler}"
runtime = "${var.runtime}"
publish = "${var.publish}"
memory_size = "${var.memory_size}"
timeout = "${var.timeout}"
description = "${var.description}"
layers = "${var.layers}"
environment {
variables = "${var.envVars}"
}
tags {
PLATFORM = "${var.tag_PLATFORM}"
BUSINESS_UNIT = "${var.tag_BUSINESS_UNIT}"
CLIENT = "${var.tag_CLIENT}"
BUSINESS_REGION = "${var.tag_BUSINESS_REGION}"
}
vpc_config {
subnet_ids = "${var.subnet_ids}"
security_group_ids = "${var.security_group_ids}"
}
}
#Below logic will add cloud watch retention logic so logs rotate after 30 days.
resource "aws_cloudwatch_log_group" "lambda-deploy" {
name = "/aws/lambda/${aws_lambda_function.lambda-deploy.function_name}"
retention_in_days = "30"
}
У меня вопрос: возможно ли для ресурса aws_cloudwatch_log_group проверить, была ли создана группа cloudwatch, и просто обновить политику хранения вместо попытки создания группы журналов?