【发布时间】:2018-10-03 09:24:58
【问题描述】:
当我将 Azure 事件中心捕获到任何数据存储(Azure Blob 存储或 Azure Data Lake)时,它也开始每 5 分钟发送 508 B 消息头(空消息)。
我该如何解决这个问题?因为我们想用这个机制来记录系统,它会干扰我们。
【问题讨论】:
标签: azure azure-eventhub
当我将 Azure 事件中心捕获到任何数据存储(Azure Blob 存储或 Azure Data Lake)时,它也开始每 5 分钟发送 508 B 消息头(空消息)。
我该如何解决这个问题?因为我们想用这个机制来记录系统,它会干扰我们。
【问题讨论】:
标签: azure azure-eventhub
为什么这个功能会给您的日志系统带来麻烦?
即使没有收到任何事件,事件中心的捕获功能也会根据配置的时间间隔触发;这是一种让您知道捕获工作正常的方法。 正如this link中指出的那样
配置完成后,事件中心捕获会在您发送第一个事件时自动运行,并继续运行。为了让您的下游处理更容易知道该流程正在运行,事件中心会在没有数据时写入空文件。此过程提供了可预测的节奏和标记,可以为您的批处理器提供数据。
如果您还查看 Python 示例 https://docs.microsoft.com/en-us/azure/event-hubs/event-hubs-capture-python#create-a-python-script-to-read-your-capture-files,您会发现该代码仅考虑大小大于 508 字节的非空文件。
【讨论】:
您可能已经知道,但 Event Hubs Capture 现在提供了关闭这些空文件发送的选项。
在配置事件中心捕获时,有一个标记为“在捕获时间窗口内未发生任何事件时不发出空文件”的复选框。
【讨论】: