我测试了广泛策略访问的变体,并得到了相同的结果 - 创建了日志组,但没有创建日志流。
已关注 https://docs.aws.amazon.com/amazon-mq/latest/developer-guide/amazon-mq-configuring-cloudwatch-logs.html预期结果是在 CloudWatch 中获取这些消息,但没有收到任何消息。
目标是在 CloudWatch 中拥有审核和常规 MQ 日志。 有人设法在 CloudWatch 中流式传输 MQ 日志吗?我怎样才能进一步调试这个?
最佳答案
我成功创建了启用日志记录的 Amazon MQ Broker,并使用 terraform 的提供程序 1.43.2 将日志消息发布到 Cloudwatch - 我的项目锁定了较旧的 tf 提供程序版本,因此如果您使用的是较新的应该没问题
这是我第一次没有正确理解的策略,需要 MQ 发布到 Cloudwatch:
data "aws_iam_policy_document" "mq-log-publishing-policy" {
statement {
actions = [
"logs:CreateLogStream",
"logs:PutLogEvents",
]
resources = ["arn:aws:logs:*:*:log-group:/aws/amazonmq/*"]
principals {
identifiers = ["mq.amazonaws.com"]
type = "Service"
}
}
}
resource "aws_cloudwatch_log_resource_policy" "mq-log-publishing-policy" {
policy_document = "${data.aws_iam_policy_document.mq-log-publishing-policy.json}"
policy_name = "mq-log-publishing-policy"
}
确保已正确应用此策略,否则 Cloudwatch 上不会出现任何结果。我使用 aws cli 执行此操作:
aws --profile my-testing-profile-name --region my-profile-region logs describe-resource-policies
您应该在输出中看到该策略。
关于amazon-web-services - Amazon MQ 无法在 CloudWatch 中发布日志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53707273/