EventProcessorHost中具有更高纪元错误的新接收器

时间:2016-11-09 21:20:05

标签: azure azureservicebus azure-eventhub

我正在使用EventProcessorHost读取Eventhub数据,我收到了以下错误。

  

具有更高纪元的新接收器' 798393595'因此创造了当前   接收器与时代' 17'正在断开连接。如果你是   重建接收器,确保使用更高的纪元。   TrackingId:6368f7fc0004165d0001c7bb58238501_G34_B22,   SystemTracker:dynmsg推证据:eventhub:推赋值执行〜28671 | dsreporting,   时间戳:11/9/2016 8:21:32 PM

注意 - 我没有使用EventHubReciever并且只使用EventProcessorHost方法从事件中心读取数据。我可以看到它第一次运行并从事件中心读取数据但在此之后它总会抛出如上所述的错误?

我还有,我们可以避免Epoch值读取数据?假设我只想使用EventProcessorHost实现这一点。

eventProcessorHost = new EventProcessorHost(eventProcessorHostName,config.EventHubSourceName, string.IsNullOrEmpty(config.EventHubSourceConsumerGroup)? EventHubConsumerGroup.DefaultGroupName:config.EventHubSourceConsumerGroup,
                    config.EventHubSourceConnectionString, config.StorageConnectionString)
                {
                    PartitionManagerOptions = new PartitionManagerOptions()
                    {
                        AcquireInterval = TimeSpan.FromSeconds(10),
                        RenewInterval = TimeSpan.FromSeconds(10),
                        LeaseInterval = TimeSpan.FromSeconds(30)
                    }
                };

                var eventProcessOption = new EventProcessorOptions
                {
                    InvokeProcessorAfterReceiveTimeout = true,
                    MaxBatchSize = 100,
                    PrefetchCount = 100,
                    ReceiveTimeOut = TimeSpan.FromSeconds(30)
                };

                eventProcessOption.ExceptionReceived += EventProcessOption_ExceptionReceived;

                var factory = new EventHubHostFactory(config.FileName, CallbackEventHubData);
               // var eventFactory = new DefaultEventProcessorFactory<factory>();

                await eventProcessorHost.RegisterEventProcessorFactoryAsync(factory, eventProcessOption);

1 个答案:

答案 0 :(得分:0)

根据经验,此错误是由使用两个或多个应用程序的同一使用者组引起的。 检查您是否没有从该使用者组检索数据的应用程序。并清除检查点文件。