地形 - aws_cloud_watch_log_metric_filter
Terraform - aws_cloud_watch_log_metric_filter
有没有人尝试过在 cloudwatch 日志上设置指标过滤器?想知道我是否在 Terraform 中发现了错误?
这就是我想要做的;
resource "aws_cloudwatch_log_metric_filter" "AWS_Console_Login" {
name = "${var.aws_account_id}_Console_Login_Failure"
pattern = "{ ($.eventName = ConsoleLogin) && ($.errorMessage = "Failed authentication") }"
log_group_name = "${var.aws_cloudtrail_name}"
metric_transformation {
name = "${var.aws_account_id}_Console_Login_Failure"
namespace = "AccountMonitoring${var.aws_account_id}"
value = "1"
}
}
当我 运行 Terraform 应用或验证时,我收到此响应;
错误:在 157:19 处解析 cloudwatch.tf 时出错:需要嵌套对象:LBRACE 得到:ASSIGN
要清楚 157:19 涉及包含 log_group_name 的代码行,其中 19 在 = 符号之前。
但是我认为这与我的模式有关,如果我删除日志组..并且 运行 我得到一个验证;
aws_cloudwatch_log_metric_filter.AWS_Console_Login: : 无效或未知密钥:失败
我对 AWS 过滤器模式的要求是不是太高了?
谢谢
斯蒂芬
尝试转义引号。这是语法错误。问题不是 log_group_name
行。就是上面那个。
resource "aws_cloudwatch_log_metric_filter" "AWS_Console_Login" {
name = "${var.aws_account_id}_Console_Login_Failure"
pattern = "{ ($.eventName = ConsoleLogin) && ($.errorMessage = \"Failed authentication\") }"
log_group_name = "${var.aws_cloudtrail_name}"
metric_transformation {
name = "${var.aws_account_id}_Console_Login_Failure"
namespace = "AccountMonitoring${var.aws_account_id}"
value = "1"
}
}
这看起来不错。你应该看看tflint。它是 Visual Studio 代码的 Terraform 插件的一部分,可帮助我找到错误所在。
有没有人尝试过在 cloudwatch 日志上设置指标过滤器?想知道我是否在 Terraform 中发现了错误?
这就是我想要做的;
resource "aws_cloudwatch_log_metric_filter" "AWS_Console_Login" {
name = "${var.aws_account_id}_Console_Login_Failure"
pattern = "{ ($.eventName = ConsoleLogin) && ($.errorMessage = "Failed authentication") }"
log_group_name = "${var.aws_cloudtrail_name}"
metric_transformation {
name = "${var.aws_account_id}_Console_Login_Failure"
namespace = "AccountMonitoring${var.aws_account_id}"
value = "1"
}
}
当我 运行 Terraform 应用或验证时,我收到此响应;
错误:在 157:19 处解析 cloudwatch.tf 时出错:需要嵌套对象:LBRACE 得到:ASSIGN
要清楚 157:19 涉及包含 log_group_name 的代码行,其中 19 在 = 符号之前。
但是我认为这与我的模式有关,如果我删除日志组..并且 运行 我得到一个验证;
aws_cloudwatch_log_metric_filter.AWS_Console_Login: : 无效或未知密钥:失败
我对 AWS 过滤器模式的要求是不是太高了?
谢谢 斯蒂芬
尝试转义引号。这是语法错误。问题不是 log_group_name
行。就是上面那个。
resource "aws_cloudwatch_log_metric_filter" "AWS_Console_Login" {
name = "${var.aws_account_id}_Console_Login_Failure"
pattern = "{ ($.eventName = ConsoleLogin) && ($.errorMessage = \"Failed authentication\") }"
log_group_name = "${var.aws_cloudtrail_name}"
metric_transformation {
name = "${var.aws_account_id}_Console_Login_Failure"
namespace = "AccountMonitoring${var.aws_account_id}"
value = "1"
}
}
这看起来不错。你应该看看tflint。它是 Visual Studio 代码的 Terraform 插件的一部分,可帮助我找到错误所在。