amazon-web-services - 如何仅跨某些维度聚合 CloudWatch SEARCH 指标
问题描述
我正在尝试使用 SEARCH 设置 CloudWatch 图表,我以前做过一些,但这次我无法让它按照我想要的方式工作。我的问题是我只想在图表中包含一些指标维度。我可以只搜索命名空间和指标,如下所示:
SEARCH('Namespace="MyServiceName" MetricName="LatencyFromCreation"', 'Average', 300)
聚合,但这并没有给我任何维度。我可以包括所有尺寸:
SEARCH('{MyServiceName,ResultState,ItemType,LogGroup,ServiceName,ServiceType} LatencyFromCreation', 'Average', 300)
这不会做任何聚合,它向我展示了每个维度的组合。但是当我尝试删除其中一些(如文档中所述并显示在示例中)以仅保留我感兴趣的尺寸时,如下所示:
SEARCH('{MyServiceName,ItemType} LatencyFromCreation', 'Average', 300)
我没有得到任何结果,即使文档似乎清楚地表明这应该有效,我是否遗漏了什么?文档不准确吗?
我发现这个问题是相关的,但是提到使用 SEARCH 的答案并不清楚它们是否显示维度的子集。
解决方案
通过使用 CloudWatch Embedded Metrics Format (EMF) 作为我的服务发出的日志格式(如 Ryan 链接的这篇文章中所述),结合使用Metric Filters从 EMF 日志创建新指标,我能够找到解决方案,在除了 CloudWatch 创建的。这使我可以通过调整过滤器上的模式来准确选择我希望包含在指标中的维度。然后,我能够在这个新指标上使用 CloudWatch 提供的所有常规指标数学优势。
感觉很hacky,但它有效。
推荐阅读
- json - 使用反序列化数据访问字典中的数据
- amazon-dynamodb - 如何在 DynamoDB 和 Cognito 之间关联用户数据
- python - porter-stemmer:python 中的词干提取不起作用
- r - ifelse() 命令出现问题,其中 2 个不同数据帧中看起来相同的 2 列未标识为相同
- python - 可以在 pip.ini 文件中提示输入用户名和密码而不是硬编码吗?
- flutter - 如何用 Dart 中的模型解析这个 json?
- paypal - 如何向用户引用贝宝 webhook?
- python-3.x - Telegram API Bot 邀请其他频道的订阅者加入我自己的频道
- css - Next.js 项目中的 CSS 过渡问题
- angular - Angular/RxJs:通过异步管道订阅不显示发出的值