public void TelemetryTestService_EventWithParametersTest(TelemetryArea area, string eventName) { var telemetryService = new TelemetryTestService(); telemetryService.ReportEvent(area, eventName, new { parameter = "value" }); string log = telemetryService.SessionLog; log.Should().Be(TelemetryTestService.EventNamePrefixString + area.ToString() + "/" + eventName + "\r\n\t" + TelemetryTestService.PropertyNamePrefixString + area.ToString() + ".parameter : value\r\n"); }
/// <summary> /// Records event with parameters /// </summary> /// <param name="area">Telemetry area name such as 'Toolbox'.</param> /// <param name="eventName">Event name.</param> /// <param name="parameters"> /// Either string/object dictionary or anonymous /// collection of string/object pairs. /// </param> /// <summary> public void ReportEvent(TelemetryArea area, string eventName, object parameters = null) { Check.ArgumentStringNullOrEmpty("eventName", eventName); string completeEventName = MakeEventName(area, eventName); if (parameters == null) { this.TelemetryRecorder.RecordEvent(completeEventName); } else if (parameters is string) { this.TelemetryRecorder.RecordEvent(completeEventName, parameters as string); } else { IDictionary <string, object> dict = DictionaryExtensions.FromAnonymousObject(parameters); IDictionary <string, object> dictWithPrefix = new Dictionary <string, object>(); foreach (KeyValuePair <string, object> kvp in dict) { Check.ArgumentStringNullOrEmpty("parameterName", kvp.Key); dictWithPrefix[this.PropertyNamePrefix + area.ToString() + "." + kvp.Key] = kvp.Value ?? string.Empty; } this.TelemetryRecorder.RecordEvent(completeEventName, dictWithPrefix); } }
public void TelemetryTestService_SimpleEventTest(TelemetryArea area, string eventName) { var telemetryService = new TelemetryTestService(); telemetryService.ReportEvent(area, eventName); string log = telemetryService.SessionLog; log.Should().Be(TelemetryTestService.EventNamePrefixString + area.ToString() + "/" + eventName + "\r\n"); }
/// <summary> /// Records event with parameters /// </summary> /// <param name="area">Telemetry area name such as 'Toolbox'.</param> /// <param name="eventName">Event name.</param> /// <param name="parameters"> /// Either string/object dictionary or anonymous /// collection of string/object pairs. /// </param> /// <summary> public void ReportEvent(TelemetryArea area, string eventName, object parameters = null) { Check.ArgumentStringNullOrEmpty("eventName", eventName); string completeEventName = MakeEventName(area, eventName); if (parameters == null) { this.TelemetryRecorder.RecordEvent(completeEventName); } else if (parameters is string) { this.TelemetryRecorder.RecordEvent(completeEventName, parameters as string); } else { IDictionary<string, object> dict = DictionaryExtension.FromAnonymousObject(parameters); IDictionary<string, object> dictWithPrefix = new Dictionary<string, object>(); foreach (KeyValuePair<string, object> kvp in dict) { Check.ArgumentStringNullOrEmpty("parameterName", kvp.Key); dictWithPrefix[this.PropertyNamePrefix + area.ToString() + "." + kvp.Key] = kvp.Value ?? string.Empty; } this.TelemetryRecorder.RecordEvent(completeEventName, dictWithPrefix); } }
private string MakeEventName(TelemetryArea area, string eventName) { return(this.EventNamePrefix + area.ToString() + "/" + eventName); }
private string MakeEventName(TelemetryArea area, string eventName) { return this.EventNamePrefix + area.ToString() + "/" + eventName; }