- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我尝试通过 Python 从 Azure EventHub 接收消息,遗憾的是我无法订阅它。
我的脚本基于 https://gist.github.com/tomconte/e2a4667185a9bf674f59另一个类似的问题已经在 python script which subscribes/listens to Azure Event Hub? 中提出。 ,不幸的是没有解决它。
我的设置:Python 2.7.9(Ubuntu 15.04)
通过 pip 安装 qpid-proton:
pip show python-qpid-proton
...
Version: 0.11.1
...
所以我正在尝试以下操作:
from proton import *
import urllib
key = urllib.quote(FOOBAR,"")
address = "amqps://name:" + key + "@nsname.servicebus.windows.net/eventhubname/ConsumerGroups/$Default/Partitions/0"
messenger = Messenger()
messenger.subscribe(address)
proton.MessengerException: Cannot subscribe to [ADDRESS]
名称/ key 应该没问题,因为它在另一个应用程序中工作。
有什么猜测吗?
最佳答案
另一种选择是使用最新的 azure-eventhub Python SDK 从事件中心接收消息。
azure-eventhub 可在 pypi 上使用:https://pypi.org/project/azure-eventhub/
您可以关注receive sample code接收消息:
#!/usr/bin/env python
# --------------------------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.
# --------------------------------------------------------------------------------------------
"""
An example to show receiving events from an Event Hub.
"""
import os
from azure.eventhub import EventHubConsumerClient
CONNECTION_STR = os.environ["EVENT_HUB_CONN_STR"]
EVENTHUB_NAME = os.environ['EVENT_HUB_NAME']
def on_event(partition_context, event):
# Put your code here.
# If the operation is i/o intensive, multi-thread will have better performance.
print("Received event from partition: {}.".format(partition_context.partition_id))
def on_partition_initialize(partition_context):
# Put your code here.
print("Partition: {} has been initialized.".format(partition_context.partition_id))
def on_partition_close(partition_context, reason):
# Put your code here.
print("Partition: {} has been closed, reason for closing: {}.".format(
partition_context.partition_id,
reason
))
def on_error(partition_context, error):
# Put your code here. partition_context can be None in the on_error callback.
if partition_context:
print("An exception: {} occurred during receiving from Partition: {}.".format(
partition_context.partition_id,
error
))
else:
print("An exception: {} occurred during the load balance process.".format(error))
if __name__ == '__main__':
consumer_client = EventHubConsumerClient.from_connection_string(
conn_str=CONNECTION_STR,
consumer_group='$Default',
eventhub_name=EVENTHUB_NAME,
)
try:
with consumer_client:
consumer_client.receive(
on_event=on_event,
on_partition_initialize=on_partition_initialize,
on_partition_close=on_partition_close,
on_error=on_error,
starting_position="-1", # "-1" is from the beginning of the partition.
)
except KeyboardInterrupt:
print('Stopped receiving.')
关于python - Azure EventHub,无法订阅接收,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35440915/
我正尝试按照教程实现接收器部分 https://azure.microsoft.com/en-us/documentation/articles/event-hubs-java-ephjava-get
我想发送给eventhub客户,然后将其下载到示例数据(例如天气)并发送另一个eventhub。我的代码无法正常工作。没有错误,但数据没有发送到数据库。 public Task ProcessEven
在我的应用程序中,发布到 Eventhub 的各种事件。但是我的消费者群体只需要特定的一组事件。如何在 Eventhub 中过滤这个? 最佳答案 关注此 post : event hubs doesn
比方说,当处理来自 Azure EventHub 的批量事件时发生 transient 故障并且 transient 故障即使在重试后仍然持续,那么可以从处理器向 Eventhub 抛出哪种异常?以便
没有现成的解决方案可以将数据从一个 Azure EventHub 克隆到另一个 EventHub。有哪些可能的选择来实现这一目标? 最佳答案 复制 Azure EventHub 流的一个简单选项是在
Azure 事件中心发布了一个现代客户端库 (Azure.Messaging.EventHubs),用于读取和写入事件中心。新库应该取代旧库 (Microsoft.Azure.EventHubs),所
我的要求是使用 Spring 的 Azure 事件中心进行简单的发布-订阅。 在检查文档后,我发现了 2 篇文章演示了集成。 One uses azure-eventhubs图书馆和the other
我的要求是使用 Spring 的 Azure 事件中心进行简单的发布-订阅。 在检查文档后,我发现了 2 篇文章演示了集成。 One uses azure-eventhubs图书馆和the other
我需要获取 EventHub 的分区列表。我正在尝试使用最新 SDK 中的 EventProcessorClient。这似乎没有 getRuntimeInformation 方法。 有什么方法可以使用
作为安全产品的一部分,我拥有大规模云服务(azure 辅助角色),它从事件中心读取事件,将它们批量处理到约 2000 个,然后存储在 blob 存储中。每个事件都有一个 MachineId(发送该事件
升级 然后构建 返回 “命名空间“Microsoft.Azure”中不存在类型或命名空间名称“EventHubs”(是否缺少程序集引用?)[sss-af-filter]” “找不到类型或命名空间名称“
使用 Event Hub Premium 时我们必须计算的 Azure Event Hub 吞吐量限制是多少? The documentation说使用高级层时每个 PU 没有限制,但我不明白这意味着
实际上是在尝试做一些我不擅长的事情。 我在这里阅读了持久功能概述 - https://learn.microsoft.com/en-us/azure/azure-functions/durable/d
我在 java 中运行事件中心函数的发送者类应用程序。 下面是输出: [main] INFO com.azure.messaging.eventhubs.EventHubClientBuild
全部, 我设置了 EventHub 命名空间和 EventHub,并能够使用 Python 脚本成功向其发送和接收事件。我还能够启用捕获功能并将事件以 Avro 格式存储在 Azure Blob 存储
为什么我们需要 Azure 存储帐户上的 blob 容器用于 Eventhub 消费者客户端(我使用的是 python)。为什么我们不能像在 Kafka 中那样直接使用来自 Eventhub(Kafk
全部, 我设置了 EventHub 命名空间和 EventHub,并能够使用 Python 脚本成功向其发送和接收事件。我还能够启用捕获功能并将事件以 Avro 格式存储在 Azure Blob 存储
我们正在开发一个 Multi-Tenancy 应用程序,其中 eventhub 将在不同租户之间共享。我们将在租户之间分配分区。每个租户将在不同的分区上发送消息。我们希望在分区级别对租户进行身份验证。
据我了解,eventhub 每秒可以处理/摄取数百万条消息。为了调整摄取,我们可以使用吞吐量。 更高的吞吐量=更强的摄取能力。 但是在接收/消费方面,您最多可以创建 32 个接收者(因为我们可以创建
为什么我们需要 Azure 存储帐户上的 blob 容器用于 Eventhub 消费者客户端(我使用的是 python)。为什么我们不能像在 Kafka 中那样直接使用来自 Eventhub(Kafk
我是一名优秀的程序员,十分优秀!