AWS RDS 慢查询、常规和审计日志已消失。无法启用增强监控

AWS RDS 慢查询、常规和审计日志已消失。无法启用增强监控

我已在我们的生产和 UAT RDS 数据库中启用了 AWS RDS 增强监控。它们连接到 ERP 实例。

我在调试用户问题时寻找慢查询,并且审计日志、常规日志和慢速查询日志已消失。

它们曾经启用过,现在也仍然启用。它们曾经在 CloudWatch 中。尽管我们保留了 1 年以上,但一个也没有剩下。

如果我进入控制面板并点击“已发布日志”中的超链接,CloudWatch 会说

There was an error filtering log events
The specified log group does not exist

在此处输入图片描述

错误日志确实存在,并且没有显示任何日志错误。

我还尝试关闭其他日志,保留设置,然后将其打开。其他日志(慢速 SQL 等)仍然不存在。

这些生产日志对于业务至关重要 - 我的意思是,如果您的审计日志突然消失,很难建立警报,对吗?我不敢相信这些日志消失甚至没有错误。

我确实看到“增强监控”已被关闭,因此我将其打开,并得到了以下信息:

Amazon RDS 无法在您的实例上配置增强监控:uat,并且此功能已被禁用。这可能是由于 rds-monitoring-role 在您的账户中不存在且配置不正确。有关更多详细信息,请参阅 Amazon RDS 文档中的故障排除部分。

这个角色确实存在,而且自 2019 年以来就没有改变过。

rds-monitoring-role,信任关系:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "",
            "Effect": "Allow",
            "Principal": {
                "Service": "monitoring.rds.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
        }
    ]
}

还有一件事:大约两周前我确实安装了 DataDog 的 AWS 集成 CloudWatch 例程。那大概就是所有日志消失的时候,但我认为这更像是巧合,否则我会向他们开一张票。我删除了他们的 CloudWatch 堆栈,日志还没有恢复。

这个问题提到了日志参数,但我检查过,我们的没有改变。

答案1

我设置了一个 Amazon RDS 实例来记录审计、错误、常规和慢速查询。虽然这些日志在 RDS 配置中可见,但我在检查 CloudWatch 时遇到了错误。

为了解决这个问题,我按照 RDS 服务的建议将 log_output 参数更改为 FILE。进行此调整后,慢速查询日志开始显示在 CloudWatch 中。此外,我可能已将 long_query_time 设置为 0 以捕获所有查询,并将 slow_query_log 设置为 1。

相关内容