【发布时间】:2017-09-08 20:58:35
【问题描述】:
每天清晨向 eventthub 发送事件都会失败,并显示以下消息。我已经掩盖了这个数字,因为我不确定那个数字是什么以及出于安全原因。(下面的代码和错误)
- 我始终每分钟发送约 240 个非常小的事件,所以这应该不是问题。
- 我的 eventthub 有 2 个分区和 2 个使用者 如果你们中的任何人知道解决方案或需要更多信息,请告诉我。 谢谢!
错误: 消息:与“XXXXX06f186e4bb89aea2d8959bXXXXX_GXX”通信时发生错误。检查连接信息,然后重试。
StackTrace:在 Microsoft.ServiceBus.Common.AsyncResult.End[TAsyncResult](IAsyncResult 结果) 在 Microsoft.ServiceBus.Common.AsyncResult1.End(IAsyncResult asyncResult) 在 Microsoft.ServiceBus.Messaging.Amqp.FaultTolerantObject1.OnEndCreateInstance(IAsyncResult asyncResult) 在 Microsoft.ServiceBus.Messaging.SingletonManager1.EndGetInstance(IAsyncResult asyncResult) 在 Microsoft.ServiceBus.Messaging.AmqpMessageSender.OnEndOpen(IAsyncResult 结果) 在 Microsoft.ServiceBus.Messaging.ClientEntity.EndOpen(IAsyncResult 结果) 在 Microsoft.ServiceBus.Messaging .OpenOnceManager.OnEndCreateInstance(IAsyncResult asyncResult) 在 Microsoft.ServiceBus.Messaging.SingletonManager1.EndGetInstance(IAsyncResult asyncResult) 在 Microsoft.ServiceBus.Messaging.OpenOnceManager.OpenOnceManagerAsyncResult1.OpenComplete(IAsyncResult 结果) 在 Microsoft.ServiceBus.Common.AsyncResult.SyncContinue(IAsyncResult 结果) 在 Microsoft.ServiceBus.Messaging.OpenOnceManager.OpenOnceManagerAsyncResult1..ctor(OpenOnceManager openOnceManager, TimeSpan openTimeout, AsyncCallback 回调,对象状态,Func3 beginOperation,EndOperation1 endOperation) 在 Microsoft.ServiceBus.Messaging.OpenOnceManager.Begin(AsyncCallback 回调,对象状态,Func3 beginOperation,Action1 endOperation) 在 Microsoft.ServiceBus.Messaging.EventHubSender 的 Microsoft.ServiceBus.Messaging.MessageSender.BeginSendEventData(TrackingContext trackingContext,IEnumerable1 eventDatas,TimeSpan 超时,AsyncCallback 回调,对象状态)。c__DisplayClass23_0.b__0(AsyncCallback c,Object s)在系统。 Threading.Tasks.TaskFactory1.FromAsyncImpl(Func3 beginMethod, Func2 endFunction, Action1 endAction, Object state, TaskCreationOptions creationOptions) 在 Microsoft.ServiceBus.Common.Parallel.TaskHelpers.CreateTask(Func3 begin, Action`1 end, Object state) --- 从先前抛出异常的位置结束堆栈跟踪 --- 在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务任务) 在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务) 在 System.Runtime.CompilerServices.TaskAwaiter.GetResult() 日期:2017 年 4 月 12 日凌晨 2:48:17
代码: EventHubClient deveventHubClient = EventHubClient.CreateFromConnectionString(connectionString, "EventHubName");
private async Task SendInBatch(IList<byte[]> source, Guid UUID)
{
List events = new List(source.Select(b => new EventData(b)));
EventHubSender Partition0;
EventHubSender Partition1;
Partition0 = deveventHubClient.CreatePartitionedSender("0");
Partition1 = deveventHubClient.CreatePartitionedSender("1");
if (UUID.GetHashCode() % 2 == 0)
{
await Partition0.SendBatchAsync(events);
}
else
{
await Partition1.SendBatchAsync(events);
}
return Unit.Default;
}
【问题讨论】:
-
每天早上都会出现这个问题吗?您是否尝试使用另一个事件中心来测试是否出现相同的问题?
-
我尝试了 2 个 eventthub,其中 1 个在凌晨 2:40 失败,另一个在凌晨 4:30 失败。这种情况每天都在发生。
标签: c# .net azure azure-eventhub