我有几个后端服务,它们发布到一个SNS主题。特定的发布服务被指定为MessageAttributes中的一个字段。相反,我有一个用户订阅了来自这个主题的所有消息。
我希望在Cloudwatch中监视这个SNS主题,以确定每个后端服务发布的消息数量是否与预期的相同。是否有一种方法可以根据消息属性中的值在cloudwatch中对此信息进行分区?
注意:我知道Cloudwatch可以监视基于SNS过滤策略的消息数量。我担心的是,我只有一个消费者--创建额外的过滤策略会不会很昂贵/浪费?
发布于 2022-08-29 15:24:33
遗憾的是,筛选策略度量标准不支持您在策略级别上寻找的粒度。为了将度量保留在Cloudwatch中,您可以使用Lambda来处理有关主题的消息,并根据您感兴趣的属性将定制的度量生成到Cloudwatch中,从而使其能够在仪表板和警报中使用。
在较高的水平,流量将是SNS,->,Lambda,->,云表.您可以使用CloudWatch嵌入式度量格式,而不是使用Cloudwatch API来推送度量。
根据您的设置,您可以将度量添加到进行PublishMessage调用的后端服务中。至少这样,不需要新的组件来捕获度量。
https://stackoverflow.com/questions/73478130
复制相似问题