使用云观察放置指标数据发布表计数统计信息



我的任务是监控数据集成任务,我正在尝试找出使用 cloudwatch 指标执行此操作的最佳方法。

数据集成任务在 3 个数据库表中填充记录。我想做的是每天发布自定义指标,以及为每个表插入的行数。如果一个或多个表的行计数为 0,则表示集成脚本出现问题,因此我们需要发送警报。

我的问题是,如何最合乎逻辑地构建对放置度量数据的调用。

我正在考虑数据的结构是这样的......

  • 命名空间:集成/集成项目1
  • 指标名称:行计数
  • 指标维度:"表 1"、"表 2"、"表 3">
  • 指标值:10、100、50

这是否有意义,或者逻辑上应该以其他方式构建?表之间没有固有的关系,除了它们都与特定项目相关联。我的意思是,我不想从 10 -> 100 -> 50 推断某种有意义的进展。

这是可以通过对 cloudwatch 放置指标数据的单次调用来完成的,还是需要 3 次单独的调用?

我认为单独的呼叫看起来像这样...

aws cloudwatch put-metric-data --metric-name RowCount --namespace "Integrations/IntegrationProject1" --unit Count --value 10 --dimensions Table=Table1
aws cloudwatch put-metric-data --metric-name RowCount --namespace "Integrations/IntegrationProject1" --unit Count --value 100 --dimensions Table=Table2
aws cloudwatch put-metric-data --metric-name RowCount --namespace "Integrations/IntegrationProject1" --unit Count --value 50 --dimensions Table=Table3

这似乎应该有效,但是是否有更有效的方法可以做到这一点,并将其合并到一个调用中?

还有没有办法让我确定数据的分辨率仅为 24 小时?

你的结构对我来说看起来不错。考虑为您的阶段设置一个维度:beta|gamma|prod。

这似乎应该有效,但是是否有更有效的方法可以做到这一点,并将其合并到一个调用中?

不使用 AWS CLI,但如果您使用任何开发工具包(例如 Python Boto3(,则最多可以在一次 PutMetricData 调用中发布 20 个指标。

还有没有办法让我确定数据的分辨率仅为 24 小时?

不。CloudWatch 将代表您聚合它收到的数据。如果您想查看每日数据点,可以在 CloudWatch 控制台上绘制指标图表时将时间段更改为 1 天。

最新更新