【问题标题】:Using Python Qpid/Proton/Messenger(), how do I filter messages from Azure Event Hubs?使用 Python Qpid/Proton/Messenger(),如何过滤来自 Azure 事件中心的消息?
【发布时间】:2017-06-09 14:09:45
【问题描述】:

这个要点展示了如何使用 Messenger() 从 Azure 事件中心接收消息。效果很好。

https://gist.github.com/tomconte/e2a4667185a9bf674f59

但是,使用此技术会在事件中心中生成所有消息。我想阅读自偏移量或时间戳以来的消息(不在乎哪个)。我可以在 Qpid 文档中看到如何设置这些要求,但在使用 Messenger() 时不能。

这是 Qpid 文档中的相关部分: https://qpid.apache.org/releases/qpid-proton-0.16.0/proton/python/api/index.html

还有一个展示如何使用它的示例: qpid.apache.org/releases/qpid-proton-0.16.0/proton/python/examples/selected_recv.py.html

问题:有可能吗?如果可以,怎么做?

【问题讨论】:

  • 您应该添加指向您正在谈论的文档的链接,并且最好在您的问题中包含相关的函数调用。
  • 已编辑。感谢您的评论,格里沙。

标签: python azure qpid


【解决方案1】:

根据我的理解,我认为您想读取以 EventHub 上的偏移量或时间戳开头的事件数据。我查看了适用于 C#/Java 的 EventHub SDK 的所有类和方法,然后没有任何方法支持这种使用 EventHub 上的分区中的事件数据的用法。 Apache Qpid是Java/C/Python支持AMQP协议的库,EventHub支持AMQP,但不代表EventHub支持Qpid的所有方法。

有两种解决方案可供您解决。

  1. 在 EventHub 上接收所有消息,并为您过滤这些不受欢迎的消息。
  2. Using Azure Stream Analytics to create an output pipeline 用于将消息输出到其他存储,例如 Table Storage、DocumentDB,然后您可以使用您需要的偏移量/时间戳从其他存储中检索这些数据。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-11-18
    • 2021-05-02
    • 2014-09-07
    • 2015-12-26
    • 2014-04-04
    • 1970-01-01
    • 2017-07-01
    • 1970-01-01
    相关资源
    最近更新 更多