using Microsoft.ApplicationInsights.Channel; namespace PlanTempus.Core.Telemetry { public class SeqLoggingTelemetryChannel : InMemoryChannel, ITelemetryChannel { private readonly IMessageChannel _messageChannel; public SeqLoggingTelemetryChannel(IMessageChannel messageChannel) { _messageChannel = messageChannel; } public new void Send(ITelemetry telemetry) { var writeTask = _messageChannel.Writer.WriteAsync(telemetry).AsTask(); writeTask.ContinueWith(t => { if (t.Exception != null) { throw t.Exception; } }, TaskContinuationOptions.OnlyOnFaulted); base.Send(telemetry); } } }