如何筛选增强型监控 CloudWatch Logs,以便为 Amazon RDS 生成自动自定义指标?

2 分钟阅读
0

我想筛选增强型监控 Amazon CloudWatch Logs,为 Amazon Relational Database Service(Amazon RDS)生成自动自定义指标。

简短描述

Amazon RDS 的增强型监控提供以下操作系统指标:

  • 可用内存
  • 活动内存
  • 免费交换
  • 正在运行的进程
  • 使用的文件系统

使用这些指标 要了解环境的性能,您可以使用这些操作系统指标。Amazon CloudWatch Logs 提取这些指标作为日志条目。您可以使用 CloudWatch 根据指标创建警报。这些警报会执行操作,您可以将这些指标作为自定义指标从您的基础架构、设备或应用程序中发布到 CloudWatch。要使用增强型监控和 CloudWatch 自动执行任务,请根据增强型监控指标为 CloudWatch Logs Amazon RDS 提取日期创建自定义指标。

解决方法

**注意:**如果在运行 AWS 命令行界面(AWS CLI)命令时收到错误,请确保您使用的是最新版本的 AWS CLI

在日志组上使用筛选器创建自定义指标

**注意:**这些步骤要求您在 Amazon RDS 数据库实例中启用增强型监控。有关详细信息,请参阅 Amazon RDS 实例中的监控指标

  1. 启用增强型监控

  2. 打开 Amazon CloudWatch 控制台,然后从导航窗格中选择日志组

  3. 日志组列表中筛选 RDSOSMetrics,然后选择操作

  4. 选择创建指标筛选器,然后为您的 Amazon RDS 数据库实例输入一个筛选模式术语。例如:

    DISK WRITE KBPS GREATER THAN OR EQUAL TO 10 : { $.diskIO[0].writeKbPS >= 10.00 }
    DISK READ KBPS GREATER THAN OR EQUAL TO 10 : { $.diskIO[0].readKbPS >= 10.00 }
    DISK WRITE IOPS PS GREATER THAN 15 : { $.diskIO[0].writeIOsPS > 15.00 }
    DISK READ IOPS PS GREATER THAN 15 : { $.diskIO[0].readIOsPS > 15.00 }
    TOTAL CPU UTILIZATION GREATER THAN OR EQUAL TO 80 : { $.cpuUtilization.total >= 80 }
    FREE MEMORY LESS THAN OR EQUAL TO 200000 KB : { $.memory.free <= 200000 }

    **注意:**将值更新为适合您环境的值。

  5. 选择日志数据,然后选择测试模式

  6. 选择下一步

  7. 输入筛选器名称,然后选择指标命名空间指标名称

  8. 输入指标值。例如,$.cpuUtilization.idle。然后,选择创建筛选器

    对于您添加的每个额外指标,重复这些步骤。

自动执行您的指标

要自动监控每个 Amazon RDS 数据库实例的 60 多个监控指标,请使用脚本。要查看使用 Amazon RDS for MySQL 数据库实例的脚本示例,请参阅 GitHub 网站上的 rds-support-tools。该示例脚本适用于以下引擎:

  • MySQL
  • MariaDB
  • Amazon Aurora MySQL 兼容版
  • Amazon Aurora PostgreSQL 兼容版
  • PostgreSQL

指定启用了增强型监控的 Amazon RDS 数据库实例以及您希望这些指标所在的命名空间。(可选)添加指标的名称和 AWS 区域。如果您未指定任何可选字段,则脚本会考虑所有要发布的指标。然后,该脚本会检查 .aws/config 文件中是否存在为 AWS CLI 设置的默认 AWS 区域。

**注意:**该脚本不会为进程列表创建指标。根据您要显示的进程,您可能需要手动创建筛选器。

使用以下模式指定指标的名称:

group.metricname

以下示例代码是为 cpuUtilization.idlediskIO.readKbPS 启用此指标的一个调用:

python RDSCreateMetricsFromEnhancedMonitoring.py --rds\_instance mysqltest --namespace MySQL --metrics\_to\_filter cpuUtilization.idle diskIO.readKb

然后,您可以为这些自定义指标创建警报。有关详细信息,请参阅使用 Amazon CloudWatch 警报

相关信息

监控 Amazon RDS 日志文件

使用指标筛选器匹配术语并从 JSON 日志事件中提取值

AWS 官方
AWS 官方已更新 8 个月前