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