Zha*_* Yi 3 amazon-web-services amazon-cloudwatch terraform
我创建一个规则,Cloudwatch并附加一个log group作为其目标Terraform。
resource "aws_cloudwatch_event_target" "trigger_glue_job_lambda" {
rule = "${aws_cloudwatch_event_rule.crawler.name}"
target_id = "SendToLambda"
arn = "${aws_lambda_function.trigger_glue_job.arn}"
}
resource "aws_cloudwatch_event_target" "log_glue_crawler_result" {
rule = "${aws_cloudwatch_event_rule.crawler.name}"
target_id = "LogCrawler"
arn = "${aws_cloudwatch_log_group.grue_crawler_log_group.arn}"
}
resource "aws_cloudwatch_log_group" "grue_crawler_log_group" {
name = "crawler_log"
tags = {
Application = "reddit_movies"
}
}
Run Code Online (Sandbox Code Playgroud)
您会看到上面的配置包括一个log group资源定义和两个event target,一个用于日志组,另一个用于触发 lambda。以下是 aws cloudwatch 规则控制台中此配置的屏幕截图。
您会看到屏幕截图底部的目标正确显示了 lambda,但没有显示我创建的日志组的名称。相反,它显示*日志组名称的 。我想知道我的配置有什么问题。
小智 6
在检查了cloudwatch 日志组的arn属性的值后,由于某种原因,它在这种格式格式的末尾附加了一个星号arn:aws:logs:eu-west-1:12345678912:log-group:crawler_log:*
像这样更改代码以删除最后 2 个字符:
resource "aws_cloudwatch_event_target" "log_glue_crawler_result" {
rule = "${aws_cloudwatch_event_rule.crawler.name}"
target_id = "LogCrawler"
arn = "${substr(aws_cloudwatch_log_group.grue_crawler_log_group.arn,0,length(aws_cloudwatch_log_group.grue_crawler_log_group.arn) - 2)}"
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1058 次 |
| 最近记录: |