internal static void FormatAndSend(ITelemetry telemetry, TelemetryEventArgs args) { if (args.EventName == TargetFrameworkTelemetryEventName) { var newEventName = $"msbuild/{TargetFrameworkTelemetryEventName}"; Dictionary <string, string> maskedProperties = new Dictionary <string, string>(); if (args.Properties.TryGetValue(TargetFrameworkVersionTelemetryPropertyKey, out string targetFrameworkVersionValue)) { maskedProperties.Add(TargetFrameworkVersionTelemetryPropertyKey, Sha256Hasher.HashWithNormalizedCasing(targetFrameworkVersionValue)); } if (args.Properties.TryGetValue(UseWindowsFormsTelemetryPropertyKey, out string useWindowsFormsValue)) { maskedProperties.Add(UseWindowsFormsTelemetryPropertyKey, SanitizeToOnlyTrueFalseEmpty(useWindowsFormsValue)); } if (args.Properties.TryGetValue(UseWPFTelemetryPropertyKey, out string useWPFValue)) { maskedProperties.Add(UseWPFTelemetryPropertyKey, SanitizeToOnlyTrueFalseEmpty(useWPFValue)); } telemetry.TrackEvent(newEventName, maskedProperties, measurements: null); } if (args.EventName == SdkTaskBaseCatchExceptionTelemetryEventName) { telemetry.TrackEvent(args.EventName, args.Properties, measurements: null); } }
internal static void FormatAndSend(ITelemetry telemetry, TelemetryEventArgs args) { if (args.EventName == TargetFrameworkTelemetryEventName) { var newEventName = $"msbuild/{TargetFrameworkTelemetryEventName}"; Dictionary <string, string> maskedProperties = new Dictionary <string, string>(); foreach (var key in new[] { TargetFrameworkVersionTelemetryPropertyKey, RuntimeIdentifierTelemetryPropertyKey, SelfContainedTelemetryPropertyKey, UseApphostTelemetryPropertyKey, OutputTypeTelemetryPropertyKey }) { if (args.Properties.TryGetValue(key, out string value)) { maskedProperties.Add(key, Sha256Hasher.HashWithNormalizedCasing(value)); } } telemetry.TrackEvent(newEventName, maskedProperties, measurements: null); } var passthroughEvents = new string[] { SdkTaskBaseCatchExceptionTelemetryEventName, PublishPropertiesTelemetryEventName, ReadyToRunTelemetryEventName }; if (passthroughEvents.Contains(args.EventName)) { telemetry.TrackEvent(args.EventName, args.Properties, measurements: null); } }
internal static void FormatAndSend(ITelemetry telemetry, TelemetryEventArgs args) { if (args.EventName == TargetFrameworkTelemetryEventName) { var newEventName = $"msbuild/{TargetFrameworkTelemetryEventName}"; Dictionary <string, string> maskedProperties = new Dictionary <string, string>(); if (args.Properties.TryGetValue(TargetFrameworkVersionTelemetryPropertyKey, out string value)) { maskedProperties.Add(TargetFrameworkVersionTelemetryPropertyKey, Sha256Hasher.HashWithNormalizedCasing(value)); } telemetry.TrackEvent(newEventName, maskedProperties, measurements: null); } }