如何解决 Amazon SNS 中的订阅筛选条件策略问题?

上次更新日期:2021 年 8 月 26 日

我的 Amazon Simple Notification Service (Amazon SNS) 订阅筛选条件策略不起作用。我该如何排查此问题?

解决方法

重要提示:对订阅筛选条件策略的添加或更改可能需要 15 分钟才能生效。

验证消息属性是否包含在发布到您的 Amazon SNS 主题的消息中

订阅筛选条件策略只能筛选消息属性,而不能筛选消息正文。如果消息中的 MessageAttributeValue 为空,则筛选条件策略会拒绝该消息。

要查看筛选条件策略是否因为不包含属性而已被拒绝消息,请查看适用于 Amazon SNS 的 Amazon CloudWatch 指标

NumberOfNotificationsFilteredOut-NoMessageAttributes

有关更多信息,请参阅 Amazon SNS 消息筛选。有关如何发送带有属性的消息的教程,请参阅使用亚马逊云科技管理控制台将消息发布到 Amazon SNS 主题

验证发布到您的 Amazon SNS 主题的消息是否符合所需的筛选条件策略限制

有关限制的完整列表,请参阅筛选条件策略约束

验证订阅筛选条件策略的属性配置是否正确

定义订阅筛选条件策略的属性后,订阅端点只接收包含这些已定义属性的消息。有关详细信息,请参阅属性字符串值匹配属性数值匹配

要查看由于不匹配或格式不正确的属性而已被拒绝的筛选条件策略的消息,请查看以下适用于 Amazon SNS 的 CloudWatch 指标

  • NumberOfNotificationsFilteredOut
  • NumberOfNotificationsFilteredOut-InvalidAttributes

注意:NumberOfNotificationsFilteredOut 指标显示了由于消息属性与策略属性不匹配而已被拒绝的筛选条件策略的消息。NumberOfNotificationsFilteredOut-InvalidAttributes 指标显示您的筛选条件策略因消息属性格式不是有效格式而已被拒绝的消息。


这篇文章对您有帮助吗?


您是否需要账单或技术支持?