【发布时间】:2019-05-07 00:04:25
【问题描述】:
我正在尝试为我的 firehose 捕获 Cloudwatch 日志,以便在将数据发送到 S3 目的地时发现任何错误。我创建了一个带有日志记录详细信息的 cloudformation 模板
"CloudWatchLoggingOptions" : {
"Enabled" : "true",
"LogGroupName": "/aws/firehose/firehose-dev", -->firehose-dev is my firehosedeliverystream name
"LogStreamName" : "s3logs"
},
我已为创建 loggroupname 和 streamname 提供必要的 IAM 权限。
{
"Sid": "",
"Effect": "Allow",
"Action": [
"logs:CreateLogGroup",
"logs:CreateLogStream",
"logs:PutLogEvents"
],
"Resource": [
"arn:aws:logs:*:*:*"
]
}
当我触发模板时,我没有在 cloudwatch 日志中找到任何日志组名和流名。
但是当我们为AWS::Lambda 资源授予相同的 IAM 权限时,它会自动创建一个日志组名称(即/aws/lambda/mylambdaname)并将日志发送到该组。但是为什么这种情况不适用于 firehose 呢?
作为一种解决方法
我正在手动创建名称为/aws/firehose/firehose-dev 的AWS::Logs::LogGroup 资源和名称为s3logs 的AWS::Logs::LogStream 资源。
Firehose 还会创建一个日志组名称和日志流名称 自动,如果我们使用 控制台。
当通过 cloudformation 配置时,firehose 不能像 aws lambda 那样自动创建日志组名称和日志流名称吗?
谢谢 任何帮助表示赞赏
【问题讨论】:
-
进展如何?问题依然存在?
标签: amazon-web-services amazon-cloudformation amazon-kinesis-firehose amazon-cloudwatchlogs