繁体   English   中英

GCP PubSub 未投递消息和死信消息之间的区别

[英]GCP PubSub difference between undelivered messages and dead letter messages

我正在创建警报系统来检查死消息队列,在这个GCP 文档中我看到有两个指标subscription/num_undelivered_messagessubscription/dead_letter_message_count 我发现很难理解其中的区别,因为我假设未传递的消息被发布到死消息队列。 如果是这种情况,这些指标报告的数字不是相同吗?

您必须了解流程才能了解指标。

当消息到达订阅时,它不会被传递。 它一直处于该状态,直到收到 ACK 消息。

在几次不成功(nack、error、timeout,...)投递(至少 5 次,您可以设置低于 5 次)后,您的消息可以投递到死信主题(如果已配置)。

未传递的消息可以在订阅中停留几分钟、几小时或几天,然后传递到死信主题。


话虽如此,现在您要监视什么?

  • 为了解您必须处理的积压工作而堆积在您的订阅中的消息数量?
  • 因为有一个明确的错误,并且所有的重试都不成功,所以推送到死信主题的消息数量?

取决于您的用例,但这些指标的比率、速度、频率可以表明您的应用程序的健康状况。

黄金信号:

  • 错误率:死信主题中的消息数
  • 流量:未发送的消息数

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM