【问题标题】:How to list the messages of a nats jetstream and know if they were acknowledged?如何列出 nats jetstream 的消息并知道它们是否被确认?
【发布时间】:2022-12-20 20:40:14
【问题描述】:

我需要列出在 nats 流中发布的消息,以了解哪些未被识别。

我试图查看 nats 在其文档中建议的 admin api,但它没有指定是否可以这样做。

我还查看了 jetstream library for go,有了这个我可以获得关于流及其消费者的一般信息,但不是未确认的消息,我没有看到任何功能可以满足我的需要。

无论编程语言如何,有人已经这样做了吗?

【问题讨论】:

    标签: go jetstream nats.io nats-streaming-server


    【解决方案1】:

    致谢与特定的consumer相关联,而不是stream

    您可以从 consumer 信息中得出致谢状态,准确地说,致谢层:

    nats consumer info
    
    State:
    
       Last Delivered Message: Consumer sequence: 8 Stream sequence: 158 Last delivery: 13m59s ago
         Acknowledgment floor: Consumer sequence: 4 Stream sequence: 154 Last Ack: 13m59s ago
             Outstanding Acks: 2 out of maximum 1,000
         Redelivered Messages: 0
         Unprocessed Messages: 42
                Waiting Pulls: 0 of maximum 512
    

    它在 NATS CLI 和大多数客户端库中可用。 无法直接查看已确认消息的列表。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-10-29
      • 1970-01-01
      • 2023-03-07
      • 1970-01-01
      • 2012-06-28
      • 2017-08-12
      • 2011-01-17
      • 1970-01-01
      相关资源
      最近更新 更多