/// <summary> /// write counter as an asynchronous operation. /// </summary> /// <param name="counterTelemetryData">The counter telemetry data.</param> /// <returns>Task.</returns> public async Task WriteCounterAsync(ICounterTelemetryData counterTelemetryData) { if (_configuration.Handles(TelemetryTypes.Counters)) { await Task.Run(() => { var properties = GetBotContextProperties(); properties.Add("json", counterTelemetryData.Json); properties.Add("category", counterTelemetryData.CounterCategory); properties.Add("name", counterTelemetryData.CounterName); var metrics = new Dictionary <string, double> { { "count", counterTelemetryData.CounterValue } }; _telemetry.TrackEvent("Counter", properties, metrics); DoPostLogActions(); }); } }
/// <summary> /// write counter as an asynchronous operation. /// </summary> /// <param name="counterTelemetryData">The counter telemetry data.</param> /// <returns>Task.</returns> public async Task WriteCounterAsync(ICounterTelemetryData counterTelemetryData) { await DoWriteTelemetry(counterTelemetryData, TelemetryTypes.Counters, OutputFormatter.FormatCounter); }
/// <summary> /// Writes the counter. /// </summary> /// <param name="counterTelemetryData">The counter telemetry data.</param> /// <returns>Task.</returns> public Task WriteCounterAsync(ICounterTelemetryData counterTelemetryData) { DoWriteTelemetry(counterTelemetryData, TelemetryTypes.Counters, OutputFormatter.FormatCounter); return(Task.Delay(0)); }
/// <summary> /// Formats the counter. /// </summary> /// <param name="counterTelemetryData">The counter telemetry data.</param> /// <returns>System.String.</returns> public string FormatCounter(ICounterTelemetryData counterTelemetryData) { return($"{GetDateTimeString()}\t{GetTelemetryContextProperties()}\tCounter: [{counterTelemetryData.CounterCategory}/{counterTelemetryData.CounterName}] - Count: [{counterTelemetryData.CounterValue}]"); }
/// <summary> /// Formats the counter. /// </summary> /// <param name="counterTelemetryData">The counter telemetry data.</param> /// <returns>System.String.</returns> public string FormatCounter(ICounterTelemetryData counterTelemetryData) { counterTelemetryData.RecordType = "counter"; return(counterTelemetryData.AsStringWith(_context)); }