【问题标题】:Publishing table count stats with cloudwatch put-metric-data使用 cloudwatch put-metric-data 发布表计数统计信息
【发布时间】:2020-01-18 21:12:21
【问题描述】:

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

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

我的问题是,如何最合乎逻辑地构建对 put-metric-data 的调用。

我正在考虑将数据构造成这样......

  • 命名空间:Integrations/IntegrationProject1
  • 指标名称:RowCount
  • 指标维度:“Table1”、“Table2”、“Table3”
  • 指标值:10、100、50

这是有道理的,还是应该以其他方式在逻辑上进行结构化?表之间没有内在关系,除了它们都与特定项目相关联。我的意思是,我不想从 10 -> 100 -> 50 推断出某种有意义的进展。

这可以通过一次调用 cloudwatch put-metric-data 来完成,还是需要 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 小时?

【问题讨论】:

    标签: amazon-cloudwatch amazon-cloudwatch-metrics


    【解决方案1】:

    我觉得你的结构很好。考虑为您的阶段设置一个维度:beta|gamma|prod。

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

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

    还有什么方法可以证明数据的分辨率只有 24 小时?

    没有。 CloudWatch 将代表您汇总它收到的数据。如果您想查看每日数据点,可以在 CloudWatch 控制台上绘制指标图表时将周期更改为 1 天。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-05-02
      • 2017-07-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多