/// <summary> /// Serializes a list of telemetry items and sends them. /// </summary> private async Task Send(IEnumerable <ITelemetry> telemetryItems) { if (telemetryItems == null || !telemetryItems.Any()) { CoreEventSource.Log.LogVerbose("No Telemetry Items passed to Enqueue"); return; } byte[] data = JsonSerializer.Serialize(telemetryItems); var transmission = new Transmission(this.endpointAddress, data, "application/x-json-stream", JsonSerializer.CompressionType); await transmission.SendAsync().ConfigureAwait(false); }
/// <summary> /// Sending the item to the endpoint immediately without persistence. /// </summary> /// <param name="item">Telemetry item.</param> /// <param name="endpointAddress">Server endpoint address.</param> internal void SendForDeveloperMode(ITelemetry item, string endpointAddress) { try { byte[] data = JsonSerializer.Serialize(item); var transmission = new Transmission(new Uri(endpointAddress), data, "application/x-json-stream", JsonSerializer.CompressionType); transmission.SendAsync().ConfigureAwait(false).GetAwaiter().GetResult(); } catch (Exception exception) { CoreEventSource.Log.LogVerbose("Failed sending event in developer mode Exception:" + exception); } }
/// <summary> /// Sending the item to the endpoint immediately without persistence. /// </summary> /// <param name="item">Telemetry item.</param> /// <param name="endpointAddress">Server endpoint address.</param> internal void SendForDeveloperMode(ITelemetry item, string endpointAddress) { try { byte[] data = JsonSerializer.Serialize(item); var transmission = new Transmission(new Uri(endpointAddress), data, "application/x-json-stream", JsonSerializer.CompressionType); transmission.SendAsync().ConfigureAwait(false).GetAwaiter().GetResult(); } catch (Exception exception) { CoreEventSource.Log.LogVerbose("Failed sending event in developer mode Exception:" + exception); } }
/// <summary> /// Serializes a list of telemetry items and sends them. /// </summary> private async Task Send(IEnumerable<ITelemetry> telemetryItems) { if (telemetryItems == null || !telemetryItems.Any()) { CoreEventSource.Log.LogVerbose("No Telemetry Items passed to Enqueue"); return; } byte[] data = JsonSerializer.Serialize(telemetryItems); var transmission = new Transmission(this.endpointAddress, data, "application/x-json-stream", JsonSerializer.CompressionType); await transmission.SendAsync().ConfigureAwait(false); }