示例#1
0
        /// <summary>
        /// write measure as an asynchronous operation.
        /// </summary>
        /// <param name="measureTelemetryData">The measure telemetry data.</param>
        /// <returns>Task.</returns>
        public async Task WriteMeasureAsync(IMeasureTelemetryData measureTelemetryData)
        {
            if (_configuration.Handles(TelemetryTypes.Measures))
            {
                await Task.Run(() =>
                {
                    var properties = GetBotContextProperties();
                    properties.Add("json", measureTelemetryData.Json);
                    properties.Add("category", measureTelemetryData.MeasureCategory);
                    properties.Add("name", measureTelemetryData.MeasureName);

                    var metrics = new Dictionary <string, double> {
                        { "measure", measureTelemetryData.MeasureValue }
                    };

                    _telemetry.TrackEvent("Measure", properties, metrics);
                    DoPostLogActions();
                });
            }
        }
 /// <summary>
 /// write measure as an asynchronous operation.
 /// </summary>
 /// <param name="measureTelemetryData">The measure telemetry data.</param>
 /// <returns>Task.</returns>
 public async Task WriteMeasureAsync(IMeasureTelemetryData measureTelemetryData)
 {
     await DoWriteTelemetry(measureTelemetryData, TelemetryTypes.Measures, OutputFormatter.FormatMeasure);
 }
 /// <summary>
 /// Writes the measure.
 /// </summary>
 /// <param name="measureTelemetryData">The measure telemetry data.</param>
 /// <returns>Task.</returns>
 public Task WriteMeasureAsync(IMeasureTelemetryData measureTelemetryData)
 {
     DoWriteTelemetry(measureTelemetryData, TelemetryTypes.Measures, OutputFormatter.FormatMeasure);
     return(Task.Delay(0));
 }
 /// <summary>
 /// Formats the measure.
 /// </summary>
 /// <param name="measureTelemetryData">The measure telemetry data.</param>
 /// <returns>System.String.</returns>
 public string FormatMeasure(IMeasureTelemetryData measureTelemetryData)
 {
     return($"{GetDateTimeString()}\t{GetTelemetryContextProperties()}\tMeasure: [{measureTelemetryData.MeasureCategory}/{measureTelemetryData.MeasureName}] - Value: [{measureTelemetryData.MeasureValue}]");
 }
 /// <summary>
 /// Formats the measure.
 /// </summary>
 /// <param name="measureTelemetryData">The measure telemetry data.</param>
 /// <returns>System.String.</returns>
 public string FormatMeasure(IMeasureTelemetryData measureTelemetryData)
 {
     measureTelemetryData.RecordType = "measure";
     return(measureTelemetryData.AsStringWith(_context));
 }