diff --git a/tracer/src/Datadog.Trace.SourceGenerators/EnumExtensions/EnumExtensionsGenerator.cs b/tracer/src/Datadog.Trace.SourceGenerators/EnumExtensions/EnumExtensionsGenerator.cs index ab966f79d589..0bfe33972142 100644 --- a/tracer/src/Datadog.Trace.SourceGenerators/EnumExtensions/EnumExtensionsGenerator.cs +++ b/tracer/src/Datadog.Trace.SourceGenerators/EnumExtensions/EnumExtensionsGenerator.cs @@ -1,4 +1,4 @@ -// +// // Unless explicitly stated otherwise all files in this repository are licensed under the Apache 2 License. // This product includes software developed at Datadog (https://www.datadoghq.com/). Copyright 2017 Datadog, Inc. // @@ -57,6 +57,13 @@ private static void Execute(in EnumToGenerate enumToGenerate, SourceProductionCo StringBuilder sb = new StringBuilder(); var result = Sources.GenerateExtensionClass(sb, in enumToGenerate); context.AddSource(enumToGenerate.ExtensionsName + "_EnumExtensions.g.cs", SourceText.From(result, Encoding.UTF8)); + + // If this is the IntegrationId enum, also generate IntegrationNameToKeys + if (enumToGenerate.FullyQualifiedName == "Datadog.Trace.Configuration.IntegrationId") + { + var integrationKeysResult = Sources.GenerateIntegrationNameToKeys(sb, in enumToGenerate); + context.AddSource("IntegrationNameToKeys.g.cs", SourceText.From(integrationKeysResult, Encoding.UTF8)); + } } private static Result<(EnumToGenerate Enum, bool IsValid)> GetTypeToGenerate( diff --git a/tracer/src/Datadog.Trace.SourceGenerators/EnumExtensions/Sources.cs b/tracer/src/Datadog.Trace.SourceGenerators/EnumExtensions/Sources.cs index bc51ad96a687..44381cb9f760 100644 --- a/tracer/src/Datadog.Trace.SourceGenerators/EnumExtensions/Sources.cs +++ b/tracer/src/Datadog.Trace.SourceGenerators/EnumExtensions/Sources.cs @@ -1,4 +1,4 @@ -// +// // Unless explicitly stated otherwise all files in this repository are licensed under the Apache 2 License. // This product includes software developed at Datadog (https://www.datadoghq.com/). Copyright 2017 Datadog, Inc. // @@ -22,62 +22,218 @@ internal class EnumExtensionsAttribute : System.Attribute } """; - public static string GenerateExtensionClass(StringBuilder sb, in EnumToGenerate enumToGenerate) + public static string GenerateExtensionClass(StringBuilder sb, in EnumToGenerate enumToGenerate) => + Constants.FileHeader + $$""" + namespace {{enumToGenerate.Namespace}}; + + /// + /// Extension methods for + /// + internal static partial class {{enumToGenerate.ExtensionsName}} + { + /// + /// The number of members in the enum. + /// This is a non-distinct count of defined names. + /// + public const int Length = {{enumToGenerate.Names.Count}}; + + /// + /// Returns the string representation of the value. + /// If the attribute is decorated with a [Description] attribute, then + /// uses the provided value. Otherwise uses the name of the member, equivalent to + /// calling ToString() on . + /// + /// The value to retrieve the string value for + /// The string representation of the value + public static string ToStringFast(this {{enumToGenerate.FullyQualifiedName}} value) + => value switch + {{{GetToStringFast(sb, in enumToGenerate)}} + _ => value.ToString(), + };{{GetHasFlags(in enumToGenerate)}} + + /// + /// Retrieves an array of the values of the members defined in + /// . + /// Note that this returns a new array with every invocation, so + /// should be cached if appropriate. + /// + /// An array of the values defined in + public static {{enumToGenerate.FullyQualifiedName}}[] GetValues() + => new [] + {{{GetValues(sb, in enumToGenerate)}} + }; + + /// + /// Retrieves an array of the names of the members defined in + /// . + /// Note that this returns a new array with every invocation, so + /// should be cached if appropriate. + /// Ignores [Description] definitions. + /// + /// An array of the names of the members defined in + public static string[] GetNames() + => new [] + {{{GetNames(sb, in enumToGenerate)}} + };{{GetDescriptions(sb, in enumToGenerate)}} + } + """; + + public static string GenerateIntegrationNameToKeys(StringBuilder sb, in EnumToGenerate enumToGenerate) { - return Constants.FileHeader + $$""" - namespace {{enumToGenerate.Namespace}}; + sb.Clear(); + sb.Append( + Constants.FileHeader + + """ - /// - /// Extension methods for - /// - internal static partial class {{enumToGenerate.ExtensionsName}} + namespace Datadog.Trace.Configuration { /// - /// The number of members in the enum. - /// This is a non-distinct count of defined names. + /// Generated mapping of integration names to their configuration keys. /// - public const int Length = {{enumToGenerate.Names.Count}}; + internal static partial class IntegrationNameToKeys + { + private const string ObsoleteMessage = DeprecationMessages.AppAnalytics; - /// - /// Returns the string representation of the value. - /// If the attribute is decorated with a [Description] attribute, then - /// uses the provided value. Otherwise uses the name of the member, equivalent to - /// calling ToString() on . - /// - /// The value to retrieve the string value for - /// The string representation of the value - public static string ToStringFast(this {{enumToGenerate.FullyQualifiedName}} value) - => value switch - {{{GetToStringFast(sb, in enumToGenerate)}} - _ => value.ToString(), - };{{GetHasFlags(in enumToGenerate)}} + /// + /// All integration enabled keys (canonical + aliases). + /// + [Datadog.Trace.SourceGenerators.TestingOnly] + public static string[] GetAllIntegrationEnabledKeys() => + [ - /// - /// Retrieves an array of the values of the members defined in - /// . - /// Note that this returns a new array with every invocation, so - /// should be cached if appropriate. - /// - /// An array of the values defined in - public static {{enumToGenerate.FullyQualifiedName}}[] GetValues() - => new [] - {{{GetValues(sb, in enumToGenerate)}} - }; + """); - /// - /// Retrieves an array of the names of the members defined in - /// . - /// Note that this returns a new array with every invocation, so - /// should be cached if appropriate. - /// Ignores [Description] definitions. - /// - /// An array of the names of the members defined in - public static string[] GetNames() - => new [] - {{{GetNames(sb, in enumToGenerate)}} - };{{GetDescriptions(sb, in enumToGenerate)}} + foreach (var member in enumToGenerate.Names) + { + var name = member.Property; + var upperName = name.ToUpperInvariant(); + + var upperKey = $"DD_TRACE_{upperName}_ENABLED"; + var mixedKey = $"DD_TRACE_{name}_ENABLED"; + var shortKey = $"DD_{name}_ENABLED"; + sb.AppendLine($" \"{upperKey}\", \"{mixedKey}\", \"{shortKey}\","); + + var analyticsUpperKey = $"DD_TRACE_{upperName}_ANALYTICS_ENABLED"; + var analyticsMixedKey = $"DD_TRACE_{name}_ANALYTICS_ENABLED"; + var analyticsShortKey = $"DD_{name}_ANALYTICS_ENABLED"; + sb.AppendLine($" \"{analyticsUpperKey}\", \"{analyticsMixedKey}\", \"{analyticsShortKey}\","); + + var sampleRateUpperKey = $"DD_TRACE_{upperName}_ANALYTICS_SAMPLE_RATE"; + var sampleRateMixedKey = $"DD_TRACE_{name}_ANALYTICS_SAMPLE_RATE"; + var sampleRateShortKey = $"DD_{name}_ANALYTICS_SAMPLE_RATE"; + sb.AppendLine($" \"{sampleRateUpperKey}\", \"{sampleRateMixedKey}\", \"{sampleRateShortKey}\", "); + } + + sb.Append( + """ + ]; + /// + /// Gets the configuration keys for the specified integration name. + /// Returns a KeyValuePair where Key is the canonical key and Value is an array of aliases. + /// + /// The integration name + /// KeyValuePair with canonical key and aliases + public static System.Collections.Generic.KeyValuePair GetIntegrationEnabledKeys(string integrationName) => + integrationName switch + { + + """); + + foreach (var member in enumToGenerate.Names) + { + var name = member.Property; + var upperName = name.ToUpperInvariant(); + var upperKey = $"DD_TRACE_{upperName}_ENABLED"; + var mixedKey = $"DD_TRACE_{name}_ENABLED"; + var shortKey = $"DD_{name}_ENABLED"; + sb.AppendLine($" \"{name}\" => new(\"{upperKey}\", [\"{mixedKey}\", \"{shortKey}\"]),"); + } + + sb.Append( + """ + _ => GetIntegrationEnabledKeysFallback(integrationName) // we should never get here + }; + /// + /// Gets the analytics enabled configuration keys for the specified integration name. + /// Returns a KeyValuePair where Key is the canonical key and Value is an array of aliases. + /// + /// The integration name + /// KeyValuePair with canonical key and aliases + [System.Obsolete(ObsoleteMessage)] + public static System.Collections.Generic.KeyValuePair GetIntegrationAnalyticsEnabledKeys(string integrationName) => + integrationName switch + { + + """); + + foreach (var member in enumToGenerate.Names) + { + var name = member.Property; + var upperName = name.ToUpperInvariant(); + var analyticsUpperKey = $"DD_TRACE_{upperName}_ANALYTICS_ENABLED"; + var analyticsMixedKey = $"DD_TRACE_{name}_ANALYTICS_ENABLED"; + var analyticsShortKey = $"DD_{name}_ANALYTICS_ENABLED"; + sb.AppendLine($" \"{name}\" => new(\"{analyticsUpperKey}\", [\"{analyticsMixedKey}\", \"{analyticsShortKey}\"]),"); + } + + sb.Append( + """ + _ => GetIntegrationAnalyticsEnabledKeysFallback(integrationName) // we should never get here + }; + /// + /// Gets the analytics sample rate configuration keys for the specified integration name. + /// Returns a KeyValuePair where Key is the canonical key and Value is an array of aliases. + /// + /// The integration name + /// KeyValuePair with canonical key and aliases + [System.Obsolete(ObsoleteMessage)] + public static System.Collections.Generic.KeyValuePair GetIntegrationAnalyticsSampleRateKeys(string integrationName) => + integrationName switch + { + + """); + + foreach (var member in enumToGenerate.Names) + { + var name = member.Property; + var upperName = name.ToUpperInvariant(); + var sampleRateUpperKey = $"DD_TRACE_{upperName}_ANALYTICS_SAMPLE_RATE"; + var sampleRateMixedKey = $"DD_TRACE_{name}_ANALYTICS_SAMPLE_RATE"; + var sampleRateShortKey = $"DD_{name}_ANALYTICS_SAMPLE_RATE"; + sb.AppendLine($" \"{name}\" => new(\"{sampleRateUpperKey}\", [\"{sampleRateMixedKey}\", \"{sampleRateShortKey}\"]),"); + } + + sb.Append( + """ + _ => GetIntegrationAnalyticsSampleRateKeysFallback(integrationName) // we should never get here + }; + + private static System.Collections.Generic.KeyValuePair GetIntegrationEnabledKeysFallback(string integrationName) => + new(string.Format("DD_TRACE_{0}_ENABLED", integrationName.ToUpperInvariant()), + [ + string.Format("DD_TRACE_{0}_ENABLED", integrationName), + $"DD_{integrationName}_ENABLED" + ]); + + private static System.Collections.Generic.KeyValuePair GetIntegrationAnalyticsEnabledKeysFallback(string integrationName) => + new(string.Format("DD_TRACE_{0}_ANALYTICS_ENABLED", integrationName.ToUpperInvariant()), + [ + string.Format("DD_TRACE_{0}_ANALYTICS_ENABLED", integrationName), + $"DD_{integrationName}_ANALYTICS_ENABLED" + ]); + + private static System.Collections.Generic.KeyValuePair GetIntegrationAnalyticsSampleRateKeysFallback(string integrationName) => + new(string.Format("DD_TRACE_{0}_ANALYTICS_SAMPLE_RATE", integrationName.ToUpperInvariant()), + [ + string.Format("DD_TRACE_{0}_ANALYTICS_SAMPLE_RATE", integrationName), + $"DD_{integrationName}_ANALYTICS_SAMPLE_RATE" + ]); + } } - """; + + """); + + return sb.ToString(); } private static string GetToStringFast(StringBuilder sb, in EnumToGenerate enumToGenerate) @@ -153,20 +309,20 @@ private static string GetDescriptions(StringBuilder sb, in EnumToGenerate enumTo sb.Clear(); sb.AppendLine() .Append( - $$""" - - /// - /// Retrieves an array of the names of the members defined in - /// . - /// Note that this returns a new array with every invocation, so - /// should be cached if appropriate. - /// Uses [Description] definition if available, otherwise uses the name of the property - /// - /// An array of the names of the members defined in - public static string[] GetDescriptions() - => new [] - { - """); + $$""" + + /// + /// Retrieves an array of the names of the members defined in + /// . + /// Note that this returns a new array with every invocation, so + /// should be cached if appropriate. + /// Uses [Description] definition if available, otherwise uses the name of the property + /// + /// An array of the names of the members defined in + public static string[] GetDescriptions() + => new [] + { + """); foreach (var member in enumToGenerate.Names) { @@ -190,17 +346,17 @@ private static string GetHasFlags(in EnumToGenerate enumToGenerate) return $$""" - /// - /// Determines whether one or more bit fields are set in the current instance. - /// Equivalent to calling on . - /// - /// The value of the instance to investigate - /// The flag to check for - /// true if the fields set in the flag are also set in the current instance; otherwise false. - /// If the underlying value of is zero, the method returns true. - /// This is consistent with the behaviour of - public static bool HasFlagFast(this {{enumToGenerate.FullyQualifiedName}} value, {{enumToGenerate.FullyQualifiedName}} flag) - => flag == 0 ? true : (value & flag) == flag; - """; + /// + /// Determines whether one or more bit fields are set in the current instance. + /// Equivalent to calling on . + /// + /// The value of the instance to investigate + /// The flag to check for + /// true if the fields set in the flag are also set in the current instance; otherwise false. + /// If the underlying value of is zero, the method returns true. + /// This is consistent with the behaviour of + public static bool HasFlagFast(this {{enumToGenerate.FullyQualifiedName}} value, {{enumToGenerate.FullyQualifiedName}} flag) + => flag == 0 ? true : (value & flag) == flag; + """; } } diff --git a/tracer/src/Datadog.Trace/Configuration/ConfigurationSources/Telemetry/ConfigurationBuilder.cs b/tracer/src/Datadog.Trace/Configuration/ConfigurationSources/Telemetry/ConfigurationBuilder.cs index 981d603247f4..2e7045866d53 100644 --- a/tracer/src/Datadog.Trace/Configuration/ConfigurationSources/Telemetry/ConfigurationBuilder.cs +++ b/tracer/src/Datadog.Trace/Configuration/ConfigurationSources/Telemetry/ConfigurationBuilder.cs @@ -8,6 +8,7 @@ using System; using System.Collections.Generic; using System.Diagnostics.CodeAnalysis; +using System.Linq; using Datadog.Trace.Configuration.ConfigurationSources.Telemetry; namespace Datadog.Trace.Configuration.Telemetry; @@ -19,36 +20,39 @@ internal readonly struct ConfigurationBuilder(IConfigurationSource source, IConf public HasKeys WithKeys(string key) => new(_source, _telemetry, key); - public HasKeys WithIntegrationKey(string integrationName) => new( - _source, - _telemetry, - string.Format(IntegrationSettings.IntegrationEnabledKey, integrationName.ToUpperInvariant()), - [ - string.Format(IntegrationSettings.IntegrationEnabledKey, integrationName), - $"DD_{integrationName}_ENABLED" - ]); - - public HasKeys WithIntegrationAnalyticsKey(string integrationName) => new( - _source, - _telemetry, + public HasKeys WithIntegrationKey(string integrationName) + { + var integrationEnabledKeys = IntegrationNameToKeys.GetIntegrationEnabledKeys(integrationName); + return new( + _source, + _telemetry, + integrationEnabledKeys.Key, + integrationEnabledKeys.Value); + } + + public HasKeys WithIntegrationAnalyticsKey(string integrationName) + { #pragma warning disable 618 // App analytics is deprecated, but still used - string.Format(IntegrationSettings.AnalyticsEnabledKey, integrationName.ToUpperInvariant()), - [ - string.Format(IntegrationSettings.AnalyticsEnabledKey, integrationName), + var integrationAnalyticsEnabledKeys = IntegrationNameToKeys.GetIntegrationAnalyticsEnabledKeys(integrationName); #pragma warning restore 618 - $"DD_{integrationName}_ANALYTICS_ENABLED" - ]); + return new( + _source, + _telemetry, + integrationAnalyticsEnabledKeys.Key, + integrationAnalyticsEnabledKeys.Value); + } - public HasKeys WithIntegrationAnalyticsSampleRateKey(string integrationName) => new( - _source, - _telemetry, + public HasKeys WithIntegrationAnalyticsSampleRateKey(string integrationName) + { #pragma warning disable 618 // App analytics is deprecated, but still used - string.Format(IntegrationSettings.AnalyticsSampleRateKey, integrationName.ToUpperInvariant()), - [ - string.Format(IntegrationSettings.AnalyticsSampleRateKey, integrationName), + var integrationAnalyticsSampleRateKeys = IntegrationNameToKeys.GetIntegrationAnalyticsSampleRateKeys(integrationName); #pragma warning restore 618 - $"DD_{integrationName}_ANALYTICS_SAMPLE_RATE" - ]); + return new( + _source, + _telemetry, + integrationAnalyticsSampleRateKeys.Key, + integrationAnalyticsSampleRateKeys.Value); + } internal readonly struct HasKeys(IConfigurationSource source, IConfigurationTelemetry telemetry, string key, string[]? providedAliases = null) { diff --git a/tracer/src/Datadog.Trace/Configuration/IntegrationSettingsCollection.cs b/tracer/src/Datadog.Trace/Configuration/IntegrationSettingsCollection.cs index c94e2a1f2e40..88bd5e18d003 100644 --- a/tracer/src/Datadog.Trace/Configuration/IntegrationSettingsCollection.cs +++ b/tracer/src/Datadog.Trace/Configuration/IntegrationSettingsCollection.cs @@ -60,7 +60,7 @@ private static IntegrationSettings[] GetIntegrationSettings(IConfigurationSource { var integrations = new IntegrationSettings[IntegrationRegistry.Names.Length]; - for (int i = 0; i < integrations.Length; i++) + for (var i = 0; i < integrations.Length; i++) { var name = IntegrationRegistry.Names[i]; diff --git a/tracer/src/Datadog.Trace/Generated/net461/Datadog.Trace.SourceGenerators/EnumExtensionsGenerator/IntegrationNameToKeys.g.cs b/tracer/src/Datadog.Trace/Generated/net461/Datadog.Trace.SourceGenerators/EnumExtensionsGenerator/IntegrationNameToKeys.g.cs new file mode 100644 index 000000000000..1efa701f825a --- /dev/null +++ b/tracer/src/Datadog.Trace/Generated/net461/Datadog.Trace.SourceGenerators/EnumExtensionsGenerator/IntegrationNameToKeys.g.cs @@ -0,0 +1,551 @@ +// +// Unless explicitly stated otherwise all files in this repository are licensed under the Apache 2 License. +// This product includes software developed at Datadog (https://www.datadoghq.com/). Copyright 2017 Datadog, Inc. +// +// + +#nullable enable + + +namespace Datadog.Trace.Configuration +{ + /// + /// Generated mapping of integration names to their configuration keys. + /// + internal static partial class IntegrationNameToKeys + { + private const string ObsoleteMessage = DeprecationMessages.AppAnalytics; + + /// + /// All integration enabled keys (canonical + aliases). + /// + [Datadog.Trace.SourceGenerators.TestingOnly] + public static string[] GetAllIntegrationEnabledKeys() => + [ + "DD_TRACE_HTTPMESSAGEHANDLER_ENABLED", "DD_TRACE_HttpMessageHandler_ENABLED", "DD_HttpMessageHandler_ENABLED", + "DD_TRACE_HTTPMESSAGEHANDLER_ANALYTICS_ENABLED", "DD_TRACE_HttpMessageHandler_ANALYTICS_ENABLED", "DD_HttpMessageHandler_ANALYTICS_ENABLED", + "DD_TRACE_HTTPMESSAGEHANDLER_ANALYTICS_SAMPLE_RATE", "DD_TRACE_HttpMessageHandler_ANALYTICS_SAMPLE_RATE", "DD_HttpMessageHandler_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_HTTPSOCKETSHANDLER_ENABLED", "DD_TRACE_HttpSocketsHandler_ENABLED", "DD_HttpSocketsHandler_ENABLED", + "DD_TRACE_HTTPSOCKETSHANDLER_ANALYTICS_ENABLED", "DD_TRACE_HttpSocketsHandler_ANALYTICS_ENABLED", "DD_HttpSocketsHandler_ANALYTICS_ENABLED", + "DD_TRACE_HTTPSOCKETSHANDLER_ANALYTICS_SAMPLE_RATE", "DD_TRACE_HttpSocketsHandler_ANALYTICS_SAMPLE_RATE", "DD_HttpSocketsHandler_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_WINHTTPHANDLER_ENABLED", "DD_TRACE_WinHttpHandler_ENABLED", "DD_WinHttpHandler_ENABLED", + "DD_TRACE_WINHTTPHANDLER_ANALYTICS_ENABLED", "DD_TRACE_WinHttpHandler_ANALYTICS_ENABLED", "DD_WinHttpHandler_ANALYTICS_ENABLED", + "DD_TRACE_WINHTTPHANDLER_ANALYTICS_SAMPLE_RATE", "DD_TRACE_WinHttpHandler_ANALYTICS_SAMPLE_RATE", "DD_WinHttpHandler_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_CURLHANDLER_ENABLED", "DD_TRACE_CurlHandler_ENABLED", "DD_CurlHandler_ENABLED", + "DD_TRACE_CURLHANDLER_ANALYTICS_ENABLED", "DD_TRACE_CurlHandler_ANALYTICS_ENABLED", "DD_CurlHandler_ANALYTICS_ENABLED", + "DD_TRACE_CURLHANDLER_ANALYTICS_SAMPLE_RATE", "DD_TRACE_CurlHandler_ANALYTICS_SAMPLE_RATE", "DD_CurlHandler_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_ASPNETCORE_ENABLED", "DD_TRACE_AspNetCore_ENABLED", "DD_AspNetCore_ENABLED", + "DD_TRACE_ASPNETCORE_ANALYTICS_ENABLED", "DD_TRACE_AspNetCore_ANALYTICS_ENABLED", "DD_AspNetCore_ANALYTICS_ENABLED", + "DD_TRACE_ASPNETCORE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AspNetCore_ANALYTICS_SAMPLE_RATE", "DD_AspNetCore_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_ADONET_ENABLED", "DD_TRACE_AdoNet_ENABLED", "DD_AdoNet_ENABLED", + "DD_TRACE_ADONET_ANALYTICS_ENABLED", "DD_TRACE_AdoNet_ANALYTICS_ENABLED", "DD_AdoNet_ANALYTICS_ENABLED", + "DD_TRACE_ADONET_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AdoNet_ANALYTICS_SAMPLE_RATE", "DD_AdoNet_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_ASPNET_ENABLED", "DD_TRACE_AspNet_ENABLED", "DD_AspNet_ENABLED", + "DD_TRACE_ASPNET_ANALYTICS_ENABLED", "DD_TRACE_AspNet_ANALYTICS_ENABLED", "DD_AspNet_ANALYTICS_ENABLED", + "DD_TRACE_ASPNET_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AspNet_ANALYTICS_SAMPLE_RATE", "DD_AspNet_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_ASPNETMVC_ENABLED", "DD_TRACE_AspNetMvc_ENABLED", "DD_AspNetMvc_ENABLED", + "DD_TRACE_ASPNETMVC_ANALYTICS_ENABLED", "DD_TRACE_AspNetMvc_ANALYTICS_ENABLED", "DD_AspNetMvc_ANALYTICS_ENABLED", + "DD_TRACE_ASPNETMVC_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AspNetMvc_ANALYTICS_SAMPLE_RATE", "DD_AspNetMvc_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_ASPNETWEBAPI2_ENABLED", "DD_TRACE_AspNetWebApi2_ENABLED", "DD_AspNetWebApi2_ENABLED", + "DD_TRACE_ASPNETWEBAPI2_ANALYTICS_ENABLED", "DD_TRACE_AspNetWebApi2_ANALYTICS_ENABLED", "DD_AspNetWebApi2_ANALYTICS_ENABLED", + "DD_TRACE_ASPNETWEBAPI2_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AspNetWebApi2_ANALYTICS_SAMPLE_RATE", "DD_AspNetWebApi2_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_GRAPHQL_ENABLED", "DD_TRACE_GraphQL_ENABLED", "DD_GraphQL_ENABLED", + "DD_TRACE_GRAPHQL_ANALYTICS_ENABLED", "DD_TRACE_GraphQL_ANALYTICS_ENABLED", "DD_GraphQL_ANALYTICS_ENABLED", + "DD_TRACE_GRAPHQL_ANALYTICS_SAMPLE_RATE", "DD_TRACE_GraphQL_ANALYTICS_SAMPLE_RATE", "DD_GraphQL_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_HOTCHOCOLATE_ENABLED", "DD_TRACE_HotChocolate_ENABLED", "DD_HotChocolate_ENABLED", + "DD_TRACE_HOTCHOCOLATE_ANALYTICS_ENABLED", "DD_TRACE_HotChocolate_ANALYTICS_ENABLED", "DD_HotChocolate_ANALYTICS_ENABLED", + "DD_TRACE_HOTCHOCOLATE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_HotChocolate_ANALYTICS_SAMPLE_RATE", "DD_HotChocolate_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_MONGODB_ENABLED", "DD_TRACE_MongoDb_ENABLED", "DD_MongoDb_ENABLED", + "DD_TRACE_MONGODB_ANALYTICS_ENABLED", "DD_TRACE_MongoDb_ANALYTICS_ENABLED", "DD_MongoDb_ANALYTICS_ENABLED", + "DD_TRACE_MONGODB_ANALYTICS_SAMPLE_RATE", "DD_TRACE_MongoDb_ANALYTICS_SAMPLE_RATE", "DD_MongoDb_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_XUNIT_ENABLED", "DD_TRACE_XUnit_ENABLED", "DD_XUnit_ENABLED", + "DD_TRACE_XUNIT_ANALYTICS_ENABLED", "DD_TRACE_XUnit_ANALYTICS_ENABLED", "DD_XUnit_ANALYTICS_ENABLED", + "DD_TRACE_XUNIT_ANALYTICS_SAMPLE_RATE", "DD_TRACE_XUnit_ANALYTICS_SAMPLE_RATE", "DD_XUnit_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_NUNIT_ENABLED", "DD_TRACE_NUnit_ENABLED", "DD_NUnit_ENABLED", + "DD_TRACE_NUNIT_ANALYTICS_ENABLED", "DD_TRACE_NUnit_ANALYTICS_ENABLED", "DD_NUnit_ANALYTICS_ENABLED", + "DD_TRACE_NUNIT_ANALYTICS_SAMPLE_RATE", "DD_TRACE_NUnit_ANALYTICS_SAMPLE_RATE", "DD_NUnit_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_MSTESTV2_ENABLED", "DD_TRACE_MsTestV2_ENABLED", "DD_MsTestV2_ENABLED", + "DD_TRACE_MSTESTV2_ANALYTICS_ENABLED", "DD_TRACE_MsTestV2_ANALYTICS_ENABLED", "DD_MsTestV2_ANALYTICS_ENABLED", + "DD_TRACE_MSTESTV2_ANALYTICS_SAMPLE_RATE", "DD_TRACE_MsTestV2_ANALYTICS_SAMPLE_RATE", "DD_MsTestV2_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_WCF_ENABLED", "DD_TRACE_Wcf_ENABLED", "DD_Wcf_ENABLED", + "DD_TRACE_WCF_ANALYTICS_ENABLED", "DD_TRACE_Wcf_ANALYTICS_ENABLED", "DD_Wcf_ANALYTICS_ENABLED", + "DD_TRACE_WCF_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Wcf_ANALYTICS_SAMPLE_RATE", "DD_Wcf_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_WEBREQUEST_ENABLED", "DD_TRACE_WebRequest_ENABLED", "DD_WebRequest_ENABLED", + "DD_TRACE_WEBREQUEST_ANALYTICS_ENABLED", "DD_TRACE_WebRequest_ANALYTICS_ENABLED", "DD_WebRequest_ANALYTICS_ENABLED", + "DD_TRACE_WEBREQUEST_ANALYTICS_SAMPLE_RATE", "DD_TRACE_WebRequest_ANALYTICS_SAMPLE_RATE", "DD_WebRequest_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_ELASTICSEARCHNET_ENABLED", "DD_TRACE_ElasticsearchNet_ENABLED", "DD_ElasticsearchNet_ENABLED", + "DD_TRACE_ELASTICSEARCHNET_ANALYTICS_ENABLED", "DD_TRACE_ElasticsearchNet_ANALYTICS_ENABLED", "DD_ElasticsearchNet_ANALYTICS_ENABLED", + "DD_TRACE_ELASTICSEARCHNET_ANALYTICS_SAMPLE_RATE", "DD_TRACE_ElasticsearchNet_ANALYTICS_SAMPLE_RATE", "DD_ElasticsearchNet_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SERVICESTACKREDIS_ENABLED", "DD_TRACE_ServiceStackRedis_ENABLED", "DD_ServiceStackRedis_ENABLED", + "DD_TRACE_SERVICESTACKREDIS_ANALYTICS_ENABLED", "DD_TRACE_ServiceStackRedis_ANALYTICS_ENABLED", "DD_ServiceStackRedis_ANALYTICS_ENABLED", + "DD_TRACE_SERVICESTACKREDIS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_ServiceStackRedis_ANALYTICS_SAMPLE_RATE", "DD_ServiceStackRedis_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_STACKEXCHANGEREDIS_ENABLED", "DD_TRACE_StackExchangeRedis_ENABLED", "DD_StackExchangeRedis_ENABLED", + "DD_TRACE_STACKEXCHANGEREDIS_ANALYTICS_ENABLED", "DD_TRACE_StackExchangeRedis_ANALYTICS_ENABLED", "DD_StackExchangeRedis_ANALYTICS_ENABLED", + "DD_TRACE_STACKEXCHANGEREDIS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_StackExchangeRedis_ANALYTICS_SAMPLE_RATE", "DD_StackExchangeRedis_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SERVICEREMOTING_ENABLED", "DD_TRACE_ServiceRemoting_ENABLED", "DD_ServiceRemoting_ENABLED", + "DD_TRACE_SERVICEREMOTING_ANALYTICS_ENABLED", "DD_TRACE_ServiceRemoting_ANALYTICS_ENABLED", "DD_ServiceRemoting_ANALYTICS_ENABLED", + "DD_TRACE_SERVICEREMOTING_ANALYTICS_SAMPLE_RATE", "DD_TRACE_ServiceRemoting_ANALYTICS_SAMPLE_RATE", "DD_ServiceRemoting_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_RABBITMQ_ENABLED", "DD_TRACE_RabbitMQ_ENABLED", "DD_RabbitMQ_ENABLED", + "DD_TRACE_RABBITMQ_ANALYTICS_ENABLED", "DD_TRACE_RabbitMQ_ANALYTICS_ENABLED", "DD_RabbitMQ_ANALYTICS_ENABLED", + "DD_TRACE_RABBITMQ_ANALYTICS_SAMPLE_RATE", "DD_TRACE_RabbitMQ_ANALYTICS_SAMPLE_RATE", "DD_RabbitMQ_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_MSMQ_ENABLED", "DD_TRACE_Msmq_ENABLED", "DD_Msmq_ENABLED", + "DD_TRACE_MSMQ_ANALYTICS_ENABLED", "DD_TRACE_Msmq_ANALYTICS_ENABLED", "DD_Msmq_ANALYTICS_ENABLED", + "DD_TRACE_MSMQ_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Msmq_ANALYTICS_SAMPLE_RATE", "DD_Msmq_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_KAFKA_ENABLED", "DD_TRACE_Kafka_ENABLED", "DD_Kafka_ENABLED", + "DD_TRACE_KAFKA_ANALYTICS_ENABLED", "DD_TRACE_Kafka_ANALYTICS_ENABLED", "DD_Kafka_ANALYTICS_ENABLED", + "DD_TRACE_KAFKA_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Kafka_ANALYTICS_SAMPLE_RATE", "DD_Kafka_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_COSMOSDB_ENABLED", "DD_TRACE_CosmosDb_ENABLED", "DD_CosmosDb_ENABLED", + "DD_TRACE_COSMOSDB_ANALYTICS_ENABLED", "DD_TRACE_CosmosDb_ANALYTICS_ENABLED", "DD_CosmosDb_ANALYTICS_ENABLED", + "DD_TRACE_COSMOSDB_ANALYTICS_SAMPLE_RATE", "DD_TRACE_CosmosDb_ANALYTICS_SAMPLE_RATE", "DD_CosmosDb_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSS3_ENABLED", "DD_TRACE_AwsS3_ENABLED", "DD_AwsS3_ENABLED", + "DD_TRACE_AWSS3_ANALYTICS_ENABLED", "DD_TRACE_AwsS3_ANALYTICS_ENABLED", "DD_AwsS3_ANALYTICS_ENABLED", + "DD_TRACE_AWSS3_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsS3_ANALYTICS_SAMPLE_RATE", "DD_AwsS3_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSSDK_ENABLED", "DD_TRACE_AwsSdk_ENABLED", "DD_AwsSdk_ENABLED", + "DD_TRACE_AWSSDK_ANALYTICS_ENABLED", "DD_TRACE_AwsSdk_ANALYTICS_ENABLED", "DD_AwsSdk_ANALYTICS_ENABLED", + "DD_TRACE_AWSSDK_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsSdk_ANALYTICS_SAMPLE_RATE", "DD_AwsSdk_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSSQS_ENABLED", "DD_TRACE_AwsSqs_ENABLED", "DD_AwsSqs_ENABLED", + "DD_TRACE_AWSSQS_ANALYTICS_ENABLED", "DD_TRACE_AwsSqs_ANALYTICS_ENABLED", "DD_AwsSqs_ANALYTICS_ENABLED", + "DD_TRACE_AWSSQS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsSqs_ANALYTICS_SAMPLE_RATE", "DD_AwsSqs_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSSNS_ENABLED", "DD_TRACE_AwsSns_ENABLED", "DD_AwsSns_ENABLED", + "DD_TRACE_AWSSNS_ANALYTICS_ENABLED", "DD_TRACE_AwsSns_ANALYTICS_ENABLED", "DD_AwsSns_ANALYTICS_ENABLED", + "DD_TRACE_AWSSNS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsSns_ANALYTICS_SAMPLE_RATE", "DD_AwsSns_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSEVENTBRIDGE_ENABLED", "DD_TRACE_AwsEventBridge_ENABLED", "DD_AwsEventBridge_ENABLED", + "DD_TRACE_AWSEVENTBRIDGE_ANALYTICS_ENABLED", "DD_TRACE_AwsEventBridge_ANALYTICS_ENABLED", "DD_AwsEventBridge_ANALYTICS_ENABLED", + "DD_TRACE_AWSEVENTBRIDGE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsEventBridge_ANALYTICS_SAMPLE_RATE", "DD_AwsEventBridge_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSSTEPFUNCTIONS_ENABLED", "DD_TRACE_AwsStepFunctions_ENABLED", "DD_AwsStepFunctions_ENABLED", + "DD_TRACE_AWSSTEPFUNCTIONS_ANALYTICS_ENABLED", "DD_TRACE_AwsStepFunctions_ANALYTICS_ENABLED", "DD_AwsStepFunctions_ANALYTICS_ENABLED", + "DD_TRACE_AWSSTEPFUNCTIONS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsStepFunctions_ANALYTICS_SAMPLE_RATE", "DD_AwsStepFunctions_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSLAMBDA_ENABLED", "DD_TRACE_AwsLambda_ENABLED", "DD_AwsLambda_ENABLED", + "DD_TRACE_AWSLAMBDA_ANALYTICS_ENABLED", "DD_TRACE_AwsLambda_ANALYTICS_ENABLED", "DD_AwsLambda_ANALYTICS_ENABLED", + "DD_TRACE_AWSLAMBDA_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsLambda_ANALYTICS_SAMPLE_RATE", "DD_AwsLambda_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_ILOGGER_ENABLED", "DD_TRACE_ILogger_ENABLED", "DD_ILogger_ENABLED", + "DD_TRACE_ILOGGER_ANALYTICS_ENABLED", "DD_TRACE_ILogger_ANALYTICS_ENABLED", "DD_ILogger_ANALYTICS_ENABLED", + "DD_TRACE_ILOGGER_ANALYTICS_SAMPLE_RATE", "DD_TRACE_ILogger_ANALYTICS_SAMPLE_RATE", "DD_ILogger_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AEROSPIKE_ENABLED", "DD_TRACE_Aerospike_ENABLED", "DD_Aerospike_ENABLED", + "DD_TRACE_AEROSPIKE_ANALYTICS_ENABLED", "DD_TRACE_Aerospike_ANALYTICS_ENABLED", "DD_Aerospike_ANALYTICS_ENABLED", + "DD_TRACE_AEROSPIKE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Aerospike_ANALYTICS_SAMPLE_RATE", "DD_Aerospike_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AZUREFUNCTIONS_ENABLED", "DD_TRACE_AzureFunctions_ENABLED", "DD_AzureFunctions_ENABLED", + "DD_TRACE_AZUREFUNCTIONS_ANALYTICS_ENABLED", "DD_TRACE_AzureFunctions_ANALYTICS_ENABLED", "DD_AzureFunctions_ANALYTICS_ENABLED", + "DD_TRACE_AZUREFUNCTIONS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AzureFunctions_ANALYTICS_SAMPLE_RATE", "DD_AzureFunctions_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_COUCHBASE_ENABLED", "DD_TRACE_Couchbase_ENABLED", "DD_Couchbase_ENABLED", + "DD_TRACE_COUCHBASE_ANALYTICS_ENABLED", "DD_TRACE_Couchbase_ANALYTICS_ENABLED", "DD_Couchbase_ANALYTICS_ENABLED", + "DD_TRACE_COUCHBASE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Couchbase_ANALYTICS_SAMPLE_RATE", "DD_Couchbase_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_MYSQL_ENABLED", "DD_TRACE_MySql_ENABLED", "DD_MySql_ENABLED", + "DD_TRACE_MYSQL_ANALYTICS_ENABLED", "DD_TRACE_MySql_ANALYTICS_ENABLED", "DD_MySql_ANALYTICS_ENABLED", + "DD_TRACE_MYSQL_ANALYTICS_SAMPLE_RATE", "DD_TRACE_MySql_ANALYTICS_SAMPLE_RATE", "DD_MySql_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_NPGSQL_ENABLED", "DD_TRACE_Npgsql_ENABLED", "DD_Npgsql_ENABLED", + "DD_TRACE_NPGSQL_ANALYTICS_ENABLED", "DD_TRACE_Npgsql_ANALYTICS_ENABLED", "DD_Npgsql_ANALYTICS_ENABLED", + "DD_TRACE_NPGSQL_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Npgsql_ANALYTICS_SAMPLE_RATE", "DD_Npgsql_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_ORACLE_ENABLED", "DD_TRACE_Oracle_ENABLED", "DD_Oracle_ENABLED", + "DD_TRACE_ORACLE_ANALYTICS_ENABLED", "DD_TRACE_Oracle_ANALYTICS_ENABLED", "DD_Oracle_ANALYTICS_ENABLED", + "DD_TRACE_ORACLE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Oracle_ANALYTICS_SAMPLE_RATE", "DD_Oracle_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SQLCLIENT_ENABLED", "DD_TRACE_SqlClient_ENABLED", "DD_SqlClient_ENABLED", + "DD_TRACE_SQLCLIENT_ANALYTICS_ENABLED", "DD_TRACE_SqlClient_ANALYTICS_ENABLED", "DD_SqlClient_ANALYTICS_ENABLED", + "DD_TRACE_SQLCLIENT_ANALYTICS_SAMPLE_RATE", "DD_TRACE_SqlClient_ANALYTICS_SAMPLE_RATE", "DD_SqlClient_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SQLITE_ENABLED", "DD_TRACE_Sqlite_ENABLED", "DD_Sqlite_ENABLED", + "DD_TRACE_SQLITE_ANALYTICS_ENABLED", "DD_TRACE_Sqlite_ANALYTICS_ENABLED", "DD_Sqlite_ANALYTICS_ENABLED", + "DD_TRACE_SQLITE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Sqlite_ANALYTICS_SAMPLE_RATE", "DD_Sqlite_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SERILOG_ENABLED", "DD_TRACE_Serilog_ENABLED", "DD_Serilog_ENABLED", + "DD_TRACE_SERILOG_ANALYTICS_ENABLED", "DD_TRACE_Serilog_ANALYTICS_ENABLED", "DD_Serilog_ANALYTICS_ENABLED", + "DD_TRACE_SERILOG_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Serilog_ANALYTICS_SAMPLE_RATE", "DD_Serilog_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_LOG4NET_ENABLED", "DD_TRACE_Log4Net_ENABLED", "DD_Log4Net_ENABLED", + "DD_TRACE_LOG4NET_ANALYTICS_ENABLED", "DD_TRACE_Log4Net_ANALYTICS_ENABLED", "DD_Log4Net_ANALYTICS_ENABLED", + "DD_TRACE_LOG4NET_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Log4Net_ANALYTICS_SAMPLE_RATE", "DD_Log4Net_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_NLOG_ENABLED", "DD_TRACE_NLog_ENABLED", "DD_NLog_ENABLED", + "DD_TRACE_NLOG_ANALYTICS_ENABLED", "DD_TRACE_NLog_ANALYTICS_ENABLED", "DD_NLog_ANALYTICS_ENABLED", + "DD_TRACE_NLOG_ANALYTICS_SAMPLE_RATE", "DD_TRACE_NLog_ANALYTICS_SAMPLE_RATE", "DD_NLog_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_TRACEANNOTATIONS_ENABLED", "DD_TRACE_TraceAnnotations_ENABLED", "DD_TraceAnnotations_ENABLED", + "DD_TRACE_TRACEANNOTATIONS_ANALYTICS_ENABLED", "DD_TRACE_TraceAnnotations_ANALYTICS_ENABLED", "DD_TraceAnnotations_ANALYTICS_ENABLED", + "DD_TRACE_TRACEANNOTATIONS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_TraceAnnotations_ANALYTICS_SAMPLE_RATE", "DD_TraceAnnotations_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_GRPC_ENABLED", "DD_TRACE_Grpc_ENABLED", "DD_Grpc_ENABLED", + "DD_TRACE_GRPC_ANALYTICS_ENABLED", "DD_TRACE_Grpc_ANALYTICS_ENABLED", "DD_Grpc_ANALYTICS_ENABLED", + "DD_TRACE_GRPC_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Grpc_ANALYTICS_SAMPLE_RATE", "DD_Grpc_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_PROCESS_ENABLED", "DD_TRACE_Process_ENABLED", "DD_Process_ENABLED", + "DD_TRACE_PROCESS_ANALYTICS_ENABLED", "DD_TRACE_Process_ANALYTICS_ENABLED", "DD_Process_ANALYTICS_ENABLED", + "DD_TRACE_PROCESS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Process_ANALYTICS_SAMPLE_RATE", "DD_Process_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_HASHALGORITHM_ENABLED", "DD_TRACE_HashAlgorithm_ENABLED", "DD_HashAlgorithm_ENABLED", + "DD_TRACE_HASHALGORITHM_ANALYTICS_ENABLED", "DD_TRACE_HashAlgorithm_ANALYTICS_ENABLED", "DD_HashAlgorithm_ANALYTICS_ENABLED", + "DD_TRACE_HASHALGORITHM_ANALYTICS_SAMPLE_RATE", "DD_TRACE_HashAlgorithm_ANALYTICS_SAMPLE_RATE", "DD_HashAlgorithm_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SYMMETRICALGORITHM_ENABLED", "DD_TRACE_SymmetricAlgorithm_ENABLED", "DD_SymmetricAlgorithm_ENABLED", + "DD_TRACE_SYMMETRICALGORITHM_ANALYTICS_ENABLED", "DD_TRACE_SymmetricAlgorithm_ANALYTICS_ENABLED", "DD_SymmetricAlgorithm_ANALYTICS_ENABLED", + "DD_TRACE_SYMMETRICALGORITHM_ANALYTICS_SAMPLE_RATE", "DD_TRACE_SymmetricAlgorithm_ANALYTICS_SAMPLE_RATE", "DD_SymmetricAlgorithm_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_OPENTELEMETRY_ENABLED", "DD_TRACE_OpenTelemetry_ENABLED", "DD_OpenTelemetry_ENABLED", + "DD_TRACE_OPENTELEMETRY_ANALYTICS_ENABLED", "DD_TRACE_OpenTelemetry_ANALYTICS_ENABLED", "DD_OpenTelemetry_ANALYTICS_ENABLED", + "DD_TRACE_OPENTELEMETRY_ANALYTICS_SAMPLE_RATE", "DD_TRACE_OpenTelemetry_ANALYTICS_SAMPLE_RATE", "DD_OpenTelemetry_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_PATHTRAVERSAL_ENABLED", "DD_TRACE_PathTraversal_ENABLED", "DD_PathTraversal_ENABLED", + "DD_TRACE_PATHTRAVERSAL_ANALYTICS_ENABLED", "DD_TRACE_PathTraversal_ANALYTICS_ENABLED", "DD_PathTraversal_ANALYTICS_ENABLED", + "DD_TRACE_PATHTRAVERSAL_ANALYTICS_SAMPLE_RATE", "DD_TRACE_PathTraversal_ANALYTICS_SAMPLE_RATE", "DD_PathTraversal_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_LDAP_ENABLED", "DD_TRACE_Ldap_ENABLED", "DD_Ldap_ENABLED", + "DD_TRACE_LDAP_ANALYTICS_ENABLED", "DD_TRACE_Ldap_ANALYTICS_ENABLED", "DD_Ldap_ANALYTICS_ENABLED", + "DD_TRACE_LDAP_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Ldap_ANALYTICS_SAMPLE_RATE", "DD_Ldap_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SSRF_ENABLED", "DD_TRACE_Ssrf_ENABLED", "DD_Ssrf_ENABLED", + "DD_TRACE_SSRF_ANALYTICS_ENABLED", "DD_TRACE_Ssrf_ANALYTICS_ENABLED", "DD_Ssrf_ANALYTICS_ENABLED", + "DD_TRACE_SSRF_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Ssrf_ANALYTICS_SAMPLE_RATE", "DD_Ssrf_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSKINESIS_ENABLED", "DD_TRACE_AwsKinesis_ENABLED", "DD_AwsKinesis_ENABLED", + "DD_TRACE_AWSKINESIS_ANALYTICS_ENABLED", "DD_TRACE_AwsKinesis_ANALYTICS_ENABLED", "DD_AwsKinesis_ANALYTICS_ENABLED", + "DD_TRACE_AWSKINESIS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsKinesis_ANALYTICS_SAMPLE_RATE", "DD_AwsKinesis_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AZURESERVICEBUS_ENABLED", "DD_TRACE_AzureServiceBus_ENABLED", "DD_AzureServiceBus_ENABLED", + "DD_TRACE_AZURESERVICEBUS_ANALYTICS_ENABLED", "DD_TRACE_AzureServiceBus_ANALYTICS_ENABLED", "DD_AzureServiceBus_ANALYTICS_ENABLED", + "DD_TRACE_AZURESERVICEBUS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AzureServiceBus_ANALYTICS_SAMPLE_RATE", "DD_AzureServiceBus_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SYSTEMRANDOM_ENABLED", "DD_TRACE_SystemRandom_ENABLED", "DD_SystemRandom_ENABLED", + "DD_TRACE_SYSTEMRANDOM_ANALYTICS_ENABLED", "DD_TRACE_SystemRandom_ANALYTICS_ENABLED", "DD_SystemRandom_ANALYTICS_ENABLED", + "DD_TRACE_SYSTEMRANDOM_ANALYTICS_SAMPLE_RATE", "DD_TRACE_SystemRandom_ANALYTICS_SAMPLE_RATE", "DD_SystemRandom_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSDYNAMODB_ENABLED", "DD_TRACE_AwsDynamoDb_ENABLED", "DD_AwsDynamoDb_ENABLED", + "DD_TRACE_AWSDYNAMODB_ANALYTICS_ENABLED", "DD_TRACE_AwsDynamoDb_ANALYTICS_ENABLED", "DD_AwsDynamoDb_ANALYTICS_ENABLED", + "DD_TRACE_AWSDYNAMODB_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsDynamoDb_ANALYTICS_SAMPLE_RATE", "DD_AwsDynamoDb_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_HARDCODEDSECRET_ENABLED", "DD_TRACE_HardcodedSecret_ENABLED", "DD_HardcodedSecret_ENABLED", + "DD_TRACE_HARDCODEDSECRET_ANALYTICS_ENABLED", "DD_TRACE_HardcodedSecret_ANALYTICS_ENABLED", "DD_HardcodedSecret_ANALYTICS_ENABLED", + "DD_TRACE_HARDCODEDSECRET_ANALYTICS_SAMPLE_RATE", "DD_TRACE_HardcodedSecret_ANALYTICS_SAMPLE_RATE", "DD_HardcodedSecret_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_IBMMQ_ENABLED", "DD_TRACE_IbmMq_ENABLED", "DD_IbmMq_ENABLED", + "DD_TRACE_IBMMQ_ANALYTICS_ENABLED", "DD_TRACE_IbmMq_ANALYTICS_ENABLED", "DD_IbmMq_ANALYTICS_ENABLED", + "DD_TRACE_IBMMQ_ANALYTICS_SAMPLE_RATE", "DD_TRACE_IbmMq_ANALYTICS_SAMPLE_RATE", "DD_IbmMq_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_REMOTING_ENABLED", "DD_TRACE_Remoting_ENABLED", "DD_Remoting_ENABLED", + "DD_TRACE_REMOTING_ANALYTICS_ENABLED", "DD_TRACE_Remoting_ANALYTICS_ENABLED", "DD_Remoting_ANALYTICS_ENABLED", + "DD_TRACE_REMOTING_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Remoting_ANALYTICS_SAMPLE_RATE", "DD_Remoting_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_TRUSTBOUNDARYVIOLATION_ENABLED", "DD_TRACE_TrustBoundaryViolation_ENABLED", "DD_TrustBoundaryViolation_ENABLED", + "DD_TRACE_TRUSTBOUNDARYVIOLATION_ANALYTICS_ENABLED", "DD_TRACE_TrustBoundaryViolation_ANALYTICS_ENABLED", "DD_TrustBoundaryViolation_ANALYTICS_ENABLED", + "DD_TRACE_TRUSTBOUNDARYVIOLATION_ANALYTICS_SAMPLE_RATE", "DD_TRACE_TrustBoundaryViolation_ANALYTICS_SAMPLE_RATE", "DD_TrustBoundaryViolation_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_UNVALIDATEDREDIRECT_ENABLED", "DD_TRACE_UnvalidatedRedirect_ENABLED", "DD_UnvalidatedRedirect_ENABLED", + "DD_TRACE_UNVALIDATEDREDIRECT_ANALYTICS_ENABLED", "DD_TRACE_UnvalidatedRedirect_ANALYTICS_ENABLED", "DD_UnvalidatedRedirect_ANALYTICS_ENABLED", + "DD_TRACE_UNVALIDATEDREDIRECT_ANALYTICS_SAMPLE_RATE", "DD_TRACE_UnvalidatedRedirect_ANALYTICS_SAMPLE_RATE", "DD_UnvalidatedRedirect_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_TESTPLATFORMASSEMBLYRESOLVER_ENABLED", "DD_TRACE_TestPlatformAssemblyResolver_ENABLED", "DD_TestPlatformAssemblyResolver_ENABLED", + "DD_TRACE_TESTPLATFORMASSEMBLYRESOLVER_ANALYTICS_ENABLED", "DD_TRACE_TestPlatformAssemblyResolver_ANALYTICS_ENABLED", "DD_TestPlatformAssemblyResolver_ANALYTICS_ENABLED", + "DD_TRACE_TESTPLATFORMASSEMBLYRESOLVER_ANALYTICS_SAMPLE_RATE", "DD_TRACE_TestPlatformAssemblyResolver_ANALYTICS_SAMPLE_RATE", "DD_TestPlatformAssemblyResolver_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_STACKTRACELEAK_ENABLED", "DD_TRACE_StackTraceLeak_ENABLED", "DD_StackTraceLeak_ENABLED", + "DD_TRACE_STACKTRACELEAK_ANALYTICS_ENABLED", "DD_TRACE_StackTraceLeak_ANALYTICS_ENABLED", "DD_StackTraceLeak_ANALYTICS_ENABLED", + "DD_TRACE_STACKTRACELEAK_ANALYTICS_SAMPLE_RATE", "DD_TRACE_StackTraceLeak_ANALYTICS_SAMPLE_RATE", "DD_StackTraceLeak_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_XPATHINJECTION_ENABLED", "DD_TRACE_XpathInjection_ENABLED", "DD_XpathInjection_ENABLED", + "DD_TRACE_XPATHINJECTION_ANALYTICS_ENABLED", "DD_TRACE_XpathInjection_ANALYTICS_ENABLED", "DD_XpathInjection_ANALYTICS_ENABLED", + "DD_TRACE_XPATHINJECTION_ANALYTICS_SAMPLE_RATE", "DD_TRACE_XpathInjection_ANALYTICS_SAMPLE_RATE", "DD_XpathInjection_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_REFLECTIONINJECTION_ENABLED", "DD_TRACE_ReflectionInjection_ENABLED", "DD_ReflectionInjection_ENABLED", + "DD_TRACE_REFLECTIONINJECTION_ANALYTICS_ENABLED", "DD_TRACE_ReflectionInjection_ANALYTICS_ENABLED", "DD_ReflectionInjection_ANALYTICS_ENABLED", + "DD_TRACE_REFLECTIONINJECTION_ANALYTICS_SAMPLE_RATE", "DD_TRACE_ReflectionInjection_ANALYTICS_SAMPLE_RATE", "DD_ReflectionInjection_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_XSS_ENABLED", "DD_TRACE_Xss_ENABLED", "DD_Xss_ENABLED", + "DD_TRACE_XSS_ANALYTICS_ENABLED", "DD_TRACE_Xss_ANALYTICS_ENABLED", "DD_Xss_ANALYTICS_ENABLED", + "DD_TRACE_XSS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Xss_ANALYTICS_SAMPLE_RATE", "DD_Xss_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_NHIBERNATE_ENABLED", "DD_TRACE_NHibernate_ENABLED", "DD_NHibernate_ENABLED", + "DD_TRACE_NHIBERNATE_ANALYTICS_ENABLED", "DD_TRACE_NHibernate_ANALYTICS_ENABLED", "DD_NHibernate_ANALYTICS_ENABLED", + "DD_TRACE_NHIBERNATE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_NHibernate_ANALYTICS_SAMPLE_RATE", "DD_NHibernate_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_DOTNETTEST_ENABLED", "DD_TRACE_DotnetTest_ENABLED", "DD_DotnetTest_ENABLED", + "DD_TRACE_DOTNETTEST_ANALYTICS_ENABLED", "DD_TRACE_DotnetTest_ANALYTICS_ENABLED", "DD_DotnetTest_ANALYTICS_ENABLED", + "DD_TRACE_DOTNETTEST_ANALYTICS_SAMPLE_RATE", "DD_TRACE_DotnetTest_ANALYTICS_SAMPLE_RATE", "DD_DotnetTest_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SELENIUM_ENABLED", "DD_TRACE_Selenium_ENABLED", "DD_Selenium_ENABLED", + "DD_TRACE_SELENIUM_ANALYTICS_ENABLED", "DD_TRACE_Selenium_ANALYTICS_ENABLED", "DD_Selenium_ANALYTICS_ENABLED", + "DD_TRACE_SELENIUM_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Selenium_ANALYTICS_SAMPLE_RATE", "DD_Selenium_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_DIRECTORYLISTINGLEAK_ENABLED", "DD_TRACE_DirectoryListingLeak_ENABLED", "DD_DirectoryListingLeak_ENABLED", + "DD_TRACE_DIRECTORYLISTINGLEAK_ANALYTICS_ENABLED", "DD_TRACE_DirectoryListingLeak_ANALYTICS_ENABLED", "DD_DirectoryListingLeak_ANALYTICS_ENABLED", + "DD_TRACE_DIRECTORYLISTINGLEAK_ANALYTICS_SAMPLE_RATE", "DD_TRACE_DirectoryListingLeak_ANALYTICS_SAMPLE_RATE", "DD_DirectoryListingLeak_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SESSIONTIMEOUT_ENABLED", "DD_TRACE_SessionTimeout_ENABLED", "DD_SessionTimeout_ENABLED", + "DD_TRACE_SESSIONTIMEOUT_ANALYTICS_ENABLED", "DD_TRACE_SessionTimeout_ANALYTICS_ENABLED", "DD_SessionTimeout_ANALYTICS_ENABLED", + "DD_TRACE_SESSIONTIMEOUT_ANALYTICS_SAMPLE_RATE", "DD_TRACE_SessionTimeout_ANALYTICS_SAMPLE_RATE", "DD_SessionTimeout_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_DATADOGTRACEMANUAL_ENABLED", "DD_TRACE_DatadogTraceManual_ENABLED", "DD_DatadogTraceManual_ENABLED", + "DD_TRACE_DATADOGTRACEMANUAL_ANALYTICS_ENABLED", "DD_TRACE_DatadogTraceManual_ANALYTICS_ENABLED", "DD_DatadogTraceManual_ANALYTICS_ENABLED", + "DD_TRACE_DATADOGTRACEMANUAL_ANALYTICS_SAMPLE_RATE", "DD_TRACE_DatadogTraceManual_ANALYTICS_SAMPLE_RATE", "DD_DatadogTraceManual_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_EMAILHTMLINJECTION_ENABLED", "DD_TRACE_EmailHtmlInjection_ENABLED", "DD_EmailHtmlInjection_ENABLED", + "DD_TRACE_EMAILHTMLINJECTION_ANALYTICS_ENABLED", "DD_TRACE_EmailHtmlInjection_ANALYTICS_ENABLED", "DD_EmailHtmlInjection_ANALYTICS_ENABLED", + "DD_TRACE_EMAILHTMLINJECTION_ANALYTICS_SAMPLE_RATE", "DD_TRACE_EmailHtmlInjection_ANALYTICS_SAMPLE_RATE", "DD_EmailHtmlInjection_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_PROTOBUF_ENABLED", "DD_TRACE_Protobuf_ENABLED", "DD_Protobuf_ENABLED", + "DD_TRACE_PROTOBUF_ANALYTICS_ENABLED", "DD_TRACE_Protobuf_ANALYTICS_ENABLED", "DD_Protobuf_ANALYTICS_ENABLED", + "DD_TRACE_PROTOBUF_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Protobuf_ANALYTICS_SAMPLE_RATE", "DD_Protobuf_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AZUREEVENTHUBS_ENABLED", "DD_TRACE_AzureEventHubs_ENABLED", "DD_AzureEventHubs_ENABLED", + "DD_TRACE_AZUREEVENTHUBS_ANALYTICS_ENABLED", "DD_TRACE_AzureEventHubs_ANALYTICS_ENABLED", "DD_AzureEventHubs_ANALYTICS_ENABLED", + "DD_TRACE_AZUREEVENTHUBS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AzureEventHubs_ANALYTICS_SAMPLE_RATE", "DD_AzureEventHubs_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_DATADOGTRACEVERSIONCONFLICT_ENABLED", "DD_TRACE_DatadogTraceVersionConflict_ENABLED", "DD_DatadogTraceVersionConflict_ENABLED", + "DD_TRACE_DATADOGTRACEVERSIONCONFLICT_ANALYTICS_ENABLED", "DD_TRACE_DatadogTraceVersionConflict_ANALYTICS_ENABLED", "DD_DatadogTraceVersionConflict_ANALYTICS_ENABLED", + "DD_TRACE_DATADOGTRACEVERSIONCONFLICT_ANALYTICS_SAMPLE_RATE", "DD_TRACE_DatadogTraceVersionConflict_ANALYTICS_SAMPLE_RATE", "DD_DatadogTraceVersionConflict_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_HANGFIRE_ENABLED", "DD_TRACE_Hangfire_ENABLED", "DD_Hangfire_ENABLED", + "DD_TRACE_HANGFIRE_ANALYTICS_ENABLED", "DD_TRACE_Hangfire_ANALYTICS_ENABLED", "DD_Hangfire_ANALYTICS_ENABLED", + "DD_TRACE_HANGFIRE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Hangfire_ANALYTICS_SAMPLE_RATE", "DD_Hangfire_ANALYTICS_SAMPLE_RATE", + ]; + /// + /// Gets the configuration keys for the specified integration name. + /// Returns a KeyValuePair where Key is the canonical key and Value is an array of aliases. + /// + /// The integration name + /// KeyValuePair with canonical key and aliases + public static System.Collections.Generic.KeyValuePair GetIntegrationEnabledKeys(string integrationName) => + integrationName switch + { + "HttpMessageHandler" => new("DD_TRACE_HTTPMESSAGEHANDLER_ENABLED", ["DD_TRACE_HttpMessageHandler_ENABLED", "DD_HttpMessageHandler_ENABLED"]), + "HttpSocketsHandler" => new("DD_TRACE_HTTPSOCKETSHANDLER_ENABLED", ["DD_TRACE_HttpSocketsHandler_ENABLED", "DD_HttpSocketsHandler_ENABLED"]), + "WinHttpHandler" => new("DD_TRACE_WINHTTPHANDLER_ENABLED", ["DD_TRACE_WinHttpHandler_ENABLED", "DD_WinHttpHandler_ENABLED"]), + "CurlHandler" => new("DD_TRACE_CURLHANDLER_ENABLED", ["DD_TRACE_CurlHandler_ENABLED", "DD_CurlHandler_ENABLED"]), + "AspNetCore" => new("DD_TRACE_ASPNETCORE_ENABLED", ["DD_TRACE_AspNetCore_ENABLED", "DD_AspNetCore_ENABLED"]), + "AdoNet" => new("DD_TRACE_ADONET_ENABLED", ["DD_TRACE_AdoNet_ENABLED", "DD_AdoNet_ENABLED"]), + "AspNet" => new("DD_TRACE_ASPNET_ENABLED", ["DD_TRACE_AspNet_ENABLED", "DD_AspNet_ENABLED"]), + "AspNetMvc" => new("DD_TRACE_ASPNETMVC_ENABLED", ["DD_TRACE_AspNetMvc_ENABLED", "DD_AspNetMvc_ENABLED"]), + "AspNetWebApi2" => new("DD_TRACE_ASPNETWEBAPI2_ENABLED", ["DD_TRACE_AspNetWebApi2_ENABLED", "DD_AspNetWebApi2_ENABLED"]), + "GraphQL" => new("DD_TRACE_GRAPHQL_ENABLED", ["DD_TRACE_GraphQL_ENABLED", "DD_GraphQL_ENABLED"]), + "HotChocolate" => new("DD_TRACE_HOTCHOCOLATE_ENABLED", ["DD_TRACE_HotChocolate_ENABLED", "DD_HotChocolate_ENABLED"]), + "MongoDb" => new("DD_TRACE_MONGODB_ENABLED", ["DD_TRACE_MongoDb_ENABLED", "DD_MongoDb_ENABLED"]), + "XUnit" => new("DD_TRACE_XUNIT_ENABLED", ["DD_TRACE_XUnit_ENABLED", "DD_XUnit_ENABLED"]), + "NUnit" => new("DD_TRACE_NUNIT_ENABLED", ["DD_TRACE_NUnit_ENABLED", "DD_NUnit_ENABLED"]), + "MsTestV2" => new("DD_TRACE_MSTESTV2_ENABLED", ["DD_TRACE_MsTestV2_ENABLED", "DD_MsTestV2_ENABLED"]), + "Wcf" => new("DD_TRACE_WCF_ENABLED", ["DD_TRACE_Wcf_ENABLED", "DD_Wcf_ENABLED"]), + "WebRequest" => new("DD_TRACE_WEBREQUEST_ENABLED", ["DD_TRACE_WebRequest_ENABLED", "DD_WebRequest_ENABLED"]), + "ElasticsearchNet" => new("DD_TRACE_ELASTICSEARCHNET_ENABLED", ["DD_TRACE_ElasticsearchNet_ENABLED", "DD_ElasticsearchNet_ENABLED"]), + "ServiceStackRedis" => new("DD_TRACE_SERVICESTACKREDIS_ENABLED", ["DD_TRACE_ServiceStackRedis_ENABLED", "DD_ServiceStackRedis_ENABLED"]), + "StackExchangeRedis" => new("DD_TRACE_STACKEXCHANGEREDIS_ENABLED", ["DD_TRACE_StackExchangeRedis_ENABLED", "DD_StackExchangeRedis_ENABLED"]), + "ServiceRemoting" => new("DD_TRACE_SERVICEREMOTING_ENABLED", ["DD_TRACE_ServiceRemoting_ENABLED", "DD_ServiceRemoting_ENABLED"]), + "RabbitMQ" => new("DD_TRACE_RABBITMQ_ENABLED", ["DD_TRACE_RabbitMQ_ENABLED", "DD_RabbitMQ_ENABLED"]), + "Msmq" => new("DD_TRACE_MSMQ_ENABLED", ["DD_TRACE_Msmq_ENABLED", "DD_Msmq_ENABLED"]), + "Kafka" => new("DD_TRACE_KAFKA_ENABLED", ["DD_TRACE_Kafka_ENABLED", "DD_Kafka_ENABLED"]), + "CosmosDb" => new("DD_TRACE_COSMOSDB_ENABLED", ["DD_TRACE_CosmosDb_ENABLED", "DD_CosmosDb_ENABLED"]), + "AwsS3" => new("DD_TRACE_AWSS3_ENABLED", ["DD_TRACE_AwsS3_ENABLED", "DD_AwsS3_ENABLED"]), + "AwsSdk" => new("DD_TRACE_AWSSDK_ENABLED", ["DD_TRACE_AwsSdk_ENABLED", "DD_AwsSdk_ENABLED"]), + "AwsSqs" => new("DD_TRACE_AWSSQS_ENABLED", ["DD_TRACE_AwsSqs_ENABLED", "DD_AwsSqs_ENABLED"]), + "AwsSns" => new("DD_TRACE_AWSSNS_ENABLED", ["DD_TRACE_AwsSns_ENABLED", "DD_AwsSns_ENABLED"]), + "AwsEventBridge" => new("DD_TRACE_AWSEVENTBRIDGE_ENABLED", ["DD_TRACE_AwsEventBridge_ENABLED", "DD_AwsEventBridge_ENABLED"]), + "AwsStepFunctions" => new("DD_TRACE_AWSSTEPFUNCTIONS_ENABLED", ["DD_TRACE_AwsStepFunctions_ENABLED", "DD_AwsStepFunctions_ENABLED"]), + "AwsLambda" => new("DD_TRACE_AWSLAMBDA_ENABLED", ["DD_TRACE_AwsLambda_ENABLED", "DD_AwsLambda_ENABLED"]), + "ILogger" => new("DD_TRACE_ILOGGER_ENABLED", ["DD_TRACE_ILogger_ENABLED", "DD_ILogger_ENABLED"]), + "Aerospike" => new("DD_TRACE_AEROSPIKE_ENABLED", ["DD_TRACE_Aerospike_ENABLED", "DD_Aerospike_ENABLED"]), + "AzureFunctions" => new("DD_TRACE_AZUREFUNCTIONS_ENABLED", ["DD_TRACE_AzureFunctions_ENABLED", "DD_AzureFunctions_ENABLED"]), + "Couchbase" => new("DD_TRACE_COUCHBASE_ENABLED", ["DD_TRACE_Couchbase_ENABLED", "DD_Couchbase_ENABLED"]), + "MySql" => new("DD_TRACE_MYSQL_ENABLED", ["DD_TRACE_MySql_ENABLED", "DD_MySql_ENABLED"]), + "Npgsql" => new("DD_TRACE_NPGSQL_ENABLED", ["DD_TRACE_Npgsql_ENABLED", "DD_Npgsql_ENABLED"]), + "Oracle" => new("DD_TRACE_ORACLE_ENABLED", ["DD_TRACE_Oracle_ENABLED", "DD_Oracle_ENABLED"]), + "SqlClient" => new("DD_TRACE_SQLCLIENT_ENABLED", ["DD_TRACE_SqlClient_ENABLED", "DD_SqlClient_ENABLED"]), + "Sqlite" => new("DD_TRACE_SQLITE_ENABLED", ["DD_TRACE_Sqlite_ENABLED", "DD_Sqlite_ENABLED"]), + "Serilog" => new("DD_TRACE_SERILOG_ENABLED", ["DD_TRACE_Serilog_ENABLED", "DD_Serilog_ENABLED"]), + "Log4Net" => new("DD_TRACE_LOG4NET_ENABLED", ["DD_TRACE_Log4Net_ENABLED", "DD_Log4Net_ENABLED"]), + "NLog" => new("DD_TRACE_NLOG_ENABLED", ["DD_TRACE_NLog_ENABLED", "DD_NLog_ENABLED"]), + "TraceAnnotations" => new("DD_TRACE_TRACEANNOTATIONS_ENABLED", ["DD_TRACE_TraceAnnotations_ENABLED", "DD_TraceAnnotations_ENABLED"]), + "Grpc" => new("DD_TRACE_GRPC_ENABLED", ["DD_TRACE_Grpc_ENABLED", "DD_Grpc_ENABLED"]), + "Process" => new("DD_TRACE_PROCESS_ENABLED", ["DD_TRACE_Process_ENABLED", "DD_Process_ENABLED"]), + "HashAlgorithm" => new("DD_TRACE_HASHALGORITHM_ENABLED", ["DD_TRACE_HashAlgorithm_ENABLED", "DD_HashAlgorithm_ENABLED"]), + "SymmetricAlgorithm" => new("DD_TRACE_SYMMETRICALGORITHM_ENABLED", ["DD_TRACE_SymmetricAlgorithm_ENABLED", "DD_SymmetricAlgorithm_ENABLED"]), + "OpenTelemetry" => new("DD_TRACE_OPENTELEMETRY_ENABLED", ["DD_TRACE_OpenTelemetry_ENABLED", "DD_OpenTelemetry_ENABLED"]), + "PathTraversal" => new("DD_TRACE_PATHTRAVERSAL_ENABLED", ["DD_TRACE_PathTraversal_ENABLED", "DD_PathTraversal_ENABLED"]), + "Ldap" => new("DD_TRACE_LDAP_ENABLED", ["DD_TRACE_Ldap_ENABLED", "DD_Ldap_ENABLED"]), + "Ssrf" => new("DD_TRACE_SSRF_ENABLED", ["DD_TRACE_Ssrf_ENABLED", "DD_Ssrf_ENABLED"]), + "AwsKinesis" => new("DD_TRACE_AWSKINESIS_ENABLED", ["DD_TRACE_AwsKinesis_ENABLED", "DD_AwsKinesis_ENABLED"]), + "AzureServiceBus" => new("DD_TRACE_AZURESERVICEBUS_ENABLED", ["DD_TRACE_AzureServiceBus_ENABLED", "DD_AzureServiceBus_ENABLED"]), + "SystemRandom" => new("DD_TRACE_SYSTEMRANDOM_ENABLED", ["DD_TRACE_SystemRandom_ENABLED", "DD_SystemRandom_ENABLED"]), + "AwsDynamoDb" => new("DD_TRACE_AWSDYNAMODB_ENABLED", ["DD_TRACE_AwsDynamoDb_ENABLED", "DD_AwsDynamoDb_ENABLED"]), + "HardcodedSecret" => new("DD_TRACE_HARDCODEDSECRET_ENABLED", ["DD_TRACE_HardcodedSecret_ENABLED", "DD_HardcodedSecret_ENABLED"]), + "IbmMq" => new("DD_TRACE_IBMMQ_ENABLED", ["DD_TRACE_IbmMq_ENABLED", "DD_IbmMq_ENABLED"]), + "Remoting" => new("DD_TRACE_REMOTING_ENABLED", ["DD_TRACE_Remoting_ENABLED", "DD_Remoting_ENABLED"]), + "TrustBoundaryViolation" => new("DD_TRACE_TRUSTBOUNDARYVIOLATION_ENABLED", ["DD_TRACE_TrustBoundaryViolation_ENABLED", "DD_TrustBoundaryViolation_ENABLED"]), + "UnvalidatedRedirect" => new("DD_TRACE_UNVALIDATEDREDIRECT_ENABLED", ["DD_TRACE_UnvalidatedRedirect_ENABLED", "DD_UnvalidatedRedirect_ENABLED"]), + "TestPlatformAssemblyResolver" => new("DD_TRACE_TESTPLATFORMASSEMBLYRESOLVER_ENABLED", ["DD_TRACE_TestPlatformAssemblyResolver_ENABLED", "DD_TestPlatformAssemblyResolver_ENABLED"]), + "StackTraceLeak" => new("DD_TRACE_STACKTRACELEAK_ENABLED", ["DD_TRACE_StackTraceLeak_ENABLED", "DD_StackTraceLeak_ENABLED"]), + "XpathInjection" => new("DD_TRACE_XPATHINJECTION_ENABLED", ["DD_TRACE_XpathInjection_ENABLED", "DD_XpathInjection_ENABLED"]), + "ReflectionInjection" => new("DD_TRACE_REFLECTIONINJECTION_ENABLED", ["DD_TRACE_ReflectionInjection_ENABLED", "DD_ReflectionInjection_ENABLED"]), + "Xss" => new("DD_TRACE_XSS_ENABLED", ["DD_TRACE_Xss_ENABLED", "DD_Xss_ENABLED"]), + "NHibernate" => new("DD_TRACE_NHIBERNATE_ENABLED", ["DD_TRACE_NHibernate_ENABLED", "DD_NHibernate_ENABLED"]), + "DotnetTest" => new("DD_TRACE_DOTNETTEST_ENABLED", ["DD_TRACE_DotnetTest_ENABLED", "DD_DotnetTest_ENABLED"]), + "Selenium" => new("DD_TRACE_SELENIUM_ENABLED", ["DD_TRACE_Selenium_ENABLED", "DD_Selenium_ENABLED"]), + "DirectoryListingLeak" => new("DD_TRACE_DIRECTORYLISTINGLEAK_ENABLED", ["DD_TRACE_DirectoryListingLeak_ENABLED", "DD_DirectoryListingLeak_ENABLED"]), + "SessionTimeout" => new("DD_TRACE_SESSIONTIMEOUT_ENABLED", ["DD_TRACE_SessionTimeout_ENABLED", "DD_SessionTimeout_ENABLED"]), + "DatadogTraceManual" => new("DD_TRACE_DATADOGTRACEMANUAL_ENABLED", ["DD_TRACE_DatadogTraceManual_ENABLED", "DD_DatadogTraceManual_ENABLED"]), + "EmailHtmlInjection" => new("DD_TRACE_EMAILHTMLINJECTION_ENABLED", ["DD_TRACE_EmailHtmlInjection_ENABLED", "DD_EmailHtmlInjection_ENABLED"]), + "Protobuf" => new("DD_TRACE_PROTOBUF_ENABLED", ["DD_TRACE_Protobuf_ENABLED", "DD_Protobuf_ENABLED"]), + "AzureEventHubs" => new("DD_TRACE_AZUREEVENTHUBS_ENABLED", ["DD_TRACE_AzureEventHubs_ENABLED", "DD_AzureEventHubs_ENABLED"]), + "DatadogTraceVersionConflict" => new("DD_TRACE_DATADOGTRACEVERSIONCONFLICT_ENABLED", ["DD_TRACE_DatadogTraceVersionConflict_ENABLED", "DD_DatadogTraceVersionConflict_ENABLED"]), + "Hangfire" => new("DD_TRACE_HANGFIRE_ENABLED", ["DD_TRACE_Hangfire_ENABLED", "DD_Hangfire_ENABLED"]), + _ => GetIntegrationEnabledKeysFallback(integrationName) // we should never get here + }; + /// + /// Gets the analytics enabled configuration keys for the specified integration name. + /// Returns a KeyValuePair where Key is the canonical key and Value is an array of aliases. + /// + /// The integration name + /// KeyValuePair with canonical key and aliases + [System.Obsolete(ObsoleteMessage)] + public static System.Collections.Generic.KeyValuePair GetIntegrationAnalyticsEnabledKeys(string integrationName) => + integrationName switch + { + "HttpMessageHandler" => new("DD_TRACE_HTTPMESSAGEHANDLER_ANALYTICS_ENABLED", ["DD_TRACE_HttpMessageHandler_ANALYTICS_ENABLED", "DD_HttpMessageHandler_ANALYTICS_ENABLED"]), + "HttpSocketsHandler" => new("DD_TRACE_HTTPSOCKETSHANDLER_ANALYTICS_ENABLED", ["DD_TRACE_HttpSocketsHandler_ANALYTICS_ENABLED", "DD_HttpSocketsHandler_ANALYTICS_ENABLED"]), + "WinHttpHandler" => new("DD_TRACE_WINHTTPHANDLER_ANALYTICS_ENABLED", ["DD_TRACE_WinHttpHandler_ANALYTICS_ENABLED", "DD_WinHttpHandler_ANALYTICS_ENABLED"]), + "CurlHandler" => new("DD_TRACE_CURLHANDLER_ANALYTICS_ENABLED", ["DD_TRACE_CurlHandler_ANALYTICS_ENABLED", "DD_CurlHandler_ANALYTICS_ENABLED"]), + "AspNetCore" => new("DD_TRACE_ASPNETCORE_ANALYTICS_ENABLED", ["DD_TRACE_AspNetCore_ANALYTICS_ENABLED", "DD_AspNetCore_ANALYTICS_ENABLED"]), + "AdoNet" => new("DD_TRACE_ADONET_ANALYTICS_ENABLED", ["DD_TRACE_AdoNet_ANALYTICS_ENABLED", "DD_AdoNet_ANALYTICS_ENABLED"]), + "AspNet" => new("DD_TRACE_ASPNET_ANALYTICS_ENABLED", ["DD_TRACE_AspNet_ANALYTICS_ENABLED", "DD_AspNet_ANALYTICS_ENABLED"]), + "AspNetMvc" => new("DD_TRACE_ASPNETMVC_ANALYTICS_ENABLED", ["DD_TRACE_AspNetMvc_ANALYTICS_ENABLED", "DD_AspNetMvc_ANALYTICS_ENABLED"]), + "AspNetWebApi2" => new("DD_TRACE_ASPNETWEBAPI2_ANALYTICS_ENABLED", ["DD_TRACE_AspNetWebApi2_ANALYTICS_ENABLED", "DD_AspNetWebApi2_ANALYTICS_ENABLED"]), + "GraphQL" => new("DD_TRACE_GRAPHQL_ANALYTICS_ENABLED", ["DD_TRACE_GraphQL_ANALYTICS_ENABLED", "DD_GraphQL_ANALYTICS_ENABLED"]), + "HotChocolate" => new("DD_TRACE_HOTCHOCOLATE_ANALYTICS_ENABLED", ["DD_TRACE_HotChocolate_ANALYTICS_ENABLED", "DD_HotChocolate_ANALYTICS_ENABLED"]), + "MongoDb" => new("DD_TRACE_MONGODB_ANALYTICS_ENABLED", ["DD_TRACE_MongoDb_ANALYTICS_ENABLED", "DD_MongoDb_ANALYTICS_ENABLED"]), + "XUnit" => new("DD_TRACE_XUNIT_ANALYTICS_ENABLED", ["DD_TRACE_XUnit_ANALYTICS_ENABLED", "DD_XUnit_ANALYTICS_ENABLED"]), + "NUnit" => new("DD_TRACE_NUNIT_ANALYTICS_ENABLED", ["DD_TRACE_NUnit_ANALYTICS_ENABLED", "DD_NUnit_ANALYTICS_ENABLED"]), + "MsTestV2" => new("DD_TRACE_MSTESTV2_ANALYTICS_ENABLED", ["DD_TRACE_MsTestV2_ANALYTICS_ENABLED", "DD_MsTestV2_ANALYTICS_ENABLED"]), + "Wcf" => new("DD_TRACE_WCF_ANALYTICS_ENABLED", ["DD_TRACE_Wcf_ANALYTICS_ENABLED", "DD_Wcf_ANALYTICS_ENABLED"]), + "WebRequest" => new("DD_TRACE_WEBREQUEST_ANALYTICS_ENABLED", ["DD_TRACE_WebRequest_ANALYTICS_ENABLED", "DD_WebRequest_ANALYTICS_ENABLED"]), + "ElasticsearchNet" => new("DD_TRACE_ELASTICSEARCHNET_ANALYTICS_ENABLED", ["DD_TRACE_ElasticsearchNet_ANALYTICS_ENABLED", "DD_ElasticsearchNet_ANALYTICS_ENABLED"]), + "ServiceStackRedis" => new("DD_TRACE_SERVICESTACKREDIS_ANALYTICS_ENABLED", ["DD_TRACE_ServiceStackRedis_ANALYTICS_ENABLED", "DD_ServiceStackRedis_ANALYTICS_ENABLED"]), + "StackExchangeRedis" => new("DD_TRACE_STACKEXCHANGEREDIS_ANALYTICS_ENABLED", ["DD_TRACE_StackExchangeRedis_ANALYTICS_ENABLED", "DD_StackExchangeRedis_ANALYTICS_ENABLED"]), + "ServiceRemoting" => new("DD_TRACE_SERVICEREMOTING_ANALYTICS_ENABLED", ["DD_TRACE_ServiceRemoting_ANALYTICS_ENABLED", "DD_ServiceRemoting_ANALYTICS_ENABLED"]), + "RabbitMQ" => new("DD_TRACE_RABBITMQ_ANALYTICS_ENABLED", ["DD_TRACE_RabbitMQ_ANALYTICS_ENABLED", "DD_RabbitMQ_ANALYTICS_ENABLED"]), + "Msmq" => new("DD_TRACE_MSMQ_ANALYTICS_ENABLED", ["DD_TRACE_Msmq_ANALYTICS_ENABLED", "DD_Msmq_ANALYTICS_ENABLED"]), + "Kafka" => new("DD_TRACE_KAFKA_ANALYTICS_ENABLED", ["DD_TRACE_Kafka_ANALYTICS_ENABLED", "DD_Kafka_ANALYTICS_ENABLED"]), + "CosmosDb" => new("DD_TRACE_COSMOSDB_ANALYTICS_ENABLED", ["DD_TRACE_CosmosDb_ANALYTICS_ENABLED", "DD_CosmosDb_ANALYTICS_ENABLED"]), + "AwsS3" => new("DD_TRACE_AWSS3_ANALYTICS_ENABLED", ["DD_TRACE_AwsS3_ANALYTICS_ENABLED", "DD_AwsS3_ANALYTICS_ENABLED"]), + "AwsSdk" => new("DD_TRACE_AWSSDK_ANALYTICS_ENABLED", ["DD_TRACE_AwsSdk_ANALYTICS_ENABLED", "DD_AwsSdk_ANALYTICS_ENABLED"]), + "AwsSqs" => new("DD_TRACE_AWSSQS_ANALYTICS_ENABLED", ["DD_TRACE_AwsSqs_ANALYTICS_ENABLED", "DD_AwsSqs_ANALYTICS_ENABLED"]), + "AwsSns" => new("DD_TRACE_AWSSNS_ANALYTICS_ENABLED", ["DD_TRACE_AwsSns_ANALYTICS_ENABLED", "DD_AwsSns_ANALYTICS_ENABLED"]), + "AwsEventBridge" => new("DD_TRACE_AWSEVENTBRIDGE_ANALYTICS_ENABLED", ["DD_TRACE_AwsEventBridge_ANALYTICS_ENABLED", "DD_AwsEventBridge_ANALYTICS_ENABLED"]), + "AwsStepFunctions" => new("DD_TRACE_AWSSTEPFUNCTIONS_ANALYTICS_ENABLED", ["DD_TRACE_AwsStepFunctions_ANALYTICS_ENABLED", "DD_AwsStepFunctions_ANALYTICS_ENABLED"]), + "AwsLambda" => new("DD_TRACE_AWSLAMBDA_ANALYTICS_ENABLED", ["DD_TRACE_AwsLambda_ANALYTICS_ENABLED", "DD_AwsLambda_ANALYTICS_ENABLED"]), + "ILogger" => new("DD_TRACE_ILOGGER_ANALYTICS_ENABLED", ["DD_TRACE_ILogger_ANALYTICS_ENABLED", "DD_ILogger_ANALYTICS_ENABLED"]), + "Aerospike" => new("DD_TRACE_AEROSPIKE_ANALYTICS_ENABLED", ["DD_TRACE_Aerospike_ANALYTICS_ENABLED", "DD_Aerospike_ANALYTICS_ENABLED"]), + "AzureFunctions" => new("DD_TRACE_AZUREFUNCTIONS_ANALYTICS_ENABLED", ["DD_TRACE_AzureFunctions_ANALYTICS_ENABLED", "DD_AzureFunctions_ANALYTICS_ENABLED"]), + "Couchbase" => new("DD_TRACE_COUCHBASE_ANALYTICS_ENABLED", ["DD_TRACE_Couchbase_ANALYTICS_ENABLED", "DD_Couchbase_ANALYTICS_ENABLED"]), + "MySql" => new("DD_TRACE_MYSQL_ANALYTICS_ENABLED", ["DD_TRACE_MySql_ANALYTICS_ENABLED", "DD_MySql_ANALYTICS_ENABLED"]), + "Npgsql" => new("DD_TRACE_NPGSQL_ANALYTICS_ENABLED", ["DD_TRACE_Npgsql_ANALYTICS_ENABLED", "DD_Npgsql_ANALYTICS_ENABLED"]), + "Oracle" => new("DD_TRACE_ORACLE_ANALYTICS_ENABLED", ["DD_TRACE_Oracle_ANALYTICS_ENABLED", "DD_Oracle_ANALYTICS_ENABLED"]), + "SqlClient" => new("DD_TRACE_SQLCLIENT_ANALYTICS_ENABLED", ["DD_TRACE_SqlClient_ANALYTICS_ENABLED", "DD_SqlClient_ANALYTICS_ENABLED"]), + "Sqlite" => new("DD_TRACE_SQLITE_ANALYTICS_ENABLED", ["DD_TRACE_Sqlite_ANALYTICS_ENABLED", "DD_Sqlite_ANALYTICS_ENABLED"]), + "Serilog" => new("DD_TRACE_SERILOG_ANALYTICS_ENABLED", ["DD_TRACE_Serilog_ANALYTICS_ENABLED", "DD_Serilog_ANALYTICS_ENABLED"]), + "Log4Net" => new("DD_TRACE_LOG4NET_ANALYTICS_ENABLED", ["DD_TRACE_Log4Net_ANALYTICS_ENABLED", "DD_Log4Net_ANALYTICS_ENABLED"]), + "NLog" => new("DD_TRACE_NLOG_ANALYTICS_ENABLED", ["DD_TRACE_NLog_ANALYTICS_ENABLED", "DD_NLog_ANALYTICS_ENABLED"]), + "TraceAnnotations" => new("DD_TRACE_TRACEANNOTATIONS_ANALYTICS_ENABLED", ["DD_TRACE_TraceAnnotations_ANALYTICS_ENABLED", "DD_TraceAnnotations_ANALYTICS_ENABLED"]), + "Grpc" => new("DD_TRACE_GRPC_ANALYTICS_ENABLED", ["DD_TRACE_Grpc_ANALYTICS_ENABLED", "DD_Grpc_ANALYTICS_ENABLED"]), + "Process" => new("DD_TRACE_PROCESS_ANALYTICS_ENABLED", ["DD_TRACE_Process_ANALYTICS_ENABLED", "DD_Process_ANALYTICS_ENABLED"]), + "HashAlgorithm" => new("DD_TRACE_HASHALGORITHM_ANALYTICS_ENABLED", ["DD_TRACE_HashAlgorithm_ANALYTICS_ENABLED", "DD_HashAlgorithm_ANALYTICS_ENABLED"]), + "SymmetricAlgorithm" => new("DD_TRACE_SYMMETRICALGORITHM_ANALYTICS_ENABLED", ["DD_TRACE_SymmetricAlgorithm_ANALYTICS_ENABLED", "DD_SymmetricAlgorithm_ANALYTICS_ENABLED"]), + "OpenTelemetry" => new("DD_TRACE_OPENTELEMETRY_ANALYTICS_ENABLED", ["DD_TRACE_OpenTelemetry_ANALYTICS_ENABLED", "DD_OpenTelemetry_ANALYTICS_ENABLED"]), + "PathTraversal" => new("DD_TRACE_PATHTRAVERSAL_ANALYTICS_ENABLED", ["DD_TRACE_PathTraversal_ANALYTICS_ENABLED", "DD_PathTraversal_ANALYTICS_ENABLED"]), + "Ldap" => new("DD_TRACE_LDAP_ANALYTICS_ENABLED", ["DD_TRACE_Ldap_ANALYTICS_ENABLED", "DD_Ldap_ANALYTICS_ENABLED"]), + "Ssrf" => new("DD_TRACE_SSRF_ANALYTICS_ENABLED", ["DD_TRACE_Ssrf_ANALYTICS_ENABLED", "DD_Ssrf_ANALYTICS_ENABLED"]), + "AwsKinesis" => new("DD_TRACE_AWSKINESIS_ANALYTICS_ENABLED", ["DD_TRACE_AwsKinesis_ANALYTICS_ENABLED", "DD_AwsKinesis_ANALYTICS_ENABLED"]), + "AzureServiceBus" => new("DD_TRACE_AZURESERVICEBUS_ANALYTICS_ENABLED", ["DD_TRACE_AzureServiceBus_ANALYTICS_ENABLED", "DD_AzureServiceBus_ANALYTICS_ENABLED"]), + "SystemRandom" => new("DD_TRACE_SYSTEMRANDOM_ANALYTICS_ENABLED", ["DD_TRACE_SystemRandom_ANALYTICS_ENABLED", "DD_SystemRandom_ANALYTICS_ENABLED"]), + "AwsDynamoDb" => new("DD_TRACE_AWSDYNAMODB_ANALYTICS_ENABLED", ["DD_TRACE_AwsDynamoDb_ANALYTICS_ENABLED", "DD_AwsDynamoDb_ANALYTICS_ENABLED"]), + "HardcodedSecret" => new("DD_TRACE_HARDCODEDSECRET_ANALYTICS_ENABLED", ["DD_TRACE_HardcodedSecret_ANALYTICS_ENABLED", "DD_HardcodedSecret_ANALYTICS_ENABLED"]), + "IbmMq" => new("DD_TRACE_IBMMQ_ANALYTICS_ENABLED", ["DD_TRACE_IbmMq_ANALYTICS_ENABLED", "DD_IbmMq_ANALYTICS_ENABLED"]), + "Remoting" => new("DD_TRACE_REMOTING_ANALYTICS_ENABLED", ["DD_TRACE_Remoting_ANALYTICS_ENABLED", "DD_Remoting_ANALYTICS_ENABLED"]), + "TrustBoundaryViolation" => new("DD_TRACE_TRUSTBOUNDARYVIOLATION_ANALYTICS_ENABLED", ["DD_TRACE_TrustBoundaryViolation_ANALYTICS_ENABLED", "DD_TrustBoundaryViolation_ANALYTICS_ENABLED"]), + "UnvalidatedRedirect" => new("DD_TRACE_UNVALIDATEDREDIRECT_ANALYTICS_ENABLED", ["DD_TRACE_UnvalidatedRedirect_ANALYTICS_ENABLED", "DD_UnvalidatedRedirect_ANALYTICS_ENABLED"]), + "TestPlatformAssemblyResolver" => new("DD_TRACE_TESTPLATFORMASSEMBLYRESOLVER_ANALYTICS_ENABLED", ["DD_TRACE_TestPlatformAssemblyResolver_ANALYTICS_ENABLED", "DD_TestPlatformAssemblyResolver_ANALYTICS_ENABLED"]), + "StackTraceLeak" => new("DD_TRACE_STACKTRACELEAK_ANALYTICS_ENABLED", ["DD_TRACE_StackTraceLeak_ANALYTICS_ENABLED", "DD_StackTraceLeak_ANALYTICS_ENABLED"]), + "XpathInjection" => new("DD_TRACE_XPATHINJECTION_ANALYTICS_ENABLED", ["DD_TRACE_XpathInjection_ANALYTICS_ENABLED", "DD_XpathInjection_ANALYTICS_ENABLED"]), + "ReflectionInjection" => new("DD_TRACE_REFLECTIONINJECTION_ANALYTICS_ENABLED", ["DD_TRACE_ReflectionInjection_ANALYTICS_ENABLED", "DD_ReflectionInjection_ANALYTICS_ENABLED"]), + "Xss" => new("DD_TRACE_XSS_ANALYTICS_ENABLED", ["DD_TRACE_Xss_ANALYTICS_ENABLED", "DD_Xss_ANALYTICS_ENABLED"]), + "NHibernate" => new("DD_TRACE_NHIBERNATE_ANALYTICS_ENABLED", ["DD_TRACE_NHibernate_ANALYTICS_ENABLED", "DD_NHibernate_ANALYTICS_ENABLED"]), + "DotnetTest" => new("DD_TRACE_DOTNETTEST_ANALYTICS_ENABLED", ["DD_TRACE_DotnetTest_ANALYTICS_ENABLED", "DD_DotnetTest_ANALYTICS_ENABLED"]), + "Selenium" => new("DD_TRACE_SELENIUM_ANALYTICS_ENABLED", ["DD_TRACE_Selenium_ANALYTICS_ENABLED", "DD_Selenium_ANALYTICS_ENABLED"]), + "DirectoryListingLeak" => new("DD_TRACE_DIRECTORYLISTINGLEAK_ANALYTICS_ENABLED", ["DD_TRACE_DirectoryListingLeak_ANALYTICS_ENABLED", "DD_DirectoryListingLeak_ANALYTICS_ENABLED"]), + "SessionTimeout" => new("DD_TRACE_SESSIONTIMEOUT_ANALYTICS_ENABLED", ["DD_TRACE_SessionTimeout_ANALYTICS_ENABLED", "DD_SessionTimeout_ANALYTICS_ENABLED"]), + "DatadogTraceManual" => new("DD_TRACE_DATADOGTRACEMANUAL_ANALYTICS_ENABLED", ["DD_TRACE_DatadogTraceManual_ANALYTICS_ENABLED", "DD_DatadogTraceManual_ANALYTICS_ENABLED"]), + "EmailHtmlInjection" => new("DD_TRACE_EMAILHTMLINJECTION_ANALYTICS_ENABLED", ["DD_TRACE_EmailHtmlInjection_ANALYTICS_ENABLED", "DD_EmailHtmlInjection_ANALYTICS_ENABLED"]), + "Protobuf" => new("DD_TRACE_PROTOBUF_ANALYTICS_ENABLED", ["DD_TRACE_Protobuf_ANALYTICS_ENABLED", "DD_Protobuf_ANALYTICS_ENABLED"]), + "AzureEventHubs" => new("DD_TRACE_AZUREEVENTHUBS_ANALYTICS_ENABLED", ["DD_TRACE_AzureEventHubs_ANALYTICS_ENABLED", "DD_AzureEventHubs_ANALYTICS_ENABLED"]), + "DatadogTraceVersionConflict" => new("DD_TRACE_DATADOGTRACEVERSIONCONFLICT_ANALYTICS_ENABLED", ["DD_TRACE_DatadogTraceVersionConflict_ANALYTICS_ENABLED", "DD_DatadogTraceVersionConflict_ANALYTICS_ENABLED"]), + "Hangfire" => new("DD_TRACE_HANGFIRE_ANALYTICS_ENABLED", ["DD_TRACE_Hangfire_ANALYTICS_ENABLED", "DD_Hangfire_ANALYTICS_ENABLED"]), + _ => GetIntegrationAnalyticsEnabledKeysFallback(integrationName) // we should never get here + }; + /// + /// Gets the analytics sample rate configuration keys for the specified integration name. + /// Returns a KeyValuePair where Key is the canonical key and Value is an array of aliases. + /// + /// The integration name + /// KeyValuePair with canonical key and aliases + [System.Obsolete(ObsoleteMessage)] + public static System.Collections.Generic.KeyValuePair GetIntegrationAnalyticsSampleRateKeys(string integrationName) => + integrationName switch + { + "HttpMessageHandler" => new("DD_TRACE_HTTPMESSAGEHANDLER_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_HttpMessageHandler_ANALYTICS_SAMPLE_RATE", "DD_HttpMessageHandler_ANALYTICS_SAMPLE_RATE"]), + "HttpSocketsHandler" => new("DD_TRACE_HTTPSOCKETSHANDLER_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_HttpSocketsHandler_ANALYTICS_SAMPLE_RATE", "DD_HttpSocketsHandler_ANALYTICS_SAMPLE_RATE"]), + "WinHttpHandler" => new("DD_TRACE_WINHTTPHANDLER_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_WinHttpHandler_ANALYTICS_SAMPLE_RATE", "DD_WinHttpHandler_ANALYTICS_SAMPLE_RATE"]), + "CurlHandler" => new("DD_TRACE_CURLHANDLER_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_CurlHandler_ANALYTICS_SAMPLE_RATE", "DD_CurlHandler_ANALYTICS_SAMPLE_RATE"]), + "AspNetCore" => new("DD_TRACE_ASPNETCORE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AspNetCore_ANALYTICS_SAMPLE_RATE", "DD_AspNetCore_ANALYTICS_SAMPLE_RATE"]), + "AdoNet" => new("DD_TRACE_ADONET_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AdoNet_ANALYTICS_SAMPLE_RATE", "DD_AdoNet_ANALYTICS_SAMPLE_RATE"]), + "AspNet" => new("DD_TRACE_ASPNET_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AspNet_ANALYTICS_SAMPLE_RATE", "DD_AspNet_ANALYTICS_SAMPLE_RATE"]), + "AspNetMvc" => new("DD_TRACE_ASPNETMVC_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AspNetMvc_ANALYTICS_SAMPLE_RATE", "DD_AspNetMvc_ANALYTICS_SAMPLE_RATE"]), + "AspNetWebApi2" => new("DD_TRACE_ASPNETWEBAPI2_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AspNetWebApi2_ANALYTICS_SAMPLE_RATE", "DD_AspNetWebApi2_ANALYTICS_SAMPLE_RATE"]), + "GraphQL" => new("DD_TRACE_GRAPHQL_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_GraphQL_ANALYTICS_SAMPLE_RATE", "DD_GraphQL_ANALYTICS_SAMPLE_RATE"]), + "HotChocolate" => new("DD_TRACE_HOTCHOCOLATE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_HotChocolate_ANALYTICS_SAMPLE_RATE", "DD_HotChocolate_ANALYTICS_SAMPLE_RATE"]), + "MongoDb" => new("DD_TRACE_MONGODB_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_MongoDb_ANALYTICS_SAMPLE_RATE", "DD_MongoDb_ANALYTICS_SAMPLE_RATE"]), + "XUnit" => new("DD_TRACE_XUNIT_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_XUnit_ANALYTICS_SAMPLE_RATE", "DD_XUnit_ANALYTICS_SAMPLE_RATE"]), + "NUnit" => new("DD_TRACE_NUNIT_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_NUnit_ANALYTICS_SAMPLE_RATE", "DD_NUnit_ANALYTICS_SAMPLE_RATE"]), + "MsTestV2" => new("DD_TRACE_MSTESTV2_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_MsTestV2_ANALYTICS_SAMPLE_RATE", "DD_MsTestV2_ANALYTICS_SAMPLE_RATE"]), + "Wcf" => new("DD_TRACE_WCF_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Wcf_ANALYTICS_SAMPLE_RATE", "DD_Wcf_ANALYTICS_SAMPLE_RATE"]), + "WebRequest" => new("DD_TRACE_WEBREQUEST_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_WebRequest_ANALYTICS_SAMPLE_RATE", "DD_WebRequest_ANALYTICS_SAMPLE_RATE"]), + "ElasticsearchNet" => new("DD_TRACE_ELASTICSEARCHNET_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_ElasticsearchNet_ANALYTICS_SAMPLE_RATE", "DD_ElasticsearchNet_ANALYTICS_SAMPLE_RATE"]), + "ServiceStackRedis" => new("DD_TRACE_SERVICESTACKREDIS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_ServiceStackRedis_ANALYTICS_SAMPLE_RATE", "DD_ServiceStackRedis_ANALYTICS_SAMPLE_RATE"]), + "StackExchangeRedis" => new("DD_TRACE_STACKEXCHANGEREDIS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_StackExchangeRedis_ANALYTICS_SAMPLE_RATE", "DD_StackExchangeRedis_ANALYTICS_SAMPLE_RATE"]), + "ServiceRemoting" => new("DD_TRACE_SERVICEREMOTING_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_ServiceRemoting_ANALYTICS_SAMPLE_RATE", "DD_ServiceRemoting_ANALYTICS_SAMPLE_RATE"]), + "RabbitMQ" => new("DD_TRACE_RABBITMQ_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_RabbitMQ_ANALYTICS_SAMPLE_RATE", "DD_RabbitMQ_ANALYTICS_SAMPLE_RATE"]), + "Msmq" => new("DD_TRACE_MSMQ_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Msmq_ANALYTICS_SAMPLE_RATE", "DD_Msmq_ANALYTICS_SAMPLE_RATE"]), + "Kafka" => new("DD_TRACE_KAFKA_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Kafka_ANALYTICS_SAMPLE_RATE", "DD_Kafka_ANALYTICS_SAMPLE_RATE"]), + "CosmosDb" => new("DD_TRACE_COSMOSDB_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_CosmosDb_ANALYTICS_SAMPLE_RATE", "DD_CosmosDb_ANALYTICS_SAMPLE_RATE"]), + "AwsS3" => new("DD_TRACE_AWSS3_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsS3_ANALYTICS_SAMPLE_RATE", "DD_AwsS3_ANALYTICS_SAMPLE_RATE"]), + "AwsSdk" => new("DD_TRACE_AWSSDK_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsSdk_ANALYTICS_SAMPLE_RATE", "DD_AwsSdk_ANALYTICS_SAMPLE_RATE"]), + "AwsSqs" => new("DD_TRACE_AWSSQS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsSqs_ANALYTICS_SAMPLE_RATE", "DD_AwsSqs_ANALYTICS_SAMPLE_RATE"]), + "AwsSns" => new("DD_TRACE_AWSSNS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsSns_ANALYTICS_SAMPLE_RATE", "DD_AwsSns_ANALYTICS_SAMPLE_RATE"]), + "AwsEventBridge" => new("DD_TRACE_AWSEVENTBRIDGE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsEventBridge_ANALYTICS_SAMPLE_RATE", "DD_AwsEventBridge_ANALYTICS_SAMPLE_RATE"]), + "AwsStepFunctions" => new("DD_TRACE_AWSSTEPFUNCTIONS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsStepFunctions_ANALYTICS_SAMPLE_RATE", "DD_AwsStepFunctions_ANALYTICS_SAMPLE_RATE"]), + "AwsLambda" => new("DD_TRACE_AWSLAMBDA_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsLambda_ANALYTICS_SAMPLE_RATE", "DD_AwsLambda_ANALYTICS_SAMPLE_RATE"]), + "ILogger" => new("DD_TRACE_ILOGGER_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_ILogger_ANALYTICS_SAMPLE_RATE", "DD_ILogger_ANALYTICS_SAMPLE_RATE"]), + "Aerospike" => new("DD_TRACE_AEROSPIKE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Aerospike_ANALYTICS_SAMPLE_RATE", "DD_Aerospike_ANALYTICS_SAMPLE_RATE"]), + "AzureFunctions" => new("DD_TRACE_AZUREFUNCTIONS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AzureFunctions_ANALYTICS_SAMPLE_RATE", "DD_AzureFunctions_ANALYTICS_SAMPLE_RATE"]), + "Couchbase" => new("DD_TRACE_COUCHBASE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Couchbase_ANALYTICS_SAMPLE_RATE", "DD_Couchbase_ANALYTICS_SAMPLE_RATE"]), + "MySql" => new("DD_TRACE_MYSQL_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_MySql_ANALYTICS_SAMPLE_RATE", "DD_MySql_ANALYTICS_SAMPLE_RATE"]), + "Npgsql" => new("DD_TRACE_NPGSQL_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Npgsql_ANALYTICS_SAMPLE_RATE", "DD_Npgsql_ANALYTICS_SAMPLE_RATE"]), + "Oracle" => new("DD_TRACE_ORACLE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Oracle_ANALYTICS_SAMPLE_RATE", "DD_Oracle_ANALYTICS_SAMPLE_RATE"]), + "SqlClient" => new("DD_TRACE_SQLCLIENT_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_SqlClient_ANALYTICS_SAMPLE_RATE", "DD_SqlClient_ANALYTICS_SAMPLE_RATE"]), + "Sqlite" => new("DD_TRACE_SQLITE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Sqlite_ANALYTICS_SAMPLE_RATE", "DD_Sqlite_ANALYTICS_SAMPLE_RATE"]), + "Serilog" => new("DD_TRACE_SERILOG_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Serilog_ANALYTICS_SAMPLE_RATE", "DD_Serilog_ANALYTICS_SAMPLE_RATE"]), + "Log4Net" => new("DD_TRACE_LOG4NET_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Log4Net_ANALYTICS_SAMPLE_RATE", "DD_Log4Net_ANALYTICS_SAMPLE_RATE"]), + "NLog" => new("DD_TRACE_NLOG_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_NLog_ANALYTICS_SAMPLE_RATE", "DD_NLog_ANALYTICS_SAMPLE_RATE"]), + "TraceAnnotations" => new("DD_TRACE_TRACEANNOTATIONS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_TraceAnnotations_ANALYTICS_SAMPLE_RATE", "DD_TraceAnnotations_ANALYTICS_SAMPLE_RATE"]), + "Grpc" => new("DD_TRACE_GRPC_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Grpc_ANALYTICS_SAMPLE_RATE", "DD_Grpc_ANALYTICS_SAMPLE_RATE"]), + "Process" => new("DD_TRACE_PROCESS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Process_ANALYTICS_SAMPLE_RATE", "DD_Process_ANALYTICS_SAMPLE_RATE"]), + "HashAlgorithm" => new("DD_TRACE_HASHALGORITHM_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_HashAlgorithm_ANALYTICS_SAMPLE_RATE", "DD_HashAlgorithm_ANALYTICS_SAMPLE_RATE"]), + "SymmetricAlgorithm" => new("DD_TRACE_SYMMETRICALGORITHM_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_SymmetricAlgorithm_ANALYTICS_SAMPLE_RATE", "DD_SymmetricAlgorithm_ANALYTICS_SAMPLE_RATE"]), + "OpenTelemetry" => new("DD_TRACE_OPENTELEMETRY_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_OpenTelemetry_ANALYTICS_SAMPLE_RATE", "DD_OpenTelemetry_ANALYTICS_SAMPLE_RATE"]), + "PathTraversal" => new("DD_TRACE_PATHTRAVERSAL_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_PathTraversal_ANALYTICS_SAMPLE_RATE", "DD_PathTraversal_ANALYTICS_SAMPLE_RATE"]), + "Ldap" => new("DD_TRACE_LDAP_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Ldap_ANALYTICS_SAMPLE_RATE", "DD_Ldap_ANALYTICS_SAMPLE_RATE"]), + "Ssrf" => new("DD_TRACE_SSRF_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Ssrf_ANALYTICS_SAMPLE_RATE", "DD_Ssrf_ANALYTICS_SAMPLE_RATE"]), + "AwsKinesis" => new("DD_TRACE_AWSKINESIS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsKinesis_ANALYTICS_SAMPLE_RATE", "DD_AwsKinesis_ANALYTICS_SAMPLE_RATE"]), + "AzureServiceBus" => new("DD_TRACE_AZURESERVICEBUS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AzureServiceBus_ANALYTICS_SAMPLE_RATE", "DD_AzureServiceBus_ANALYTICS_SAMPLE_RATE"]), + "SystemRandom" => new("DD_TRACE_SYSTEMRANDOM_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_SystemRandom_ANALYTICS_SAMPLE_RATE", "DD_SystemRandom_ANALYTICS_SAMPLE_RATE"]), + "AwsDynamoDb" => new("DD_TRACE_AWSDYNAMODB_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsDynamoDb_ANALYTICS_SAMPLE_RATE", "DD_AwsDynamoDb_ANALYTICS_SAMPLE_RATE"]), + "HardcodedSecret" => new("DD_TRACE_HARDCODEDSECRET_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_HardcodedSecret_ANALYTICS_SAMPLE_RATE", "DD_HardcodedSecret_ANALYTICS_SAMPLE_RATE"]), + "IbmMq" => new("DD_TRACE_IBMMQ_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_IbmMq_ANALYTICS_SAMPLE_RATE", "DD_IbmMq_ANALYTICS_SAMPLE_RATE"]), + "Remoting" => new("DD_TRACE_REMOTING_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Remoting_ANALYTICS_SAMPLE_RATE", "DD_Remoting_ANALYTICS_SAMPLE_RATE"]), + "TrustBoundaryViolation" => new("DD_TRACE_TRUSTBOUNDARYVIOLATION_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_TrustBoundaryViolation_ANALYTICS_SAMPLE_RATE", "DD_TrustBoundaryViolation_ANALYTICS_SAMPLE_RATE"]), + "UnvalidatedRedirect" => new("DD_TRACE_UNVALIDATEDREDIRECT_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_UnvalidatedRedirect_ANALYTICS_SAMPLE_RATE", "DD_UnvalidatedRedirect_ANALYTICS_SAMPLE_RATE"]), + "TestPlatformAssemblyResolver" => new("DD_TRACE_TESTPLATFORMASSEMBLYRESOLVER_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_TestPlatformAssemblyResolver_ANALYTICS_SAMPLE_RATE", "DD_TestPlatformAssemblyResolver_ANALYTICS_SAMPLE_RATE"]), + "StackTraceLeak" => new("DD_TRACE_STACKTRACELEAK_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_StackTraceLeak_ANALYTICS_SAMPLE_RATE", "DD_StackTraceLeak_ANALYTICS_SAMPLE_RATE"]), + "XpathInjection" => new("DD_TRACE_XPATHINJECTION_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_XpathInjection_ANALYTICS_SAMPLE_RATE", "DD_XpathInjection_ANALYTICS_SAMPLE_RATE"]), + "ReflectionInjection" => new("DD_TRACE_REFLECTIONINJECTION_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_ReflectionInjection_ANALYTICS_SAMPLE_RATE", "DD_ReflectionInjection_ANALYTICS_SAMPLE_RATE"]), + "Xss" => new("DD_TRACE_XSS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Xss_ANALYTICS_SAMPLE_RATE", "DD_Xss_ANALYTICS_SAMPLE_RATE"]), + "NHibernate" => new("DD_TRACE_NHIBERNATE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_NHibernate_ANALYTICS_SAMPLE_RATE", "DD_NHibernate_ANALYTICS_SAMPLE_RATE"]), + "DotnetTest" => new("DD_TRACE_DOTNETTEST_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_DotnetTest_ANALYTICS_SAMPLE_RATE", "DD_DotnetTest_ANALYTICS_SAMPLE_RATE"]), + "Selenium" => new("DD_TRACE_SELENIUM_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Selenium_ANALYTICS_SAMPLE_RATE", "DD_Selenium_ANALYTICS_SAMPLE_RATE"]), + "DirectoryListingLeak" => new("DD_TRACE_DIRECTORYLISTINGLEAK_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_DirectoryListingLeak_ANALYTICS_SAMPLE_RATE", "DD_DirectoryListingLeak_ANALYTICS_SAMPLE_RATE"]), + "SessionTimeout" => new("DD_TRACE_SESSIONTIMEOUT_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_SessionTimeout_ANALYTICS_SAMPLE_RATE", "DD_SessionTimeout_ANALYTICS_SAMPLE_RATE"]), + "DatadogTraceManual" => new("DD_TRACE_DATADOGTRACEMANUAL_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_DatadogTraceManual_ANALYTICS_SAMPLE_RATE", "DD_DatadogTraceManual_ANALYTICS_SAMPLE_RATE"]), + "EmailHtmlInjection" => new("DD_TRACE_EMAILHTMLINJECTION_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_EmailHtmlInjection_ANALYTICS_SAMPLE_RATE", "DD_EmailHtmlInjection_ANALYTICS_SAMPLE_RATE"]), + "Protobuf" => new("DD_TRACE_PROTOBUF_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Protobuf_ANALYTICS_SAMPLE_RATE", "DD_Protobuf_ANALYTICS_SAMPLE_RATE"]), + "AzureEventHubs" => new("DD_TRACE_AZUREEVENTHUBS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AzureEventHubs_ANALYTICS_SAMPLE_RATE", "DD_AzureEventHubs_ANALYTICS_SAMPLE_RATE"]), + "DatadogTraceVersionConflict" => new("DD_TRACE_DATADOGTRACEVERSIONCONFLICT_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_DatadogTraceVersionConflict_ANALYTICS_SAMPLE_RATE", "DD_DatadogTraceVersionConflict_ANALYTICS_SAMPLE_RATE"]), + "Hangfire" => new("DD_TRACE_HANGFIRE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Hangfire_ANALYTICS_SAMPLE_RATE", "DD_Hangfire_ANALYTICS_SAMPLE_RATE"]), + _ => GetIntegrationAnalyticsSampleRateKeysFallback(integrationName) // we should never get here + }; + + private static System.Collections.Generic.KeyValuePair GetIntegrationEnabledKeysFallback(string integrationName) => + new(string.Format("DD_TRACE_{0}_ENABLED", integrationName.ToUpperInvariant()), + [ + string.Format("DD_TRACE_{0}_ENABLED", integrationName), + $"DD_{integrationName}_ENABLED" + ]); + + private static System.Collections.Generic.KeyValuePair GetIntegrationAnalyticsEnabledKeysFallback(string integrationName) => + new(string.Format("DD_TRACE_{0}_ANALYTICS_ENABLED", integrationName.ToUpperInvariant()), + [ + string.Format("DD_TRACE_{0}_ANALYTICS_ENABLED", integrationName), + $"DD_{integrationName}_ANALYTICS_ENABLED" + ]); + + private static System.Collections.Generic.KeyValuePair GetIntegrationAnalyticsSampleRateKeysFallback(string integrationName) => + new(string.Format("DD_TRACE_{0}_ANALYTICS_SAMPLE_RATE", integrationName.ToUpperInvariant()), + [ + string.Format("DD_TRACE_{0}_ANALYTICS_SAMPLE_RATE", integrationName), + $"DD_{integrationName}_ANALYTICS_SAMPLE_RATE" + ]); + } +} diff --git a/tracer/src/Datadog.Trace/Generated/net6.0/Datadog.Trace.SourceGenerators/EnumExtensionsGenerator/IntegrationNameToKeys.g.cs b/tracer/src/Datadog.Trace/Generated/net6.0/Datadog.Trace.SourceGenerators/EnumExtensionsGenerator/IntegrationNameToKeys.g.cs new file mode 100644 index 000000000000..1efa701f825a --- /dev/null +++ b/tracer/src/Datadog.Trace/Generated/net6.0/Datadog.Trace.SourceGenerators/EnumExtensionsGenerator/IntegrationNameToKeys.g.cs @@ -0,0 +1,551 @@ +// +// Unless explicitly stated otherwise all files in this repository are licensed under the Apache 2 License. +// This product includes software developed at Datadog (https://www.datadoghq.com/). Copyright 2017 Datadog, Inc. +// +// + +#nullable enable + + +namespace Datadog.Trace.Configuration +{ + /// + /// Generated mapping of integration names to their configuration keys. + /// + internal static partial class IntegrationNameToKeys + { + private const string ObsoleteMessage = DeprecationMessages.AppAnalytics; + + /// + /// All integration enabled keys (canonical + aliases). + /// + [Datadog.Trace.SourceGenerators.TestingOnly] + public static string[] GetAllIntegrationEnabledKeys() => + [ + "DD_TRACE_HTTPMESSAGEHANDLER_ENABLED", "DD_TRACE_HttpMessageHandler_ENABLED", "DD_HttpMessageHandler_ENABLED", + "DD_TRACE_HTTPMESSAGEHANDLER_ANALYTICS_ENABLED", "DD_TRACE_HttpMessageHandler_ANALYTICS_ENABLED", "DD_HttpMessageHandler_ANALYTICS_ENABLED", + "DD_TRACE_HTTPMESSAGEHANDLER_ANALYTICS_SAMPLE_RATE", "DD_TRACE_HttpMessageHandler_ANALYTICS_SAMPLE_RATE", "DD_HttpMessageHandler_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_HTTPSOCKETSHANDLER_ENABLED", "DD_TRACE_HttpSocketsHandler_ENABLED", "DD_HttpSocketsHandler_ENABLED", + "DD_TRACE_HTTPSOCKETSHANDLER_ANALYTICS_ENABLED", "DD_TRACE_HttpSocketsHandler_ANALYTICS_ENABLED", "DD_HttpSocketsHandler_ANALYTICS_ENABLED", + "DD_TRACE_HTTPSOCKETSHANDLER_ANALYTICS_SAMPLE_RATE", "DD_TRACE_HttpSocketsHandler_ANALYTICS_SAMPLE_RATE", "DD_HttpSocketsHandler_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_WINHTTPHANDLER_ENABLED", "DD_TRACE_WinHttpHandler_ENABLED", "DD_WinHttpHandler_ENABLED", + "DD_TRACE_WINHTTPHANDLER_ANALYTICS_ENABLED", "DD_TRACE_WinHttpHandler_ANALYTICS_ENABLED", "DD_WinHttpHandler_ANALYTICS_ENABLED", + "DD_TRACE_WINHTTPHANDLER_ANALYTICS_SAMPLE_RATE", "DD_TRACE_WinHttpHandler_ANALYTICS_SAMPLE_RATE", "DD_WinHttpHandler_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_CURLHANDLER_ENABLED", "DD_TRACE_CurlHandler_ENABLED", "DD_CurlHandler_ENABLED", + "DD_TRACE_CURLHANDLER_ANALYTICS_ENABLED", "DD_TRACE_CurlHandler_ANALYTICS_ENABLED", "DD_CurlHandler_ANALYTICS_ENABLED", + "DD_TRACE_CURLHANDLER_ANALYTICS_SAMPLE_RATE", "DD_TRACE_CurlHandler_ANALYTICS_SAMPLE_RATE", "DD_CurlHandler_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_ASPNETCORE_ENABLED", "DD_TRACE_AspNetCore_ENABLED", "DD_AspNetCore_ENABLED", + "DD_TRACE_ASPNETCORE_ANALYTICS_ENABLED", "DD_TRACE_AspNetCore_ANALYTICS_ENABLED", "DD_AspNetCore_ANALYTICS_ENABLED", + "DD_TRACE_ASPNETCORE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AspNetCore_ANALYTICS_SAMPLE_RATE", "DD_AspNetCore_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_ADONET_ENABLED", "DD_TRACE_AdoNet_ENABLED", "DD_AdoNet_ENABLED", + "DD_TRACE_ADONET_ANALYTICS_ENABLED", "DD_TRACE_AdoNet_ANALYTICS_ENABLED", "DD_AdoNet_ANALYTICS_ENABLED", + "DD_TRACE_ADONET_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AdoNet_ANALYTICS_SAMPLE_RATE", "DD_AdoNet_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_ASPNET_ENABLED", "DD_TRACE_AspNet_ENABLED", "DD_AspNet_ENABLED", + "DD_TRACE_ASPNET_ANALYTICS_ENABLED", "DD_TRACE_AspNet_ANALYTICS_ENABLED", "DD_AspNet_ANALYTICS_ENABLED", + "DD_TRACE_ASPNET_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AspNet_ANALYTICS_SAMPLE_RATE", "DD_AspNet_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_ASPNETMVC_ENABLED", "DD_TRACE_AspNetMvc_ENABLED", "DD_AspNetMvc_ENABLED", + "DD_TRACE_ASPNETMVC_ANALYTICS_ENABLED", "DD_TRACE_AspNetMvc_ANALYTICS_ENABLED", "DD_AspNetMvc_ANALYTICS_ENABLED", + "DD_TRACE_ASPNETMVC_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AspNetMvc_ANALYTICS_SAMPLE_RATE", "DD_AspNetMvc_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_ASPNETWEBAPI2_ENABLED", "DD_TRACE_AspNetWebApi2_ENABLED", "DD_AspNetWebApi2_ENABLED", + "DD_TRACE_ASPNETWEBAPI2_ANALYTICS_ENABLED", "DD_TRACE_AspNetWebApi2_ANALYTICS_ENABLED", "DD_AspNetWebApi2_ANALYTICS_ENABLED", + "DD_TRACE_ASPNETWEBAPI2_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AspNetWebApi2_ANALYTICS_SAMPLE_RATE", "DD_AspNetWebApi2_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_GRAPHQL_ENABLED", "DD_TRACE_GraphQL_ENABLED", "DD_GraphQL_ENABLED", + "DD_TRACE_GRAPHQL_ANALYTICS_ENABLED", "DD_TRACE_GraphQL_ANALYTICS_ENABLED", "DD_GraphQL_ANALYTICS_ENABLED", + "DD_TRACE_GRAPHQL_ANALYTICS_SAMPLE_RATE", "DD_TRACE_GraphQL_ANALYTICS_SAMPLE_RATE", "DD_GraphQL_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_HOTCHOCOLATE_ENABLED", "DD_TRACE_HotChocolate_ENABLED", "DD_HotChocolate_ENABLED", + "DD_TRACE_HOTCHOCOLATE_ANALYTICS_ENABLED", "DD_TRACE_HotChocolate_ANALYTICS_ENABLED", "DD_HotChocolate_ANALYTICS_ENABLED", + "DD_TRACE_HOTCHOCOLATE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_HotChocolate_ANALYTICS_SAMPLE_RATE", "DD_HotChocolate_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_MONGODB_ENABLED", "DD_TRACE_MongoDb_ENABLED", "DD_MongoDb_ENABLED", + "DD_TRACE_MONGODB_ANALYTICS_ENABLED", "DD_TRACE_MongoDb_ANALYTICS_ENABLED", "DD_MongoDb_ANALYTICS_ENABLED", + "DD_TRACE_MONGODB_ANALYTICS_SAMPLE_RATE", "DD_TRACE_MongoDb_ANALYTICS_SAMPLE_RATE", "DD_MongoDb_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_XUNIT_ENABLED", "DD_TRACE_XUnit_ENABLED", "DD_XUnit_ENABLED", + "DD_TRACE_XUNIT_ANALYTICS_ENABLED", "DD_TRACE_XUnit_ANALYTICS_ENABLED", "DD_XUnit_ANALYTICS_ENABLED", + "DD_TRACE_XUNIT_ANALYTICS_SAMPLE_RATE", "DD_TRACE_XUnit_ANALYTICS_SAMPLE_RATE", "DD_XUnit_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_NUNIT_ENABLED", "DD_TRACE_NUnit_ENABLED", "DD_NUnit_ENABLED", + "DD_TRACE_NUNIT_ANALYTICS_ENABLED", "DD_TRACE_NUnit_ANALYTICS_ENABLED", "DD_NUnit_ANALYTICS_ENABLED", + "DD_TRACE_NUNIT_ANALYTICS_SAMPLE_RATE", "DD_TRACE_NUnit_ANALYTICS_SAMPLE_RATE", "DD_NUnit_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_MSTESTV2_ENABLED", "DD_TRACE_MsTestV2_ENABLED", "DD_MsTestV2_ENABLED", + "DD_TRACE_MSTESTV2_ANALYTICS_ENABLED", "DD_TRACE_MsTestV2_ANALYTICS_ENABLED", "DD_MsTestV2_ANALYTICS_ENABLED", + "DD_TRACE_MSTESTV2_ANALYTICS_SAMPLE_RATE", "DD_TRACE_MsTestV2_ANALYTICS_SAMPLE_RATE", "DD_MsTestV2_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_WCF_ENABLED", "DD_TRACE_Wcf_ENABLED", "DD_Wcf_ENABLED", + "DD_TRACE_WCF_ANALYTICS_ENABLED", "DD_TRACE_Wcf_ANALYTICS_ENABLED", "DD_Wcf_ANALYTICS_ENABLED", + "DD_TRACE_WCF_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Wcf_ANALYTICS_SAMPLE_RATE", "DD_Wcf_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_WEBREQUEST_ENABLED", "DD_TRACE_WebRequest_ENABLED", "DD_WebRequest_ENABLED", + "DD_TRACE_WEBREQUEST_ANALYTICS_ENABLED", "DD_TRACE_WebRequest_ANALYTICS_ENABLED", "DD_WebRequest_ANALYTICS_ENABLED", + "DD_TRACE_WEBREQUEST_ANALYTICS_SAMPLE_RATE", "DD_TRACE_WebRequest_ANALYTICS_SAMPLE_RATE", "DD_WebRequest_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_ELASTICSEARCHNET_ENABLED", "DD_TRACE_ElasticsearchNet_ENABLED", "DD_ElasticsearchNet_ENABLED", + "DD_TRACE_ELASTICSEARCHNET_ANALYTICS_ENABLED", "DD_TRACE_ElasticsearchNet_ANALYTICS_ENABLED", "DD_ElasticsearchNet_ANALYTICS_ENABLED", + "DD_TRACE_ELASTICSEARCHNET_ANALYTICS_SAMPLE_RATE", "DD_TRACE_ElasticsearchNet_ANALYTICS_SAMPLE_RATE", "DD_ElasticsearchNet_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SERVICESTACKREDIS_ENABLED", "DD_TRACE_ServiceStackRedis_ENABLED", "DD_ServiceStackRedis_ENABLED", + "DD_TRACE_SERVICESTACKREDIS_ANALYTICS_ENABLED", "DD_TRACE_ServiceStackRedis_ANALYTICS_ENABLED", "DD_ServiceStackRedis_ANALYTICS_ENABLED", + "DD_TRACE_SERVICESTACKREDIS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_ServiceStackRedis_ANALYTICS_SAMPLE_RATE", "DD_ServiceStackRedis_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_STACKEXCHANGEREDIS_ENABLED", "DD_TRACE_StackExchangeRedis_ENABLED", "DD_StackExchangeRedis_ENABLED", + "DD_TRACE_STACKEXCHANGEREDIS_ANALYTICS_ENABLED", "DD_TRACE_StackExchangeRedis_ANALYTICS_ENABLED", "DD_StackExchangeRedis_ANALYTICS_ENABLED", + "DD_TRACE_STACKEXCHANGEREDIS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_StackExchangeRedis_ANALYTICS_SAMPLE_RATE", "DD_StackExchangeRedis_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SERVICEREMOTING_ENABLED", "DD_TRACE_ServiceRemoting_ENABLED", "DD_ServiceRemoting_ENABLED", + "DD_TRACE_SERVICEREMOTING_ANALYTICS_ENABLED", "DD_TRACE_ServiceRemoting_ANALYTICS_ENABLED", "DD_ServiceRemoting_ANALYTICS_ENABLED", + "DD_TRACE_SERVICEREMOTING_ANALYTICS_SAMPLE_RATE", "DD_TRACE_ServiceRemoting_ANALYTICS_SAMPLE_RATE", "DD_ServiceRemoting_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_RABBITMQ_ENABLED", "DD_TRACE_RabbitMQ_ENABLED", "DD_RabbitMQ_ENABLED", + "DD_TRACE_RABBITMQ_ANALYTICS_ENABLED", "DD_TRACE_RabbitMQ_ANALYTICS_ENABLED", "DD_RabbitMQ_ANALYTICS_ENABLED", + "DD_TRACE_RABBITMQ_ANALYTICS_SAMPLE_RATE", "DD_TRACE_RabbitMQ_ANALYTICS_SAMPLE_RATE", "DD_RabbitMQ_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_MSMQ_ENABLED", "DD_TRACE_Msmq_ENABLED", "DD_Msmq_ENABLED", + "DD_TRACE_MSMQ_ANALYTICS_ENABLED", "DD_TRACE_Msmq_ANALYTICS_ENABLED", "DD_Msmq_ANALYTICS_ENABLED", + "DD_TRACE_MSMQ_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Msmq_ANALYTICS_SAMPLE_RATE", "DD_Msmq_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_KAFKA_ENABLED", "DD_TRACE_Kafka_ENABLED", "DD_Kafka_ENABLED", + "DD_TRACE_KAFKA_ANALYTICS_ENABLED", "DD_TRACE_Kafka_ANALYTICS_ENABLED", "DD_Kafka_ANALYTICS_ENABLED", + "DD_TRACE_KAFKA_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Kafka_ANALYTICS_SAMPLE_RATE", "DD_Kafka_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_COSMOSDB_ENABLED", "DD_TRACE_CosmosDb_ENABLED", "DD_CosmosDb_ENABLED", + "DD_TRACE_COSMOSDB_ANALYTICS_ENABLED", "DD_TRACE_CosmosDb_ANALYTICS_ENABLED", "DD_CosmosDb_ANALYTICS_ENABLED", + "DD_TRACE_COSMOSDB_ANALYTICS_SAMPLE_RATE", "DD_TRACE_CosmosDb_ANALYTICS_SAMPLE_RATE", "DD_CosmosDb_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSS3_ENABLED", "DD_TRACE_AwsS3_ENABLED", "DD_AwsS3_ENABLED", + "DD_TRACE_AWSS3_ANALYTICS_ENABLED", "DD_TRACE_AwsS3_ANALYTICS_ENABLED", "DD_AwsS3_ANALYTICS_ENABLED", + "DD_TRACE_AWSS3_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsS3_ANALYTICS_SAMPLE_RATE", "DD_AwsS3_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSSDK_ENABLED", "DD_TRACE_AwsSdk_ENABLED", "DD_AwsSdk_ENABLED", + "DD_TRACE_AWSSDK_ANALYTICS_ENABLED", "DD_TRACE_AwsSdk_ANALYTICS_ENABLED", "DD_AwsSdk_ANALYTICS_ENABLED", + "DD_TRACE_AWSSDK_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsSdk_ANALYTICS_SAMPLE_RATE", "DD_AwsSdk_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSSQS_ENABLED", "DD_TRACE_AwsSqs_ENABLED", "DD_AwsSqs_ENABLED", + "DD_TRACE_AWSSQS_ANALYTICS_ENABLED", "DD_TRACE_AwsSqs_ANALYTICS_ENABLED", "DD_AwsSqs_ANALYTICS_ENABLED", + "DD_TRACE_AWSSQS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsSqs_ANALYTICS_SAMPLE_RATE", "DD_AwsSqs_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSSNS_ENABLED", "DD_TRACE_AwsSns_ENABLED", "DD_AwsSns_ENABLED", + "DD_TRACE_AWSSNS_ANALYTICS_ENABLED", "DD_TRACE_AwsSns_ANALYTICS_ENABLED", "DD_AwsSns_ANALYTICS_ENABLED", + "DD_TRACE_AWSSNS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsSns_ANALYTICS_SAMPLE_RATE", "DD_AwsSns_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSEVENTBRIDGE_ENABLED", "DD_TRACE_AwsEventBridge_ENABLED", "DD_AwsEventBridge_ENABLED", + "DD_TRACE_AWSEVENTBRIDGE_ANALYTICS_ENABLED", "DD_TRACE_AwsEventBridge_ANALYTICS_ENABLED", "DD_AwsEventBridge_ANALYTICS_ENABLED", + "DD_TRACE_AWSEVENTBRIDGE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsEventBridge_ANALYTICS_SAMPLE_RATE", "DD_AwsEventBridge_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSSTEPFUNCTIONS_ENABLED", "DD_TRACE_AwsStepFunctions_ENABLED", "DD_AwsStepFunctions_ENABLED", + "DD_TRACE_AWSSTEPFUNCTIONS_ANALYTICS_ENABLED", "DD_TRACE_AwsStepFunctions_ANALYTICS_ENABLED", "DD_AwsStepFunctions_ANALYTICS_ENABLED", + "DD_TRACE_AWSSTEPFUNCTIONS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsStepFunctions_ANALYTICS_SAMPLE_RATE", "DD_AwsStepFunctions_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSLAMBDA_ENABLED", "DD_TRACE_AwsLambda_ENABLED", "DD_AwsLambda_ENABLED", + "DD_TRACE_AWSLAMBDA_ANALYTICS_ENABLED", "DD_TRACE_AwsLambda_ANALYTICS_ENABLED", "DD_AwsLambda_ANALYTICS_ENABLED", + "DD_TRACE_AWSLAMBDA_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsLambda_ANALYTICS_SAMPLE_RATE", "DD_AwsLambda_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_ILOGGER_ENABLED", "DD_TRACE_ILogger_ENABLED", "DD_ILogger_ENABLED", + "DD_TRACE_ILOGGER_ANALYTICS_ENABLED", "DD_TRACE_ILogger_ANALYTICS_ENABLED", "DD_ILogger_ANALYTICS_ENABLED", + "DD_TRACE_ILOGGER_ANALYTICS_SAMPLE_RATE", "DD_TRACE_ILogger_ANALYTICS_SAMPLE_RATE", "DD_ILogger_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AEROSPIKE_ENABLED", "DD_TRACE_Aerospike_ENABLED", "DD_Aerospike_ENABLED", + "DD_TRACE_AEROSPIKE_ANALYTICS_ENABLED", "DD_TRACE_Aerospike_ANALYTICS_ENABLED", "DD_Aerospike_ANALYTICS_ENABLED", + "DD_TRACE_AEROSPIKE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Aerospike_ANALYTICS_SAMPLE_RATE", "DD_Aerospike_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AZUREFUNCTIONS_ENABLED", "DD_TRACE_AzureFunctions_ENABLED", "DD_AzureFunctions_ENABLED", + "DD_TRACE_AZUREFUNCTIONS_ANALYTICS_ENABLED", "DD_TRACE_AzureFunctions_ANALYTICS_ENABLED", "DD_AzureFunctions_ANALYTICS_ENABLED", + "DD_TRACE_AZUREFUNCTIONS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AzureFunctions_ANALYTICS_SAMPLE_RATE", "DD_AzureFunctions_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_COUCHBASE_ENABLED", "DD_TRACE_Couchbase_ENABLED", "DD_Couchbase_ENABLED", + "DD_TRACE_COUCHBASE_ANALYTICS_ENABLED", "DD_TRACE_Couchbase_ANALYTICS_ENABLED", "DD_Couchbase_ANALYTICS_ENABLED", + "DD_TRACE_COUCHBASE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Couchbase_ANALYTICS_SAMPLE_RATE", "DD_Couchbase_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_MYSQL_ENABLED", "DD_TRACE_MySql_ENABLED", "DD_MySql_ENABLED", + "DD_TRACE_MYSQL_ANALYTICS_ENABLED", "DD_TRACE_MySql_ANALYTICS_ENABLED", "DD_MySql_ANALYTICS_ENABLED", + "DD_TRACE_MYSQL_ANALYTICS_SAMPLE_RATE", "DD_TRACE_MySql_ANALYTICS_SAMPLE_RATE", "DD_MySql_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_NPGSQL_ENABLED", "DD_TRACE_Npgsql_ENABLED", "DD_Npgsql_ENABLED", + "DD_TRACE_NPGSQL_ANALYTICS_ENABLED", "DD_TRACE_Npgsql_ANALYTICS_ENABLED", "DD_Npgsql_ANALYTICS_ENABLED", + "DD_TRACE_NPGSQL_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Npgsql_ANALYTICS_SAMPLE_RATE", "DD_Npgsql_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_ORACLE_ENABLED", "DD_TRACE_Oracle_ENABLED", "DD_Oracle_ENABLED", + "DD_TRACE_ORACLE_ANALYTICS_ENABLED", "DD_TRACE_Oracle_ANALYTICS_ENABLED", "DD_Oracle_ANALYTICS_ENABLED", + "DD_TRACE_ORACLE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Oracle_ANALYTICS_SAMPLE_RATE", "DD_Oracle_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SQLCLIENT_ENABLED", "DD_TRACE_SqlClient_ENABLED", "DD_SqlClient_ENABLED", + "DD_TRACE_SQLCLIENT_ANALYTICS_ENABLED", "DD_TRACE_SqlClient_ANALYTICS_ENABLED", "DD_SqlClient_ANALYTICS_ENABLED", + "DD_TRACE_SQLCLIENT_ANALYTICS_SAMPLE_RATE", "DD_TRACE_SqlClient_ANALYTICS_SAMPLE_RATE", "DD_SqlClient_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SQLITE_ENABLED", "DD_TRACE_Sqlite_ENABLED", "DD_Sqlite_ENABLED", + "DD_TRACE_SQLITE_ANALYTICS_ENABLED", "DD_TRACE_Sqlite_ANALYTICS_ENABLED", "DD_Sqlite_ANALYTICS_ENABLED", + "DD_TRACE_SQLITE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Sqlite_ANALYTICS_SAMPLE_RATE", "DD_Sqlite_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SERILOG_ENABLED", "DD_TRACE_Serilog_ENABLED", "DD_Serilog_ENABLED", + "DD_TRACE_SERILOG_ANALYTICS_ENABLED", "DD_TRACE_Serilog_ANALYTICS_ENABLED", "DD_Serilog_ANALYTICS_ENABLED", + "DD_TRACE_SERILOG_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Serilog_ANALYTICS_SAMPLE_RATE", "DD_Serilog_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_LOG4NET_ENABLED", "DD_TRACE_Log4Net_ENABLED", "DD_Log4Net_ENABLED", + "DD_TRACE_LOG4NET_ANALYTICS_ENABLED", "DD_TRACE_Log4Net_ANALYTICS_ENABLED", "DD_Log4Net_ANALYTICS_ENABLED", + "DD_TRACE_LOG4NET_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Log4Net_ANALYTICS_SAMPLE_RATE", "DD_Log4Net_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_NLOG_ENABLED", "DD_TRACE_NLog_ENABLED", "DD_NLog_ENABLED", + "DD_TRACE_NLOG_ANALYTICS_ENABLED", "DD_TRACE_NLog_ANALYTICS_ENABLED", "DD_NLog_ANALYTICS_ENABLED", + "DD_TRACE_NLOG_ANALYTICS_SAMPLE_RATE", "DD_TRACE_NLog_ANALYTICS_SAMPLE_RATE", "DD_NLog_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_TRACEANNOTATIONS_ENABLED", "DD_TRACE_TraceAnnotations_ENABLED", "DD_TraceAnnotations_ENABLED", + "DD_TRACE_TRACEANNOTATIONS_ANALYTICS_ENABLED", "DD_TRACE_TraceAnnotations_ANALYTICS_ENABLED", "DD_TraceAnnotations_ANALYTICS_ENABLED", + "DD_TRACE_TRACEANNOTATIONS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_TraceAnnotations_ANALYTICS_SAMPLE_RATE", "DD_TraceAnnotations_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_GRPC_ENABLED", "DD_TRACE_Grpc_ENABLED", "DD_Grpc_ENABLED", + "DD_TRACE_GRPC_ANALYTICS_ENABLED", "DD_TRACE_Grpc_ANALYTICS_ENABLED", "DD_Grpc_ANALYTICS_ENABLED", + "DD_TRACE_GRPC_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Grpc_ANALYTICS_SAMPLE_RATE", "DD_Grpc_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_PROCESS_ENABLED", "DD_TRACE_Process_ENABLED", "DD_Process_ENABLED", + "DD_TRACE_PROCESS_ANALYTICS_ENABLED", "DD_TRACE_Process_ANALYTICS_ENABLED", "DD_Process_ANALYTICS_ENABLED", + "DD_TRACE_PROCESS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Process_ANALYTICS_SAMPLE_RATE", "DD_Process_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_HASHALGORITHM_ENABLED", "DD_TRACE_HashAlgorithm_ENABLED", "DD_HashAlgorithm_ENABLED", + "DD_TRACE_HASHALGORITHM_ANALYTICS_ENABLED", "DD_TRACE_HashAlgorithm_ANALYTICS_ENABLED", "DD_HashAlgorithm_ANALYTICS_ENABLED", + "DD_TRACE_HASHALGORITHM_ANALYTICS_SAMPLE_RATE", "DD_TRACE_HashAlgorithm_ANALYTICS_SAMPLE_RATE", "DD_HashAlgorithm_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SYMMETRICALGORITHM_ENABLED", "DD_TRACE_SymmetricAlgorithm_ENABLED", "DD_SymmetricAlgorithm_ENABLED", + "DD_TRACE_SYMMETRICALGORITHM_ANALYTICS_ENABLED", "DD_TRACE_SymmetricAlgorithm_ANALYTICS_ENABLED", "DD_SymmetricAlgorithm_ANALYTICS_ENABLED", + "DD_TRACE_SYMMETRICALGORITHM_ANALYTICS_SAMPLE_RATE", "DD_TRACE_SymmetricAlgorithm_ANALYTICS_SAMPLE_RATE", "DD_SymmetricAlgorithm_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_OPENTELEMETRY_ENABLED", "DD_TRACE_OpenTelemetry_ENABLED", "DD_OpenTelemetry_ENABLED", + "DD_TRACE_OPENTELEMETRY_ANALYTICS_ENABLED", "DD_TRACE_OpenTelemetry_ANALYTICS_ENABLED", "DD_OpenTelemetry_ANALYTICS_ENABLED", + "DD_TRACE_OPENTELEMETRY_ANALYTICS_SAMPLE_RATE", "DD_TRACE_OpenTelemetry_ANALYTICS_SAMPLE_RATE", "DD_OpenTelemetry_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_PATHTRAVERSAL_ENABLED", "DD_TRACE_PathTraversal_ENABLED", "DD_PathTraversal_ENABLED", + "DD_TRACE_PATHTRAVERSAL_ANALYTICS_ENABLED", "DD_TRACE_PathTraversal_ANALYTICS_ENABLED", "DD_PathTraversal_ANALYTICS_ENABLED", + "DD_TRACE_PATHTRAVERSAL_ANALYTICS_SAMPLE_RATE", "DD_TRACE_PathTraversal_ANALYTICS_SAMPLE_RATE", "DD_PathTraversal_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_LDAP_ENABLED", "DD_TRACE_Ldap_ENABLED", "DD_Ldap_ENABLED", + "DD_TRACE_LDAP_ANALYTICS_ENABLED", "DD_TRACE_Ldap_ANALYTICS_ENABLED", "DD_Ldap_ANALYTICS_ENABLED", + "DD_TRACE_LDAP_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Ldap_ANALYTICS_SAMPLE_RATE", "DD_Ldap_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SSRF_ENABLED", "DD_TRACE_Ssrf_ENABLED", "DD_Ssrf_ENABLED", + "DD_TRACE_SSRF_ANALYTICS_ENABLED", "DD_TRACE_Ssrf_ANALYTICS_ENABLED", "DD_Ssrf_ANALYTICS_ENABLED", + "DD_TRACE_SSRF_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Ssrf_ANALYTICS_SAMPLE_RATE", "DD_Ssrf_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSKINESIS_ENABLED", "DD_TRACE_AwsKinesis_ENABLED", "DD_AwsKinesis_ENABLED", + "DD_TRACE_AWSKINESIS_ANALYTICS_ENABLED", "DD_TRACE_AwsKinesis_ANALYTICS_ENABLED", "DD_AwsKinesis_ANALYTICS_ENABLED", + "DD_TRACE_AWSKINESIS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsKinesis_ANALYTICS_SAMPLE_RATE", "DD_AwsKinesis_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AZURESERVICEBUS_ENABLED", "DD_TRACE_AzureServiceBus_ENABLED", "DD_AzureServiceBus_ENABLED", + "DD_TRACE_AZURESERVICEBUS_ANALYTICS_ENABLED", "DD_TRACE_AzureServiceBus_ANALYTICS_ENABLED", "DD_AzureServiceBus_ANALYTICS_ENABLED", + "DD_TRACE_AZURESERVICEBUS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AzureServiceBus_ANALYTICS_SAMPLE_RATE", "DD_AzureServiceBus_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SYSTEMRANDOM_ENABLED", "DD_TRACE_SystemRandom_ENABLED", "DD_SystemRandom_ENABLED", + "DD_TRACE_SYSTEMRANDOM_ANALYTICS_ENABLED", "DD_TRACE_SystemRandom_ANALYTICS_ENABLED", "DD_SystemRandom_ANALYTICS_ENABLED", + "DD_TRACE_SYSTEMRANDOM_ANALYTICS_SAMPLE_RATE", "DD_TRACE_SystemRandom_ANALYTICS_SAMPLE_RATE", "DD_SystemRandom_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSDYNAMODB_ENABLED", "DD_TRACE_AwsDynamoDb_ENABLED", "DD_AwsDynamoDb_ENABLED", + "DD_TRACE_AWSDYNAMODB_ANALYTICS_ENABLED", "DD_TRACE_AwsDynamoDb_ANALYTICS_ENABLED", "DD_AwsDynamoDb_ANALYTICS_ENABLED", + "DD_TRACE_AWSDYNAMODB_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsDynamoDb_ANALYTICS_SAMPLE_RATE", "DD_AwsDynamoDb_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_HARDCODEDSECRET_ENABLED", "DD_TRACE_HardcodedSecret_ENABLED", "DD_HardcodedSecret_ENABLED", + "DD_TRACE_HARDCODEDSECRET_ANALYTICS_ENABLED", "DD_TRACE_HardcodedSecret_ANALYTICS_ENABLED", "DD_HardcodedSecret_ANALYTICS_ENABLED", + "DD_TRACE_HARDCODEDSECRET_ANALYTICS_SAMPLE_RATE", "DD_TRACE_HardcodedSecret_ANALYTICS_SAMPLE_RATE", "DD_HardcodedSecret_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_IBMMQ_ENABLED", "DD_TRACE_IbmMq_ENABLED", "DD_IbmMq_ENABLED", + "DD_TRACE_IBMMQ_ANALYTICS_ENABLED", "DD_TRACE_IbmMq_ANALYTICS_ENABLED", "DD_IbmMq_ANALYTICS_ENABLED", + "DD_TRACE_IBMMQ_ANALYTICS_SAMPLE_RATE", "DD_TRACE_IbmMq_ANALYTICS_SAMPLE_RATE", "DD_IbmMq_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_REMOTING_ENABLED", "DD_TRACE_Remoting_ENABLED", "DD_Remoting_ENABLED", + "DD_TRACE_REMOTING_ANALYTICS_ENABLED", "DD_TRACE_Remoting_ANALYTICS_ENABLED", "DD_Remoting_ANALYTICS_ENABLED", + "DD_TRACE_REMOTING_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Remoting_ANALYTICS_SAMPLE_RATE", "DD_Remoting_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_TRUSTBOUNDARYVIOLATION_ENABLED", "DD_TRACE_TrustBoundaryViolation_ENABLED", "DD_TrustBoundaryViolation_ENABLED", + "DD_TRACE_TRUSTBOUNDARYVIOLATION_ANALYTICS_ENABLED", "DD_TRACE_TrustBoundaryViolation_ANALYTICS_ENABLED", "DD_TrustBoundaryViolation_ANALYTICS_ENABLED", + "DD_TRACE_TRUSTBOUNDARYVIOLATION_ANALYTICS_SAMPLE_RATE", "DD_TRACE_TrustBoundaryViolation_ANALYTICS_SAMPLE_RATE", "DD_TrustBoundaryViolation_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_UNVALIDATEDREDIRECT_ENABLED", "DD_TRACE_UnvalidatedRedirect_ENABLED", "DD_UnvalidatedRedirect_ENABLED", + "DD_TRACE_UNVALIDATEDREDIRECT_ANALYTICS_ENABLED", "DD_TRACE_UnvalidatedRedirect_ANALYTICS_ENABLED", "DD_UnvalidatedRedirect_ANALYTICS_ENABLED", + "DD_TRACE_UNVALIDATEDREDIRECT_ANALYTICS_SAMPLE_RATE", "DD_TRACE_UnvalidatedRedirect_ANALYTICS_SAMPLE_RATE", "DD_UnvalidatedRedirect_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_TESTPLATFORMASSEMBLYRESOLVER_ENABLED", "DD_TRACE_TestPlatformAssemblyResolver_ENABLED", "DD_TestPlatformAssemblyResolver_ENABLED", + "DD_TRACE_TESTPLATFORMASSEMBLYRESOLVER_ANALYTICS_ENABLED", "DD_TRACE_TestPlatformAssemblyResolver_ANALYTICS_ENABLED", "DD_TestPlatformAssemblyResolver_ANALYTICS_ENABLED", + "DD_TRACE_TESTPLATFORMASSEMBLYRESOLVER_ANALYTICS_SAMPLE_RATE", "DD_TRACE_TestPlatformAssemblyResolver_ANALYTICS_SAMPLE_RATE", "DD_TestPlatformAssemblyResolver_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_STACKTRACELEAK_ENABLED", "DD_TRACE_StackTraceLeak_ENABLED", "DD_StackTraceLeak_ENABLED", + "DD_TRACE_STACKTRACELEAK_ANALYTICS_ENABLED", "DD_TRACE_StackTraceLeak_ANALYTICS_ENABLED", "DD_StackTraceLeak_ANALYTICS_ENABLED", + "DD_TRACE_STACKTRACELEAK_ANALYTICS_SAMPLE_RATE", "DD_TRACE_StackTraceLeak_ANALYTICS_SAMPLE_RATE", "DD_StackTraceLeak_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_XPATHINJECTION_ENABLED", "DD_TRACE_XpathInjection_ENABLED", "DD_XpathInjection_ENABLED", + "DD_TRACE_XPATHINJECTION_ANALYTICS_ENABLED", "DD_TRACE_XpathInjection_ANALYTICS_ENABLED", "DD_XpathInjection_ANALYTICS_ENABLED", + "DD_TRACE_XPATHINJECTION_ANALYTICS_SAMPLE_RATE", "DD_TRACE_XpathInjection_ANALYTICS_SAMPLE_RATE", "DD_XpathInjection_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_REFLECTIONINJECTION_ENABLED", "DD_TRACE_ReflectionInjection_ENABLED", "DD_ReflectionInjection_ENABLED", + "DD_TRACE_REFLECTIONINJECTION_ANALYTICS_ENABLED", "DD_TRACE_ReflectionInjection_ANALYTICS_ENABLED", "DD_ReflectionInjection_ANALYTICS_ENABLED", + "DD_TRACE_REFLECTIONINJECTION_ANALYTICS_SAMPLE_RATE", "DD_TRACE_ReflectionInjection_ANALYTICS_SAMPLE_RATE", "DD_ReflectionInjection_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_XSS_ENABLED", "DD_TRACE_Xss_ENABLED", "DD_Xss_ENABLED", + "DD_TRACE_XSS_ANALYTICS_ENABLED", "DD_TRACE_Xss_ANALYTICS_ENABLED", "DD_Xss_ANALYTICS_ENABLED", + "DD_TRACE_XSS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Xss_ANALYTICS_SAMPLE_RATE", "DD_Xss_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_NHIBERNATE_ENABLED", "DD_TRACE_NHibernate_ENABLED", "DD_NHibernate_ENABLED", + "DD_TRACE_NHIBERNATE_ANALYTICS_ENABLED", "DD_TRACE_NHibernate_ANALYTICS_ENABLED", "DD_NHibernate_ANALYTICS_ENABLED", + "DD_TRACE_NHIBERNATE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_NHibernate_ANALYTICS_SAMPLE_RATE", "DD_NHibernate_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_DOTNETTEST_ENABLED", "DD_TRACE_DotnetTest_ENABLED", "DD_DotnetTest_ENABLED", + "DD_TRACE_DOTNETTEST_ANALYTICS_ENABLED", "DD_TRACE_DotnetTest_ANALYTICS_ENABLED", "DD_DotnetTest_ANALYTICS_ENABLED", + "DD_TRACE_DOTNETTEST_ANALYTICS_SAMPLE_RATE", "DD_TRACE_DotnetTest_ANALYTICS_SAMPLE_RATE", "DD_DotnetTest_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SELENIUM_ENABLED", "DD_TRACE_Selenium_ENABLED", "DD_Selenium_ENABLED", + "DD_TRACE_SELENIUM_ANALYTICS_ENABLED", "DD_TRACE_Selenium_ANALYTICS_ENABLED", "DD_Selenium_ANALYTICS_ENABLED", + "DD_TRACE_SELENIUM_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Selenium_ANALYTICS_SAMPLE_RATE", "DD_Selenium_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_DIRECTORYLISTINGLEAK_ENABLED", "DD_TRACE_DirectoryListingLeak_ENABLED", "DD_DirectoryListingLeak_ENABLED", + "DD_TRACE_DIRECTORYLISTINGLEAK_ANALYTICS_ENABLED", "DD_TRACE_DirectoryListingLeak_ANALYTICS_ENABLED", "DD_DirectoryListingLeak_ANALYTICS_ENABLED", + "DD_TRACE_DIRECTORYLISTINGLEAK_ANALYTICS_SAMPLE_RATE", "DD_TRACE_DirectoryListingLeak_ANALYTICS_SAMPLE_RATE", "DD_DirectoryListingLeak_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SESSIONTIMEOUT_ENABLED", "DD_TRACE_SessionTimeout_ENABLED", "DD_SessionTimeout_ENABLED", + "DD_TRACE_SESSIONTIMEOUT_ANALYTICS_ENABLED", "DD_TRACE_SessionTimeout_ANALYTICS_ENABLED", "DD_SessionTimeout_ANALYTICS_ENABLED", + "DD_TRACE_SESSIONTIMEOUT_ANALYTICS_SAMPLE_RATE", "DD_TRACE_SessionTimeout_ANALYTICS_SAMPLE_RATE", "DD_SessionTimeout_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_DATADOGTRACEMANUAL_ENABLED", "DD_TRACE_DatadogTraceManual_ENABLED", "DD_DatadogTraceManual_ENABLED", + "DD_TRACE_DATADOGTRACEMANUAL_ANALYTICS_ENABLED", "DD_TRACE_DatadogTraceManual_ANALYTICS_ENABLED", "DD_DatadogTraceManual_ANALYTICS_ENABLED", + "DD_TRACE_DATADOGTRACEMANUAL_ANALYTICS_SAMPLE_RATE", "DD_TRACE_DatadogTraceManual_ANALYTICS_SAMPLE_RATE", "DD_DatadogTraceManual_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_EMAILHTMLINJECTION_ENABLED", "DD_TRACE_EmailHtmlInjection_ENABLED", "DD_EmailHtmlInjection_ENABLED", + "DD_TRACE_EMAILHTMLINJECTION_ANALYTICS_ENABLED", "DD_TRACE_EmailHtmlInjection_ANALYTICS_ENABLED", "DD_EmailHtmlInjection_ANALYTICS_ENABLED", + "DD_TRACE_EMAILHTMLINJECTION_ANALYTICS_SAMPLE_RATE", "DD_TRACE_EmailHtmlInjection_ANALYTICS_SAMPLE_RATE", "DD_EmailHtmlInjection_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_PROTOBUF_ENABLED", "DD_TRACE_Protobuf_ENABLED", "DD_Protobuf_ENABLED", + "DD_TRACE_PROTOBUF_ANALYTICS_ENABLED", "DD_TRACE_Protobuf_ANALYTICS_ENABLED", "DD_Protobuf_ANALYTICS_ENABLED", + "DD_TRACE_PROTOBUF_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Protobuf_ANALYTICS_SAMPLE_RATE", "DD_Protobuf_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AZUREEVENTHUBS_ENABLED", "DD_TRACE_AzureEventHubs_ENABLED", "DD_AzureEventHubs_ENABLED", + "DD_TRACE_AZUREEVENTHUBS_ANALYTICS_ENABLED", "DD_TRACE_AzureEventHubs_ANALYTICS_ENABLED", "DD_AzureEventHubs_ANALYTICS_ENABLED", + "DD_TRACE_AZUREEVENTHUBS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AzureEventHubs_ANALYTICS_SAMPLE_RATE", "DD_AzureEventHubs_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_DATADOGTRACEVERSIONCONFLICT_ENABLED", "DD_TRACE_DatadogTraceVersionConflict_ENABLED", "DD_DatadogTraceVersionConflict_ENABLED", + "DD_TRACE_DATADOGTRACEVERSIONCONFLICT_ANALYTICS_ENABLED", "DD_TRACE_DatadogTraceVersionConflict_ANALYTICS_ENABLED", "DD_DatadogTraceVersionConflict_ANALYTICS_ENABLED", + "DD_TRACE_DATADOGTRACEVERSIONCONFLICT_ANALYTICS_SAMPLE_RATE", "DD_TRACE_DatadogTraceVersionConflict_ANALYTICS_SAMPLE_RATE", "DD_DatadogTraceVersionConflict_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_HANGFIRE_ENABLED", "DD_TRACE_Hangfire_ENABLED", "DD_Hangfire_ENABLED", + "DD_TRACE_HANGFIRE_ANALYTICS_ENABLED", "DD_TRACE_Hangfire_ANALYTICS_ENABLED", "DD_Hangfire_ANALYTICS_ENABLED", + "DD_TRACE_HANGFIRE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Hangfire_ANALYTICS_SAMPLE_RATE", "DD_Hangfire_ANALYTICS_SAMPLE_RATE", + ]; + /// + /// Gets the configuration keys for the specified integration name. + /// Returns a KeyValuePair where Key is the canonical key and Value is an array of aliases. + /// + /// The integration name + /// KeyValuePair with canonical key and aliases + public static System.Collections.Generic.KeyValuePair GetIntegrationEnabledKeys(string integrationName) => + integrationName switch + { + "HttpMessageHandler" => new("DD_TRACE_HTTPMESSAGEHANDLER_ENABLED", ["DD_TRACE_HttpMessageHandler_ENABLED", "DD_HttpMessageHandler_ENABLED"]), + "HttpSocketsHandler" => new("DD_TRACE_HTTPSOCKETSHANDLER_ENABLED", ["DD_TRACE_HttpSocketsHandler_ENABLED", "DD_HttpSocketsHandler_ENABLED"]), + "WinHttpHandler" => new("DD_TRACE_WINHTTPHANDLER_ENABLED", ["DD_TRACE_WinHttpHandler_ENABLED", "DD_WinHttpHandler_ENABLED"]), + "CurlHandler" => new("DD_TRACE_CURLHANDLER_ENABLED", ["DD_TRACE_CurlHandler_ENABLED", "DD_CurlHandler_ENABLED"]), + "AspNetCore" => new("DD_TRACE_ASPNETCORE_ENABLED", ["DD_TRACE_AspNetCore_ENABLED", "DD_AspNetCore_ENABLED"]), + "AdoNet" => new("DD_TRACE_ADONET_ENABLED", ["DD_TRACE_AdoNet_ENABLED", "DD_AdoNet_ENABLED"]), + "AspNet" => new("DD_TRACE_ASPNET_ENABLED", ["DD_TRACE_AspNet_ENABLED", "DD_AspNet_ENABLED"]), + "AspNetMvc" => new("DD_TRACE_ASPNETMVC_ENABLED", ["DD_TRACE_AspNetMvc_ENABLED", "DD_AspNetMvc_ENABLED"]), + "AspNetWebApi2" => new("DD_TRACE_ASPNETWEBAPI2_ENABLED", ["DD_TRACE_AspNetWebApi2_ENABLED", "DD_AspNetWebApi2_ENABLED"]), + "GraphQL" => new("DD_TRACE_GRAPHQL_ENABLED", ["DD_TRACE_GraphQL_ENABLED", "DD_GraphQL_ENABLED"]), + "HotChocolate" => new("DD_TRACE_HOTCHOCOLATE_ENABLED", ["DD_TRACE_HotChocolate_ENABLED", "DD_HotChocolate_ENABLED"]), + "MongoDb" => new("DD_TRACE_MONGODB_ENABLED", ["DD_TRACE_MongoDb_ENABLED", "DD_MongoDb_ENABLED"]), + "XUnit" => new("DD_TRACE_XUNIT_ENABLED", ["DD_TRACE_XUnit_ENABLED", "DD_XUnit_ENABLED"]), + "NUnit" => new("DD_TRACE_NUNIT_ENABLED", ["DD_TRACE_NUnit_ENABLED", "DD_NUnit_ENABLED"]), + "MsTestV2" => new("DD_TRACE_MSTESTV2_ENABLED", ["DD_TRACE_MsTestV2_ENABLED", "DD_MsTestV2_ENABLED"]), + "Wcf" => new("DD_TRACE_WCF_ENABLED", ["DD_TRACE_Wcf_ENABLED", "DD_Wcf_ENABLED"]), + "WebRequest" => new("DD_TRACE_WEBREQUEST_ENABLED", ["DD_TRACE_WebRequest_ENABLED", "DD_WebRequest_ENABLED"]), + "ElasticsearchNet" => new("DD_TRACE_ELASTICSEARCHNET_ENABLED", ["DD_TRACE_ElasticsearchNet_ENABLED", "DD_ElasticsearchNet_ENABLED"]), + "ServiceStackRedis" => new("DD_TRACE_SERVICESTACKREDIS_ENABLED", ["DD_TRACE_ServiceStackRedis_ENABLED", "DD_ServiceStackRedis_ENABLED"]), + "StackExchangeRedis" => new("DD_TRACE_STACKEXCHANGEREDIS_ENABLED", ["DD_TRACE_StackExchangeRedis_ENABLED", "DD_StackExchangeRedis_ENABLED"]), + "ServiceRemoting" => new("DD_TRACE_SERVICEREMOTING_ENABLED", ["DD_TRACE_ServiceRemoting_ENABLED", "DD_ServiceRemoting_ENABLED"]), + "RabbitMQ" => new("DD_TRACE_RABBITMQ_ENABLED", ["DD_TRACE_RabbitMQ_ENABLED", "DD_RabbitMQ_ENABLED"]), + "Msmq" => new("DD_TRACE_MSMQ_ENABLED", ["DD_TRACE_Msmq_ENABLED", "DD_Msmq_ENABLED"]), + "Kafka" => new("DD_TRACE_KAFKA_ENABLED", ["DD_TRACE_Kafka_ENABLED", "DD_Kafka_ENABLED"]), + "CosmosDb" => new("DD_TRACE_COSMOSDB_ENABLED", ["DD_TRACE_CosmosDb_ENABLED", "DD_CosmosDb_ENABLED"]), + "AwsS3" => new("DD_TRACE_AWSS3_ENABLED", ["DD_TRACE_AwsS3_ENABLED", "DD_AwsS3_ENABLED"]), + "AwsSdk" => new("DD_TRACE_AWSSDK_ENABLED", ["DD_TRACE_AwsSdk_ENABLED", "DD_AwsSdk_ENABLED"]), + "AwsSqs" => new("DD_TRACE_AWSSQS_ENABLED", ["DD_TRACE_AwsSqs_ENABLED", "DD_AwsSqs_ENABLED"]), + "AwsSns" => new("DD_TRACE_AWSSNS_ENABLED", ["DD_TRACE_AwsSns_ENABLED", "DD_AwsSns_ENABLED"]), + "AwsEventBridge" => new("DD_TRACE_AWSEVENTBRIDGE_ENABLED", ["DD_TRACE_AwsEventBridge_ENABLED", "DD_AwsEventBridge_ENABLED"]), + "AwsStepFunctions" => new("DD_TRACE_AWSSTEPFUNCTIONS_ENABLED", ["DD_TRACE_AwsStepFunctions_ENABLED", "DD_AwsStepFunctions_ENABLED"]), + "AwsLambda" => new("DD_TRACE_AWSLAMBDA_ENABLED", ["DD_TRACE_AwsLambda_ENABLED", "DD_AwsLambda_ENABLED"]), + "ILogger" => new("DD_TRACE_ILOGGER_ENABLED", ["DD_TRACE_ILogger_ENABLED", "DD_ILogger_ENABLED"]), + "Aerospike" => new("DD_TRACE_AEROSPIKE_ENABLED", ["DD_TRACE_Aerospike_ENABLED", "DD_Aerospike_ENABLED"]), + "AzureFunctions" => new("DD_TRACE_AZUREFUNCTIONS_ENABLED", ["DD_TRACE_AzureFunctions_ENABLED", "DD_AzureFunctions_ENABLED"]), + "Couchbase" => new("DD_TRACE_COUCHBASE_ENABLED", ["DD_TRACE_Couchbase_ENABLED", "DD_Couchbase_ENABLED"]), + "MySql" => new("DD_TRACE_MYSQL_ENABLED", ["DD_TRACE_MySql_ENABLED", "DD_MySql_ENABLED"]), + "Npgsql" => new("DD_TRACE_NPGSQL_ENABLED", ["DD_TRACE_Npgsql_ENABLED", "DD_Npgsql_ENABLED"]), + "Oracle" => new("DD_TRACE_ORACLE_ENABLED", ["DD_TRACE_Oracle_ENABLED", "DD_Oracle_ENABLED"]), + "SqlClient" => new("DD_TRACE_SQLCLIENT_ENABLED", ["DD_TRACE_SqlClient_ENABLED", "DD_SqlClient_ENABLED"]), + "Sqlite" => new("DD_TRACE_SQLITE_ENABLED", ["DD_TRACE_Sqlite_ENABLED", "DD_Sqlite_ENABLED"]), + "Serilog" => new("DD_TRACE_SERILOG_ENABLED", ["DD_TRACE_Serilog_ENABLED", "DD_Serilog_ENABLED"]), + "Log4Net" => new("DD_TRACE_LOG4NET_ENABLED", ["DD_TRACE_Log4Net_ENABLED", "DD_Log4Net_ENABLED"]), + "NLog" => new("DD_TRACE_NLOG_ENABLED", ["DD_TRACE_NLog_ENABLED", "DD_NLog_ENABLED"]), + "TraceAnnotations" => new("DD_TRACE_TRACEANNOTATIONS_ENABLED", ["DD_TRACE_TraceAnnotations_ENABLED", "DD_TraceAnnotations_ENABLED"]), + "Grpc" => new("DD_TRACE_GRPC_ENABLED", ["DD_TRACE_Grpc_ENABLED", "DD_Grpc_ENABLED"]), + "Process" => new("DD_TRACE_PROCESS_ENABLED", ["DD_TRACE_Process_ENABLED", "DD_Process_ENABLED"]), + "HashAlgorithm" => new("DD_TRACE_HASHALGORITHM_ENABLED", ["DD_TRACE_HashAlgorithm_ENABLED", "DD_HashAlgorithm_ENABLED"]), + "SymmetricAlgorithm" => new("DD_TRACE_SYMMETRICALGORITHM_ENABLED", ["DD_TRACE_SymmetricAlgorithm_ENABLED", "DD_SymmetricAlgorithm_ENABLED"]), + "OpenTelemetry" => new("DD_TRACE_OPENTELEMETRY_ENABLED", ["DD_TRACE_OpenTelemetry_ENABLED", "DD_OpenTelemetry_ENABLED"]), + "PathTraversal" => new("DD_TRACE_PATHTRAVERSAL_ENABLED", ["DD_TRACE_PathTraversal_ENABLED", "DD_PathTraversal_ENABLED"]), + "Ldap" => new("DD_TRACE_LDAP_ENABLED", ["DD_TRACE_Ldap_ENABLED", "DD_Ldap_ENABLED"]), + "Ssrf" => new("DD_TRACE_SSRF_ENABLED", ["DD_TRACE_Ssrf_ENABLED", "DD_Ssrf_ENABLED"]), + "AwsKinesis" => new("DD_TRACE_AWSKINESIS_ENABLED", ["DD_TRACE_AwsKinesis_ENABLED", "DD_AwsKinesis_ENABLED"]), + "AzureServiceBus" => new("DD_TRACE_AZURESERVICEBUS_ENABLED", ["DD_TRACE_AzureServiceBus_ENABLED", "DD_AzureServiceBus_ENABLED"]), + "SystemRandom" => new("DD_TRACE_SYSTEMRANDOM_ENABLED", ["DD_TRACE_SystemRandom_ENABLED", "DD_SystemRandom_ENABLED"]), + "AwsDynamoDb" => new("DD_TRACE_AWSDYNAMODB_ENABLED", ["DD_TRACE_AwsDynamoDb_ENABLED", "DD_AwsDynamoDb_ENABLED"]), + "HardcodedSecret" => new("DD_TRACE_HARDCODEDSECRET_ENABLED", ["DD_TRACE_HardcodedSecret_ENABLED", "DD_HardcodedSecret_ENABLED"]), + "IbmMq" => new("DD_TRACE_IBMMQ_ENABLED", ["DD_TRACE_IbmMq_ENABLED", "DD_IbmMq_ENABLED"]), + "Remoting" => new("DD_TRACE_REMOTING_ENABLED", ["DD_TRACE_Remoting_ENABLED", "DD_Remoting_ENABLED"]), + "TrustBoundaryViolation" => new("DD_TRACE_TRUSTBOUNDARYVIOLATION_ENABLED", ["DD_TRACE_TrustBoundaryViolation_ENABLED", "DD_TrustBoundaryViolation_ENABLED"]), + "UnvalidatedRedirect" => new("DD_TRACE_UNVALIDATEDREDIRECT_ENABLED", ["DD_TRACE_UnvalidatedRedirect_ENABLED", "DD_UnvalidatedRedirect_ENABLED"]), + "TestPlatformAssemblyResolver" => new("DD_TRACE_TESTPLATFORMASSEMBLYRESOLVER_ENABLED", ["DD_TRACE_TestPlatformAssemblyResolver_ENABLED", "DD_TestPlatformAssemblyResolver_ENABLED"]), + "StackTraceLeak" => new("DD_TRACE_STACKTRACELEAK_ENABLED", ["DD_TRACE_StackTraceLeak_ENABLED", "DD_StackTraceLeak_ENABLED"]), + "XpathInjection" => new("DD_TRACE_XPATHINJECTION_ENABLED", ["DD_TRACE_XpathInjection_ENABLED", "DD_XpathInjection_ENABLED"]), + "ReflectionInjection" => new("DD_TRACE_REFLECTIONINJECTION_ENABLED", ["DD_TRACE_ReflectionInjection_ENABLED", "DD_ReflectionInjection_ENABLED"]), + "Xss" => new("DD_TRACE_XSS_ENABLED", ["DD_TRACE_Xss_ENABLED", "DD_Xss_ENABLED"]), + "NHibernate" => new("DD_TRACE_NHIBERNATE_ENABLED", ["DD_TRACE_NHibernate_ENABLED", "DD_NHibernate_ENABLED"]), + "DotnetTest" => new("DD_TRACE_DOTNETTEST_ENABLED", ["DD_TRACE_DotnetTest_ENABLED", "DD_DotnetTest_ENABLED"]), + "Selenium" => new("DD_TRACE_SELENIUM_ENABLED", ["DD_TRACE_Selenium_ENABLED", "DD_Selenium_ENABLED"]), + "DirectoryListingLeak" => new("DD_TRACE_DIRECTORYLISTINGLEAK_ENABLED", ["DD_TRACE_DirectoryListingLeak_ENABLED", "DD_DirectoryListingLeak_ENABLED"]), + "SessionTimeout" => new("DD_TRACE_SESSIONTIMEOUT_ENABLED", ["DD_TRACE_SessionTimeout_ENABLED", "DD_SessionTimeout_ENABLED"]), + "DatadogTraceManual" => new("DD_TRACE_DATADOGTRACEMANUAL_ENABLED", ["DD_TRACE_DatadogTraceManual_ENABLED", "DD_DatadogTraceManual_ENABLED"]), + "EmailHtmlInjection" => new("DD_TRACE_EMAILHTMLINJECTION_ENABLED", ["DD_TRACE_EmailHtmlInjection_ENABLED", "DD_EmailHtmlInjection_ENABLED"]), + "Protobuf" => new("DD_TRACE_PROTOBUF_ENABLED", ["DD_TRACE_Protobuf_ENABLED", "DD_Protobuf_ENABLED"]), + "AzureEventHubs" => new("DD_TRACE_AZUREEVENTHUBS_ENABLED", ["DD_TRACE_AzureEventHubs_ENABLED", "DD_AzureEventHubs_ENABLED"]), + "DatadogTraceVersionConflict" => new("DD_TRACE_DATADOGTRACEVERSIONCONFLICT_ENABLED", ["DD_TRACE_DatadogTraceVersionConflict_ENABLED", "DD_DatadogTraceVersionConflict_ENABLED"]), + "Hangfire" => new("DD_TRACE_HANGFIRE_ENABLED", ["DD_TRACE_Hangfire_ENABLED", "DD_Hangfire_ENABLED"]), + _ => GetIntegrationEnabledKeysFallback(integrationName) // we should never get here + }; + /// + /// Gets the analytics enabled configuration keys for the specified integration name. + /// Returns a KeyValuePair where Key is the canonical key and Value is an array of aliases. + /// + /// The integration name + /// KeyValuePair with canonical key and aliases + [System.Obsolete(ObsoleteMessage)] + public static System.Collections.Generic.KeyValuePair GetIntegrationAnalyticsEnabledKeys(string integrationName) => + integrationName switch + { + "HttpMessageHandler" => new("DD_TRACE_HTTPMESSAGEHANDLER_ANALYTICS_ENABLED", ["DD_TRACE_HttpMessageHandler_ANALYTICS_ENABLED", "DD_HttpMessageHandler_ANALYTICS_ENABLED"]), + "HttpSocketsHandler" => new("DD_TRACE_HTTPSOCKETSHANDLER_ANALYTICS_ENABLED", ["DD_TRACE_HttpSocketsHandler_ANALYTICS_ENABLED", "DD_HttpSocketsHandler_ANALYTICS_ENABLED"]), + "WinHttpHandler" => new("DD_TRACE_WINHTTPHANDLER_ANALYTICS_ENABLED", ["DD_TRACE_WinHttpHandler_ANALYTICS_ENABLED", "DD_WinHttpHandler_ANALYTICS_ENABLED"]), + "CurlHandler" => new("DD_TRACE_CURLHANDLER_ANALYTICS_ENABLED", ["DD_TRACE_CurlHandler_ANALYTICS_ENABLED", "DD_CurlHandler_ANALYTICS_ENABLED"]), + "AspNetCore" => new("DD_TRACE_ASPNETCORE_ANALYTICS_ENABLED", ["DD_TRACE_AspNetCore_ANALYTICS_ENABLED", "DD_AspNetCore_ANALYTICS_ENABLED"]), + "AdoNet" => new("DD_TRACE_ADONET_ANALYTICS_ENABLED", ["DD_TRACE_AdoNet_ANALYTICS_ENABLED", "DD_AdoNet_ANALYTICS_ENABLED"]), + "AspNet" => new("DD_TRACE_ASPNET_ANALYTICS_ENABLED", ["DD_TRACE_AspNet_ANALYTICS_ENABLED", "DD_AspNet_ANALYTICS_ENABLED"]), + "AspNetMvc" => new("DD_TRACE_ASPNETMVC_ANALYTICS_ENABLED", ["DD_TRACE_AspNetMvc_ANALYTICS_ENABLED", "DD_AspNetMvc_ANALYTICS_ENABLED"]), + "AspNetWebApi2" => new("DD_TRACE_ASPNETWEBAPI2_ANALYTICS_ENABLED", ["DD_TRACE_AspNetWebApi2_ANALYTICS_ENABLED", "DD_AspNetWebApi2_ANALYTICS_ENABLED"]), + "GraphQL" => new("DD_TRACE_GRAPHQL_ANALYTICS_ENABLED", ["DD_TRACE_GraphQL_ANALYTICS_ENABLED", "DD_GraphQL_ANALYTICS_ENABLED"]), + "HotChocolate" => new("DD_TRACE_HOTCHOCOLATE_ANALYTICS_ENABLED", ["DD_TRACE_HotChocolate_ANALYTICS_ENABLED", "DD_HotChocolate_ANALYTICS_ENABLED"]), + "MongoDb" => new("DD_TRACE_MONGODB_ANALYTICS_ENABLED", ["DD_TRACE_MongoDb_ANALYTICS_ENABLED", "DD_MongoDb_ANALYTICS_ENABLED"]), + "XUnit" => new("DD_TRACE_XUNIT_ANALYTICS_ENABLED", ["DD_TRACE_XUnit_ANALYTICS_ENABLED", "DD_XUnit_ANALYTICS_ENABLED"]), + "NUnit" => new("DD_TRACE_NUNIT_ANALYTICS_ENABLED", ["DD_TRACE_NUnit_ANALYTICS_ENABLED", "DD_NUnit_ANALYTICS_ENABLED"]), + "MsTestV2" => new("DD_TRACE_MSTESTV2_ANALYTICS_ENABLED", ["DD_TRACE_MsTestV2_ANALYTICS_ENABLED", "DD_MsTestV2_ANALYTICS_ENABLED"]), + "Wcf" => new("DD_TRACE_WCF_ANALYTICS_ENABLED", ["DD_TRACE_Wcf_ANALYTICS_ENABLED", "DD_Wcf_ANALYTICS_ENABLED"]), + "WebRequest" => new("DD_TRACE_WEBREQUEST_ANALYTICS_ENABLED", ["DD_TRACE_WebRequest_ANALYTICS_ENABLED", "DD_WebRequest_ANALYTICS_ENABLED"]), + "ElasticsearchNet" => new("DD_TRACE_ELASTICSEARCHNET_ANALYTICS_ENABLED", ["DD_TRACE_ElasticsearchNet_ANALYTICS_ENABLED", "DD_ElasticsearchNet_ANALYTICS_ENABLED"]), + "ServiceStackRedis" => new("DD_TRACE_SERVICESTACKREDIS_ANALYTICS_ENABLED", ["DD_TRACE_ServiceStackRedis_ANALYTICS_ENABLED", "DD_ServiceStackRedis_ANALYTICS_ENABLED"]), + "StackExchangeRedis" => new("DD_TRACE_STACKEXCHANGEREDIS_ANALYTICS_ENABLED", ["DD_TRACE_StackExchangeRedis_ANALYTICS_ENABLED", "DD_StackExchangeRedis_ANALYTICS_ENABLED"]), + "ServiceRemoting" => new("DD_TRACE_SERVICEREMOTING_ANALYTICS_ENABLED", ["DD_TRACE_ServiceRemoting_ANALYTICS_ENABLED", "DD_ServiceRemoting_ANALYTICS_ENABLED"]), + "RabbitMQ" => new("DD_TRACE_RABBITMQ_ANALYTICS_ENABLED", ["DD_TRACE_RabbitMQ_ANALYTICS_ENABLED", "DD_RabbitMQ_ANALYTICS_ENABLED"]), + "Msmq" => new("DD_TRACE_MSMQ_ANALYTICS_ENABLED", ["DD_TRACE_Msmq_ANALYTICS_ENABLED", "DD_Msmq_ANALYTICS_ENABLED"]), + "Kafka" => new("DD_TRACE_KAFKA_ANALYTICS_ENABLED", ["DD_TRACE_Kafka_ANALYTICS_ENABLED", "DD_Kafka_ANALYTICS_ENABLED"]), + "CosmosDb" => new("DD_TRACE_COSMOSDB_ANALYTICS_ENABLED", ["DD_TRACE_CosmosDb_ANALYTICS_ENABLED", "DD_CosmosDb_ANALYTICS_ENABLED"]), + "AwsS3" => new("DD_TRACE_AWSS3_ANALYTICS_ENABLED", ["DD_TRACE_AwsS3_ANALYTICS_ENABLED", "DD_AwsS3_ANALYTICS_ENABLED"]), + "AwsSdk" => new("DD_TRACE_AWSSDK_ANALYTICS_ENABLED", ["DD_TRACE_AwsSdk_ANALYTICS_ENABLED", "DD_AwsSdk_ANALYTICS_ENABLED"]), + "AwsSqs" => new("DD_TRACE_AWSSQS_ANALYTICS_ENABLED", ["DD_TRACE_AwsSqs_ANALYTICS_ENABLED", "DD_AwsSqs_ANALYTICS_ENABLED"]), + "AwsSns" => new("DD_TRACE_AWSSNS_ANALYTICS_ENABLED", ["DD_TRACE_AwsSns_ANALYTICS_ENABLED", "DD_AwsSns_ANALYTICS_ENABLED"]), + "AwsEventBridge" => new("DD_TRACE_AWSEVENTBRIDGE_ANALYTICS_ENABLED", ["DD_TRACE_AwsEventBridge_ANALYTICS_ENABLED", "DD_AwsEventBridge_ANALYTICS_ENABLED"]), + "AwsStepFunctions" => new("DD_TRACE_AWSSTEPFUNCTIONS_ANALYTICS_ENABLED", ["DD_TRACE_AwsStepFunctions_ANALYTICS_ENABLED", "DD_AwsStepFunctions_ANALYTICS_ENABLED"]), + "AwsLambda" => new("DD_TRACE_AWSLAMBDA_ANALYTICS_ENABLED", ["DD_TRACE_AwsLambda_ANALYTICS_ENABLED", "DD_AwsLambda_ANALYTICS_ENABLED"]), + "ILogger" => new("DD_TRACE_ILOGGER_ANALYTICS_ENABLED", ["DD_TRACE_ILogger_ANALYTICS_ENABLED", "DD_ILogger_ANALYTICS_ENABLED"]), + "Aerospike" => new("DD_TRACE_AEROSPIKE_ANALYTICS_ENABLED", ["DD_TRACE_Aerospike_ANALYTICS_ENABLED", "DD_Aerospike_ANALYTICS_ENABLED"]), + "AzureFunctions" => new("DD_TRACE_AZUREFUNCTIONS_ANALYTICS_ENABLED", ["DD_TRACE_AzureFunctions_ANALYTICS_ENABLED", "DD_AzureFunctions_ANALYTICS_ENABLED"]), + "Couchbase" => new("DD_TRACE_COUCHBASE_ANALYTICS_ENABLED", ["DD_TRACE_Couchbase_ANALYTICS_ENABLED", "DD_Couchbase_ANALYTICS_ENABLED"]), + "MySql" => new("DD_TRACE_MYSQL_ANALYTICS_ENABLED", ["DD_TRACE_MySql_ANALYTICS_ENABLED", "DD_MySql_ANALYTICS_ENABLED"]), + "Npgsql" => new("DD_TRACE_NPGSQL_ANALYTICS_ENABLED", ["DD_TRACE_Npgsql_ANALYTICS_ENABLED", "DD_Npgsql_ANALYTICS_ENABLED"]), + "Oracle" => new("DD_TRACE_ORACLE_ANALYTICS_ENABLED", ["DD_TRACE_Oracle_ANALYTICS_ENABLED", "DD_Oracle_ANALYTICS_ENABLED"]), + "SqlClient" => new("DD_TRACE_SQLCLIENT_ANALYTICS_ENABLED", ["DD_TRACE_SqlClient_ANALYTICS_ENABLED", "DD_SqlClient_ANALYTICS_ENABLED"]), + "Sqlite" => new("DD_TRACE_SQLITE_ANALYTICS_ENABLED", ["DD_TRACE_Sqlite_ANALYTICS_ENABLED", "DD_Sqlite_ANALYTICS_ENABLED"]), + "Serilog" => new("DD_TRACE_SERILOG_ANALYTICS_ENABLED", ["DD_TRACE_Serilog_ANALYTICS_ENABLED", "DD_Serilog_ANALYTICS_ENABLED"]), + "Log4Net" => new("DD_TRACE_LOG4NET_ANALYTICS_ENABLED", ["DD_TRACE_Log4Net_ANALYTICS_ENABLED", "DD_Log4Net_ANALYTICS_ENABLED"]), + "NLog" => new("DD_TRACE_NLOG_ANALYTICS_ENABLED", ["DD_TRACE_NLog_ANALYTICS_ENABLED", "DD_NLog_ANALYTICS_ENABLED"]), + "TraceAnnotations" => new("DD_TRACE_TRACEANNOTATIONS_ANALYTICS_ENABLED", ["DD_TRACE_TraceAnnotations_ANALYTICS_ENABLED", "DD_TraceAnnotations_ANALYTICS_ENABLED"]), + "Grpc" => new("DD_TRACE_GRPC_ANALYTICS_ENABLED", ["DD_TRACE_Grpc_ANALYTICS_ENABLED", "DD_Grpc_ANALYTICS_ENABLED"]), + "Process" => new("DD_TRACE_PROCESS_ANALYTICS_ENABLED", ["DD_TRACE_Process_ANALYTICS_ENABLED", "DD_Process_ANALYTICS_ENABLED"]), + "HashAlgorithm" => new("DD_TRACE_HASHALGORITHM_ANALYTICS_ENABLED", ["DD_TRACE_HashAlgorithm_ANALYTICS_ENABLED", "DD_HashAlgorithm_ANALYTICS_ENABLED"]), + "SymmetricAlgorithm" => new("DD_TRACE_SYMMETRICALGORITHM_ANALYTICS_ENABLED", ["DD_TRACE_SymmetricAlgorithm_ANALYTICS_ENABLED", "DD_SymmetricAlgorithm_ANALYTICS_ENABLED"]), + "OpenTelemetry" => new("DD_TRACE_OPENTELEMETRY_ANALYTICS_ENABLED", ["DD_TRACE_OpenTelemetry_ANALYTICS_ENABLED", "DD_OpenTelemetry_ANALYTICS_ENABLED"]), + "PathTraversal" => new("DD_TRACE_PATHTRAVERSAL_ANALYTICS_ENABLED", ["DD_TRACE_PathTraversal_ANALYTICS_ENABLED", "DD_PathTraversal_ANALYTICS_ENABLED"]), + "Ldap" => new("DD_TRACE_LDAP_ANALYTICS_ENABLED", ["DD_TRACE_Ldap_ANALYTICS_ENABLED", "DD_Ldap_ANALYTICS_ENABLED"]), + "Ssrf" => new("DD_TRACE_SSRF_ANALYTICS_ENABLED", ["DD_TRACE_Ssrf_ANALYTICS_ENABLED", "DD_Ssrf_ANALYTICS_ENABLED"]), + "AwsKinesis" => new("DD_TRACE_AWSKINESIS_ANALYTICS_ENABLED", ["DD_TRACE_AwsKinesis_ANALYTICS_ENABLED", "DD_AwsKinesis_ANALYTICS_ENABLED"]), + "AzureServiceBus" => new("DD_TRACE_AZURESERVICEBUS_ANALYTICS_ENABLED", ["DD_TRACE_AzureServiceBus_ANALYTICS_ENABLED", "DD_AzureServiceBus_ANALYTICS_ENABLED"]), + "SystemRandom" => new("DD_TRACE_SYSTEMRANDOM_ANALYTICS_ENABLED", ["DD_TRACE_SystemRandom_ANALYTICS_ENABLED", "DD_SystemRandom_ANALYTICS_ENABLED"]), + "AwsDynamoDb" => new("DD_TRACE_AWSDYNAMODB_ANALYTICS_ENABLED", ["DD_TRACE_AwsDynamoDb_ANALYTICS_ENABLED", "DD_AwsDynamoDb_ANALYTICS_ENABLED"]), + "HardcodedSecret" => new("DD_TRACE_HARDCODEDSECRET_ANALYTICS_ENABLED", ["DD_TRACE_HardcodedSecret_ANALYTICS_ENABLED", "DD_HardcodedSecret_ANALYTICS_ENABLED"]), + "IbmMq" => new("DD_TRACE_IBMMQ_ANALYTICS_ENABLED", ["DD_TRACE_IbmMq_ANALYTICS_ENABLED", "DD_IbmMq_ANALYTICS_ENABLED"]), + "Remoting" => new("DD_TRACE_REMOTING_ANALYTICS_ENABLED", ["DD_TRACE_Remoting_ANALYTICS_ENABLED", "DD_Remoting_ANALYTICS_ENABLED"]), + "TrustBoundaryViolation" => new("DD_TRACE_TRUSTBOUNDARYVIOLATION_ANALYTICS_ENABLED", ["DD_TRACE_TrustBoundaryViolation_ANALYTICS_ENABLED", "DD_TrustBoundaryViolation_ANALYTICS_ENABLED"]), + "UnvalidatedRedirect" => new("DD_TRACE_UNVALIDATEDREDIRECT_ANALYTICS_ENABLED", ["DD_TRACE_UnvalidatedRedirect_ANALYTICS_ENABLED", "DD_UnvalidatedRedirect_ANALYTICS_ENABLED"]), + "TestPlatformAssemblyResolver" => new("DD_TRACE_TESTPLATFORMASSEMBLYRESOLVER_ANALYTICS_ENABLED", ["DD_TRACE_TestPlatformAssemblyResolver_ANALYTICS_ENABLED", "DD_TestPlatformAssemblyResolver_ANALYTICS_ENABLED"]), + "StackTraceLeak" => new("DD_TRACE_STACKTRACELEAK_ANALYTICS_ENABLED", ["DD_TRACE_StackTraceLeak_ANALYTICS_ENABLED", "DD_StackTraceLeak_ANALYTICS_ENABLED"]), + "XpathInjection" => new("DD_TRACE_XPATHINJECTION_ANALYTICS_ENABLED", ["DD_TRACE_XpathInjection_ANALYTICS_ENABLED", "DD_XpathInjection_ANALYTICS_ENABLED"]), + "ReflectionInjection" => new("DD_TRACE_REFLECTIONINJECTION_ANALYTICS_ENABLED", ["DD_TRACE_ReflectionInjection_ANALYTICS_ENABLED", "DD_ReflectionInjection_ANALYTICS_ENABLED"]), + "Xss" => new("DD_TRACE_XSS_ANALYTICS_ENABLED", ["DD_TRACE_Xss_ANALYTICS_ENABLED", "DD_Xss_ANALYTICS_ENABLED"]), + "NHibernate" => new("DD_TRACE_NHIBERNATE_ANALYTICS_ENABLED", ["DD_TRACE_NHibernate_ANALYTICS_ENABLED", "DD_NHibernate_ANALYTICS_ENABLED"]), + "DotnetTest" => new("DD_TRACE_DOTNETTEST_ANALYTICS_ENABLED", ["DD_TRACE_DotnetTest_ANALYTICS_ENABLED", "DD_DotnetTest_ANALYTICS_ENABLED"]), + "Selenium" => new("DD_TRACE_SELENIUM_ANALYTICS_ENABLED", ["DD_TRACE_Selenium_ANALYTICS_ENABLED", "DD_Selenium_ANALYTICS_ENABLED"]), + "DirectoryListingLeak" => new("DD_TRACE_DIRECTORYLISTINGLEAK_ANALYTICS_ENABLED", ["DD_TRACE_DirectoryListingLeak_ANALYTICS_ENABLED", "DD_DirectoryListingLeak_ANALYTICS_ENABLED"]), + "SessionTimeout" => new("DD_TRACE_SESSIONTIMEOUT_ANALYTICS_ENABLED", ["DD_TRACE_SessionTimeout_ANALYTICS_ENABLED", "DD_SessionTimeout_ANALYTICS_ENABLED"]), + "DatadogTraceManual" => new("DD_TRACE_DATADOGTRACEMANUAL_ANALYTICS_ENABLED", ["DD_TRACE_DatadogTraceManual_ANALYTICS_ENABLED", "DD_DatadogTraceManual_ANALYTICS_ENABLED"]), + "EmailHtmlInjection" => new("DD_TRACE_EMAILHTMLINJECTION_ANALYTICS_ENABLED", ["DD_TRACE_EmailHtmlInjection_ANALYTICS_ENABLED", "DD_EmailHtmlInjection_ANALYTICS_ENABLED"]), + "Protobuf" => new("DD_TRACE_PROTOBUF_ANALYTICS_ENABLED", ["DD_TRACE_Protobuf_ANALYTICS_ENABLED", "DD_Protobuf_ANALYTICS_ENABLED"]), + "AzureEventHubs" => new("DD_TRACE_AZUREEVENTHUBS_ANALYTICS_ENABLED", ["DD_TRACE_AzureEventHubs_ANALYTICS_ENABLED", "DD_AzureEventHubs_ANALYTICS_ENABLED"]), + "DatadogTraceVersionConflict" => new("DD_TRACE_DATADOGTRACEVERSIONCONFLICT_ANALYTICS_ENABLED", ["DD_TRACE_DatadogTraceVersionConflict_ANALYTICS_ENABLED", "DD_DatadogTraceVersionConflict_ANALYTICS_ENABLED"]), + "Hangfire" => new("DD_TRACE_HANGFIRE_ANALYTICS_ENABLED", ["DD_TRACE_Hangfire_ANALYTICS_ENABLED", "DD_Hangfire_ANALYTICS_ENABLED"]), + _ => GetIntegrationAnalyticsEnabledKeysFallback(integrationName) // we should never get here + }; + /// + /// Gets the analytics sample rate configuration keys for the specified integration name. + /// Returns a KeyValuePair where Key is the canonical key and Value is an array of aliases. + /// + /// The integration name + /// KeyValuePair with canonical key and aliases + [System.Obsolete(ObsoleteMessage)] + public static System.Collections.Generic.KeyValuePair GetIntegrationAnalyticsSampleRateKeys(string integrationName) => + integrationName switch + { + "HttpMessageHandler" => new("DD_TRACE_HTTPMESSAGEHANDLER_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_HttpMessageHandler_ANALYTICS_SAMPLE_RATE", "DD_HttpMessageHandler_ANALYTICS_SAMPLE_RATE"]), + "HttpSocketsHandler" => new("DD_TRACE_HTTPSOCKETSHANDLER_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_HttpSocketsHandler_ANALYTICS_SAMPLE_RATE", "DD_HttpSocketsHandler_ANALYTICS_SAMPLE_RATE"]), + "WinHttpHandler" => new("DD_TRACE_WINHTTPHANDLER_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_WinHttpHandler_ANALYTICS_SAMPLE_RATE", "DD_WinHttpHandler_ANALYTICS_SAMPLE_RATE"]), + "CurlHandler" => new("DD_TRACE_CURLHANDLER_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_CurlHandler_ANALYTICS_SAMPLE_RATE", "DD_CurlHandler_ANALYTICS_SAMPLE_RATE"]), + "AspNetCore" => new("DD_TRACE_ASPNETCORE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AspNetCore_ANALYTICS_SAMPLE_RATE", "DD_AspNetCore_ANALYTICS_SAMPLE_RATE"]), + "AdoNet" => new("DD_TRACE_ADONET_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AdoNet_ANALYTICS_SAMPLE_RATE", "DD_AdoNet_ANALYTICS_SAMPLE_RATE"]), + "AspNet" => new("DD_TRACE_ASPNET_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AspNet_ANALYTICS_SAMPLE_RATE", "DD_AspNet_ANALYTICS_SAMPLE_RATE"]), + "AspNetMvc" => new("DD_TRACE_ASPNETMVC_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AspNetMvc_ANALYTICS_SAMPLE_RATE", "DD_AspNetMvc_ANALYTICS_SAMPLE_RATE"]), + "AspNetWebApi2" => new("DD_TRACE_ASPNETWEBAPI2_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AspNetWebApi2_ANALYTICS_SAMPLE_RATE", "DD_AspNetWebApi2_ANALYTICS_SAMPLE_RATE"]), + "GraphQL" => new("DD_TRACE_GRAPHQL_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_GraphQL_ANALYTICS_SAMPLE_RATE", "DD_GraphQL_ANALYTICS_SAMPLE_RATE"]), + "HotChocolate" => new("DD_TRACE_HOTCHOCOLATE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_HotChocolate_ANALYTICS_SAMPLE_RATE", "DD_HotChocolate_ANALYTICS_SAMPLE_RATE"]), + "MongoDb" => new("DD_TRACE_MONGODB_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_MongoDb_ANALYTICS_SAMPLE_RATE", "DD_MongoDb_ANALYTICS_SAMPLE_RATE"]), + "XUnit" => new("DD_TRACE_XUNIT_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_XUnit_ANALYTICS_SAMPLE_RATE", "DD_XUnit_ANALYTICS_SAMPLE_RATE"]), + "NUnit" => new("DD_TRACE_NUNIT_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_NUnit_ANALYTICS_SAMPLE_RATE", "DD_NUnit_ANALYTICS_SAMPLE_RATE"]), + "MsTestV2" => new("DD_TRACE_MSTESTV2_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_MsTestV2_ANALYTICS_SAMPLE_RATE", "DD_MsTestV2_ANALYTICS_SAMPLE_RATE"]), + "Wcf" => new("DD_TRACE_WCF_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Wcf_ANALYTICS_SAMPLE_RATE", "DD_Wcf_ANALYTICS_SAMPLE_RATE"]), + "WebRequest" => new("DD_TRACE_WEBREQUEST_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_WebRequest_ANALYTICS_SAMPLE_RATE", "DD_WebRequest_ANALYTICS_SAMPLE_RATE"]), + "ElasticsearchNet" => new("DD_TRACE_ELASTICSEARCHNET_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_ElasticsearchNet_ANALYTICS_SAMPLE_RATE", "DD_ElasticsearchNet_ANALYTICS_SAMPLE_RATE"]), + "ServiceStackRedis" => new("DD_TRACE_SERVICESTACKREDIS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_ServiceStackRedis_ANALYTICS_SAMPLE_RATE", "DD_ServiceStackRedis_ANALYTICS_SAMPLE_RATE"]), + "StackExchangeRedis" => new("DD_TRACE_STACKEXCHANGEREDIS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_StackExchangeRedis_ANALYTICS_SAMPLE_RATE", "DD_StackExchangeRedis_ANALYTICS_SAMPLE_RATE"]), + "ServiceRemoting" => new("DD_TRACE_SERVICEREMOTING_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_ServiceRemoting_ANALYTICS_SAMPLE_RATE", "DD_ServiceRemoting_ANALYTICS_SAMPLE_RATE"]), + "RabbitMQ" => new("DD_TRACE_RABBITMQ_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_RabbitMQ_ANALYTICS_SAMPLE_RATE", "DD_RabbitMQ_ANALYTICS_SAMPLE_RATE"]), + "Msmq" => new("DD_TRACE_MSMQ_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Msmq_ANALYTICS_SAMPLE_RATE", "DD_Msmq_ANALYTICS_SAMPLE_RATE"]), + "Kafka" => new("DD_TRACE_KAFKA_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Kafka_ANALYTICS_SAMPLE_RATE", "DD_Kafka_ANALYTICS_SAMPLE_RATE"]), + "CosmosDb" => new("DD_TRACE_COSMOSDB_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_CosmosDb_ANALYTICS_SAMPLE_RATE", "DD_CosmosDb_ANALYTICS_SAMPLE_RATE"]), + "AwsS3" => new("DD_TRACE_AWSS3_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsS3_ANALYTICS_SAMPLE_RATE", "DD_AwsS3_ANALYTICS_SAMPLE_RATE"]), + "AwsSdk" => new("DD_TRACE_AWSSDK_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsSdk_ANALYTICS_SAMPLE_RATE", "DD_AwsSdk_ANALYTICS_SAMPLE_RATE"]), + "AwsSqs" => new("DD_TRACE_AWSSQS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsSqs_ANALYTICS_SAMPLE_RATE", "DD_AwsSqs_ANALYTICS_SAMPLE_RATE"]), + "AwsSns" => new("DD_TRACE_AWSSNS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsSns_ANALYTICS_SAMPLE_RATE", "DD_AwsSns_ANALYTICS_SAMPLE_RATE"]), + "AwsEventBridge" => new("DD_TRACE_AWSEVENTBRIDGE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsEventBridge_ANALYTICS_SAMPLE_RATE", "DD_AwsEventBridge_ANALYTICS_SAMPLE_RATE"]), + "AwsStepFunctions" => new("DD_TRACE_AWSSTEPFUNCTIONS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsStepFunctions_ANALYTICS_SAMPLE_RATE", "DD_AwsStepFunctions_ANALYTICS_SAMPLE_RATE"]), + "AwsLambda" => new("DD_TRACE_AWSLAMBDA_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsLambda_ANALYTICS_SAMPLE_RATE", "DD_AwsLambda_ANALYTICS_SAMPLE_RATE"]), + "ILogger" => new("DD_TRACE_ILOGGER_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_ILogger_ANALYTICS_SAMPLE_RATE", "DD_ILogger_ANALYTICS_SAMPLE_RATE"]), + "Aerospike" => new("DD_TRACE_AEROSPIKE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Aerospike_ANALYTICS_SAMPLE_RATE", "DD_Aerospike_ANALYTICS_SAMPLE_RATE"]), + "AzureFunctions" => new("DD_TRACE_AZUREFUNCTIONS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AzureFunctions_ANALYTICS_SAMPLE_RATE", "DD_AzureFunctions_ANALYTICS_SAMPLE_RATE"]), + "Couchbase" => new("DD_TRACE_COUCHBASE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Couchbase_ANALYTICS_SAMPLE_RATE", "DD_Couchbase_ANALYTICS_SAMPLE_RATE"]), + "MySql" => new("DD_TRACE_MYSQL_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_MySql_ANALYTICS_SAMPLE_RATE", "DD_MySql_ANALYTICS_SAMPLE_RATE"]), + "Npgsql" => new("DD_TRACE_NPGSQL_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Npgsql_ANALYTICS_SAMPLE_RATE", "DD_Npgsql_ANALYTICS_SAMPLE_RATE"]), + "Oracle" => new("DD_TRACE_ORACLE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Oracle_ANALYTICS_SAMPLE_RATE", "DD_Oracle_ANALYTICS_SAMPLE_RATE"]), + "SqlClient" => new("DD_TRACE_SQLCLIENT_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_SqlClient_ANALYTICS_SAMPLE_RATE", "DD_SqlClient_ANALYTICS_SAMPLE_RATE"]), + "Sqlite" => new("DD_TRACE_SQLITE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Sqlite_ANALYTICS_SAMPLE_RATE", "DD_Sqlite_ANALYTICS_SAMPLE_RATE"]), + "Serilog" => new("DD_TRACE_SERILOG_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Serilog_ANALYTICS_SAMPLE_RATE", "DD_Serilog_ANALYTICS_SAMPLE_RATE"]), + "Log4Net" => new("DD_TRACE_LOG4NET_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Log4Net_ANALYTICS_SAMPLE_RATE", "DD_Log4Net_ANALYTICS_SAMPLE_RATE"]), + "NLog" => new("DD_TRACE_NLOG_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_NLog_ANALYTICS_SAMPLE_RATE", "DD_NLog_ANALYTICS_SAMPLE_RATE"]), + "TraceAnnotations" => new("DD_TRACE_TRACEANNOTATIONS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_TraceAnnotations_ANALYTICS_SAMPLE_RATE", "DD_TraceAnnotations_ANALYTICS_SAMPLE_RATE"]), + "Grpc" => new("DD_TRACE_GRPC_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Grpc_ANALYTICS_SAMPLE_RATE", "DD_Grpc_ANALYTICS_SAMPLE_RATE"]), + "Process" => new("DD_TRACE_PROCESS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Process_ANALYTICS_SAMPLE_RATE", "DD_Process_ANALYTICS_SAMPLE_RATE"]), + "HashAlgorithm" => new("DD_TRACE_HASHALGORITHM_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_HashAlgorithm_ANALYTICS_SAMPLE_RATE", "DD_HashAlgorithm_ANALYTICS_SAMPLE_RATE"]), + "SymmetricAlgorithm" => new("DD_TRACE_SYMMETRICALGORITHM_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_SymmetricAlgorithm_ANALYTICS_SAMPLE_RATE", "DD_SymmetricAlgorithm_ANALYTICS_SAMPLE_RATE"]), + "OpenTelemetry" => new("DD_TRACE_OPENTELEMETRY_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_OpenTelemetry_ANALYTICS_SAMPLE_RATE", "DD_OpenTelemetry_ANALYTICS_SAMPLE_RATE"]), + "PathTraversal" => new("DD_TRACE_PATHTRAVERSAL_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_PathTraversal_ANALYTICS_SAMPLE_RATE", "DD_PathTraversal_ANALYTICS_SAMPLE_RATE"]), + "Ldap" => new("DD_TRACE_LDAP_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Ldap_ANALYTICS_SAMPLE_RATE", "DD_Ldap_ANALYTICS_SAMPLE_RATE"]), + "Ssrf" => new("DD_TRACE_SSRF_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Ssrf_ANALYTICS_SAMPLE_RATE", "DD_Ssrf_ANALYTICS_SAMPLE_RATE"]), + "AwsKinesis" => new("DD_TRACE_AWSKINESIS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsKinesis_ANALYTICS_SAMPLE_RATE", "DD_AwsKinesis_ANALYTICS_SAMPLE_RATE"]), + "AzureServiceBus" => new("DD_TRACE_AZURESERVICEBUS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AzureServiceBus_ANALYTICS_SAMPLE_RATE", "DD_AzureServiceBus_ANALYTICS_SAMPLE_RATE"]), + "SystemRandom" => new("DD_TRACE_SYSTEMRANDOM_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_SystemRandom_ANALYTICS_SAMPLE_RATE", "DD_SystemRandom_ANALYTICS_SAMPLE_RATE"]), + "AwsDynamoDb" => new("DD_TRACE_AWSDYNAMODB_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsDynamoDb_ANALYTICS_SAMPLE_RATE", "DD_AwsDynamoDb_ANALYTICS_SAMPLE_RATE"]), + "HardcodedSecret" => new("DD_TRACE_HARDCODEDSECRET_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_HardcodedSecret_ANALYTICS_SAMPLE_RATE", "DD_HardcodedSecret_ANALYTICS_SAMPLE_RATE"]), + "IbmMq" => new("DD_TRACE_IBMMQ_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_IbmMq_ANALYTICS_SAMPLE_RATE", "DD_IbmMq_ANALYTICS_SAMPLE_RATE"]), + "Remoting" => new("DD_TRACE_REMOTING_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Remoting_ANALYTICS_SAMPLE_RATE", "DD_Remoting_ANALYTICS_SAMPLE_RATE"]), + "TrustBoundaryViolation" => new("DD_TRACE_TRUSTBOUNDARYVIOLATION_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_TrustBoundaryViolation_ANALYTICS_SAMPLE_RATE", "DD_TrustBoundaryViolation_ANALYTICS_SAMPLE_RATE"]), + "UnvalidatedRedirect" => new("DD_TRACE_UNVALIDATEDREDIRECT_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_UnvalidatedRedirect_ANALYTICS_SAMPLE_RATE", "DD_UnvalidatedRedirect_ANALYTICS_SAMPLE_RATE"]), + "TestPlatformAssemblyResolver" => new("DD_TRACE_TESTPLATFORMASSEMBLYRESOLVER_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_TestPlatformAssemblyResolver_ANALYTICS_SAMPLE_RATE", "DD_TestPlatformAssemblyResolver_ANALYTICS_SAMPLE_RATE"]), + "StackTraceLeak" => new("DD_TRACE_STACKTRACELEAK_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_StackTraceLeak_ANALYTICS_SAMPLE_RATE", "DD_StackTraceLeak_ANALYTICS_SAMPLE_RATE"]), + "XpathInjection" => new("DD_TRACE_XPATHINJECTION_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_XpathInjection_ANALYTICS_SAMPLE_RATE", "DD_XpathInjection_ANALYTICS_SAMPLE_RATE"]), + "ReflectionInjection" => new("DD_TRACE_REFLECTIONINJECTION_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_ReflectionInjection_ANALYTICS_SAMPLE_RATE", "DD_ReflectionInjection_ANALYTICS_SAMPLE_RATE"]), + "Xss" => new("DD_TRACE_XSS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Xss_ANALYTICS_SAMPLE_RATE", "DD_Xss_ANALYTICS_SAMPLE_RATE"]), + "NHibernate" => new("DD_TRACE_NHIBERNATE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_NHibernate_ANALYTICS_SAMPLE_RATE", "DD_NHibernate_ANALYTICS_SAMPLE_RATE"]), + "DotnetTest" => new("DD_TRACE_DOTNETTEST_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_DotnetTest_ANALYTICS_SAMPLE_RATE", "DD_DotnetTest_ANALYTICS_SAMPLE_RATE"]), + "Selenium" => new("DD_TRACE_SELENIUM_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Selenium_ANALYTICS_SAMPLE_RATE", "DD_Selenium_ANALYTICS_SAMPLE_RATE"]), + "DirectoryListingLeak" => new("DD_TRACE_DIRECTORYLISTINGLEAK_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_DirectoryListingLeak_ANALYTICS_SAMPLE_RATE", "DD_DirectoryListingLeak_ANALYTICS_SAMPLE_RATE"]), + "SessionTimeout" => new("DD_TRACE_SESSIONTIMEOUT_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_SessionTimeout_ANALYTICS_SAMPLE_RATE", "DD_SessionTimeout_ANALYTICS_SAMPLE_RATE"]), + "DatadogTraceManual" => new("DD_TRACE_DATADOGTRACEMANUAL_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_DatadogTraceManual_ANALYTICS_SAMPLE_RATE", "DD_DatadogTraceManual_ANALYTICS_SAMPLE_RATE"]), + "EmailHtmlInjection" => new("DD_TRACE_EMAILHTMLINJECTION_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_EmailHtmlInjection_ANALYTICS_SAMPLE_RATE", "DD_EmailHtmlInjection_ANALYTICS_SAMPLE_RATE"]), + "Protobuf" => new("DD_TRACE_PROTOBUF_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Protobuf_ANALYTICS_SAMPLE_RATE", "DD_Protobuf_ANALYTICS_SAMPLE_RATE"]), + "AzureEventHubs" => new("DD_TRACE_AZUREEVENTHUBS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AzureEventHubs_ANALYTICS_SAMPLE_RATE", "DD_AzureEventHubs_ANALYTICS_SAMPLE_RATE"]), + "DatadogTraceVersionConflict" => new("DD_TRACE_DATADOGTRACEVERSIONCONFLICT_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_DatadogTraceVersionConflict_ANALYTICS_SAMPLE_RATE", "DD_DatadogTraceVersionConflict_ANALYTICS_SAMPLE_RATE"]), + "Hangfire" => new("DD_TRACE_HANGFIRE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Hangfire_ANALYTICS_SAMPLE_RATE", "DD_Hangfire_ANALYTICS_SAMPLE_RATE"]), + _ => GetIntegrationAnalyticsSampleRateKeysFallback(integrationName) // we should never get here + }; + + private static System.Collections.Generic.KeyValuePair GetIntegrationEnabledKeysFallback(string integrationName) => + new(string.Format("DD_TRACE_{0}_ENABLED", integrationName.ToUpperInvariant()), + [ + string.Format("DD_TRACE_{0}_ENABLED", integrationName), + $"DD_{integrationName}_ENABLED" + ]); + + private static System.Collections.Generic.KeyValuePair GetIntegrationAnalyticsEnabledKeysFallback(string integrationName) => + new(string.Format("DD_TRACE_{0}_ANALYTICS_ENABLED", integrationName.ToUpperInvariant()), + [ + string.Format("DD_TRACE_{0}_ANALYTICS_ENABLED", integrationName), + $"DD_{integrationName}_ANALYTICS_ENABLED" + ]); + + private static System.Collections.Generic.KeyValuePair GetIntegrationAnalyticsSampleRateKeysFallback(string integrationName) => + new(string.Format("DD_TRACE_{0}_ANALYTICS_SAMPLE_RATE", integrationName.ToUpperInvariant()), + [ + string.Format("DD_TRACE_{0}_ANALYTICS_SAMPLE_RATE", integrationName), + $"DD_{integrationName}_ANALYTICS_SAMPLE_RATE" + ]); + } +} diff --git a/tracer/src/Datadog.Trace/Generated/netcoreapp3.1/Datadog.Trace.SourceGenerators/EnumExtensionsGenerator/IntegrationNameToKeys.g.cs b/tracer/src/Datadog.Trace/Generated/netcoreapp3.1/Datadog.Trace.SourceGenerators/EnumExtensionsGenerator/IntegrationNameToKeys.g.cs new file mode 100644 index 000000000000..1efa701f825a --- /dev/null +++ b/tracer/src/Datadog.Trace/Generated/netcoreapp3.1/Datadog.Trace.SourceGenerators/EnumExtensionsGenerator/IntegrationNameToKeys.g.cs @@ -0,0 +1,551 @@ +// +// Unless explicitly stated otherwise all files in this repository are licensed under the Apache 2 License. +// This product includes software developed at Datadog (https://www.datadoghq.com/). Copyright 2017 Datadog, Inc. +// +// + +#nullable enable + + +namespace Datadog.Trace.Configuration +{ + /// + /// Generated mapping of integration names to their configuration keys. + /// + internal static partial class IntegrationNameToKeys + { + private const string ObsoleteMessage = DeprecationMessages.AppAnalytics; + + /// + /// All integration enabled keys (canonical + aliases). + /// + [Datadog.Trace.SourceGenerators.TestingOnly] + public static string[] GetAllIntegrationEnabledKeys() => + [ + "DD_TRACE_HTTPMESSAGEHANDLER_ENABLED", "DD_TRACE_HttpMessageHandler_ENABLED", "DD_HttpMessageHandler_ENABLED", + "DD_TRACE_HTTPMESSAGEHANDLER_ANALYTICS_ENABLED", "DD_TRACE_HttpMessageHandler_ANALYTICS_ENABLED", "DD_HttpMessageHandler_ANALYTICS_ENABLED", + "DD_TRACE_HTTPMESSAGEHANDLER_ANALYTICS_SAMPLE_RATE", "DD_TRACE_HttpMessageHandler_ANALYTICS_SAMPLE_RATE", "DD_HttpMessageHandler_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_HTTPSOCKETSHANDLER_ENABLED", "DD_TRACE_HttpSocketsHandler_ENABLED", "DD_HttpSocketsHandler_ENABLED", + "DD_TRACE_HTTPSOCKETSHANDLER_ANALYTICS_ENABLED", "DD_TRACE_HttpSocketsHandler_ANALYTICS_ENABLED", "DD_HttpSocketsHandler_ANALYTICS_ENABLED", + "DD_TRACE_HTTPSOCKETSHANDLER_ANALYTICS_SAMPLE_RATE", "DD_TRACE_HttpSocketsHandler_ANALYTICS_SAMPLE_RATE", "DD_HttpSocketsHandler_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_WINHTTPHANDLER_ENABLED", "DD_TRACE_WinHttpHandler_ENABLED", "DD_WinHttpHandler_ENABLED", + "DD_TRACE_WINHTTPHANDLER_ANALYTICS_ENABLED", "DD_TRACE_WinHttpHandler_ANALYTICS_ENABLED", "DD_WinHttpHandler_ANALYTICS_ENABLED", + "DD_TRACE_WINHTTPHANDLER_ANALYTICS_SAMPLE_RATE", "DD_TRACE_WinHttpHandler_ANALYTICS_SAMPLE_RATE", "DD_WinHttpHandler_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_CURLHANDLER_ENABLED", "DD_TRACE_CurlHandler_ENABLED", "DD_CurlHandler_ENABLED", + "DD_TRACE_CURLHANDLER_ANALYTICS_ENABLED", "DD_TRACE_CurlHandler_ANALYTICS_ENABLED", "DD_CurlHandler_ANALYTICS_ENABLED", + "DD_TRACE_CURLHANDLER_ANALYTICS_SAMPLE_RATE", "DD_TRACE_CurlHandler_ANALYTICS_SAMPLE_RATE", "DD_CurlHandler_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_ASPNETCORE_ENABLED", "DD_TRACE_AspNetCore_ENABLED", "DD_AspNetCore_ENABLED", + "DD_TRACE_ASPNETCORE_ANALYTICS_ENABLED", "DD_TRACE_AspNetCore_ANALYTICS_ENABLED", "DD_AspNetCore_ANALYTICS_ENABLED", + "DD_TRACE_ASPNETCORE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AspNetCore_ANALYTICS_SAMPLE_RATE", "DD_AspNetCore_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_ADONET_ENABLED", "DD_TRACE_AdoNet_ENABLED", "DD_AdoNet_ENABLED", + "DD_TRACE_ADONET_ANALYTICS_ENABLED", "DD_TRACE_AdoNet_ANALYTICS_ENABLED", "DD_AdoNet_ANALYTICS_ENABLED", + "DD_TRACE_ADONET_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AdoNet_ANALYTICS_SAMPLE_RATE", "DD_AdoNet_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_ASPNET_ENABLED", "DD_TRACE_AspNet_ENABLED", "DD_AspNet_ENABLED", + "DD_TRACE_ASPNET_ANALYTICS_ENABLED", "DD_TRACE_AspNet_ANALYTICS_ENABLED", "DD_AspNet_ANALYTICS_ENABLED", + "DD_TRACE_ASPNET_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AspNet_ANALYTICS_SAMPLE_RATE", "DD_AspNet_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_ASPNETMVC_ENABLED", "DD_TRACE_AspNetMvc_ENABLED", "DD_AspNetMvc_ENABLED", + "DD_TRACE_ASPNETMVC_ANALYTICS_ENABLED", "DD_TRACE_AspNetMvc_ANALYTICS_ENABLED", "DD_AspNetMvc_ANALYTICS_ENABLED", + "DD_TRACE_ASPNETMVC_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AspNetMvc_ANALYTICS_SAMPLE_RATE", "DD_AspNetMvc_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_ASPNETWEBAPI2_ENABLED", "DD_TRACE_AspNetWebApi2_ENABLED", "DD_AspNetWebApi2_ENABLED", + "DD_TRACE_ASPNETWEBAPI2_ANALYTICS_ENABLED", "DD_TRACE_AspNetWebApi2_ANALYTICS_ENABLED", "DD_AspNetWebApi2_ANALYTICS_ENABLED", + "DD_TRACE_ASPNETWEBAPI2_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AspNetWebApi2_ANALYTICS_SAMPLE_RATE", "DD_AspNetWebApi2_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_GRAPHQL_ENABLED", "DD_TRACE_GraphQL_ENABLED", "DD_GraphQL_ENABLED", + "DD_TRACE_GRAPHQL_ANALYTICS_ENABLED", "DD_TRACE_GraphQL_ANALYTICS_ENABLED", "DD_GraphQL_ANALYTICS_ENABLED", + "DD_TRACE_GRAPHQL_ANALYTICS_SAMPLE_RATE", "DD_TRACE_GraphQL_ANALYTICS_SAMPLE_RATE", "DD_GraphQL_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_HOTCHOCOLATE_ENABLED", "DD_TRACE_HotChocolate_ENABLED", "DD_HotChocolate_ENABLED", + "DD_TRACE_HOTCHOCOLATE_ANALYTICS_ENABLED", "DD_TRACE_HotChocolate_ANALYTICS_ENABLED", "DD_HotChocolate_ANALYTICS_ENABLED", + "DD_TRACE_HOTCHOCOLATE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_HotChocolate_ANALYTICS_SAMPLE_RATE", "DD_HotChocolate_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_MONGODB_ENABLED", "DD_TRACE_MongoDb_ENABLED", "DD_MongoDb_ENABLED", + "DD_TRACE_MONGODB_ANALYTICS_ENABLED", "DD_TRACE_MongoDb_ANALYTICS_ENABLED", "DD_MongoDb_ANALYTICS_ENABLED", + "DD_TRACE_MONGODB_ANALYTICS_SAMPLE_RATE", "DD_TRACE_MongoDb_ANALYTICS_SAMPLE_RATE", "DD_MongoDb_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_XUNIT_ENABLED", "DD_TRACE_XUnit_ENABLED", "DD_XUnit_ENABLED", + "DD_TRACE_XUNIT_ANALYTICS_ENABLED", "DD_TRACE_XUnit_ANALYTICS_ENABLED", "DD_XUnit_ANALYTICS_ENABLED", + "DD_TRACE_XUNIT_ANALYTICS_SAMPLE_RATE", "DD_TRACE_XUnit_ANALYTICS_SAMPLE_RATE", "DD_XUnit_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_NUNIT_ENABLED", "DD_TRACE_NUnit_ENABLED", "DD_NUnit_ENABLED", + "DD_TRACE_NUNIT_ANALYTICS_ENABLED", "DD_TRACE_NUnit_ANALYTICS_ENABLED", "DD_NUnit_ANALYTICS_ENABLED", + "DD_TRACE_NUNIT_ANALYTICS_SAMPLE_RATE", "DD_TRACE_NUnit_ANALYTICS_SAMPLE_RATE", "DD_NUnit_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_MSTESTV2_ENABLED", "DD_TRACE_MsTestV2_ENABLED", "DD_MsTestV2_ENABLED", + "DD_TRACE_MSTESTV2_ANALYTICS_ENABLED", "DD_TRACE_MsTestV2_ANALYTICS_ENABLED", "DD_MsTestV2_ANALYTICS_ENABLED", + "DD_TRACE_MSTESTV2_ANALYTICS_SAMPLE_RATE", "DD_TRACE_MsTestV2_ANALYTICS_SAMPLE_RATE", "DD_MsTestV2_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_WCF_ENABLED", "DD_TRACE_Wcf_ENABLED", "DD_Wcf_ENABLED", + "DD_TRACE_WCF_ANALYTICS_ENABLED", "DD_TRACE_Wcf_ANALYTICS_ENABLED", "DD_Wcf_ANALYTICS_ENABLED", + "DD_TRACE_WCF_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Wcf_ANALYTICS_SAMPLE_RATE", "DD_Wcf_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_WEBREQUEST_ENABLED", "DD_TRACE_WebRequest_ENABLED", "DD_WebRequest_ENABLED", + "DD_TRACE_WEBREQUEST_ANALYTICS_ENABLED", "DD_TRACE_WebRequest_ANALYTICS_ENABLED", "DD_WebRequest_ANALYTICS_ENABLED", + "DD_TRACE_WEBREQUEST_ANALYTICS_SAMPLE_RATE", "DD_TRACE_WebRequest_ANALYTICS_SAMPLE_RATE", "DD_WebRequest_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_ELASTICSEARCHNET_ENABLED", "DD_TRACE_ElasticsearchNet_ENABLED", "DD_ElasticsearchNet_ENABLED", + "DD_TRACE_ELASTICSEARCHNET_ANALYTICS_ENABLED", "DD_TRACE_ElasticsearchNet_ANALYTICS_ENABLED", "DD_ElasticsearchNet_ANALYTICS_ENABLED", + "DD_TRACE_ELASTICSEARCHNET_ANALYTICS_SAMPLE_RATE", "DD_TRACE_ElasticsearchNet_ANALYTICS_SAMPLE_RATE", "DD_ElasticsearchNet_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SERVICESTACKREDIS_ENABLED", "DD_TRACE_ServiceStackRedis_ENABLED", "DD_ServiceStackRedis_ENABLED", + "DD_TRACE_SERVICESTACKREDIS_ANALYTICS_ENABLED", "DD_TRACE_ServiceStackRedis_ANALYTICS_ENABLED", "DD_ServiceStackRedis_ANALYTICS_ENABLED", + "DD_TRACE_SERVICESTACKREDIS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_ServiceStackRedis_ANALYTICS_SAMPLE_RATE", "DD_ServiceStackRedis_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_STACKEXCHANGEREDIS_ENABLED", "DD_TRACE_StackExchangeRedis_ENABLED", "DD_StackExchangeRedis_ENABLED", + "DD_TRACE_STACKEXCHANGEREDIS_ANALYTICS_ENABLED", "DD_TRACE_StackExchangeRedis_ANALYTICS_ENABLED", "DD_StackExchangeRedis_ANALYTICS_ENABLED", + "DD_TRACE_STACKEXCHANGEREDIS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_StackExchangeRedis_ANALYTICS_SAMPLE_RATE", "DD_StackExchangeRedis_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SERVICEREMOTING_ENABLED", "DD_TRACE_ServiceRemoting_ENABLED", "DD_ServiceRemoting_ENABLED", + "DD_TRACE_SERVICEREMOTING_ANALYTICS_ENABLED", "DD_TRACE_ServiceRemoting_ANALYTICS_ENABLED", "DD_ServiceRemoting_ANALYTICS_ENABLED", + "DD_TRACE_SERVICEREMOTING_ANALYTICS_SAMPLE_RATE", "DD_TRACE_ServiceRemoting_ANALYTICS_SAMPLE_RATE", "DD_ServiceRemoting_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_RABBITMQ_ENABLED", "DD_TRACE_RabbitMQ_ENABLED", "DD_RabbitMQ_ENABLED", + "DD_TRACE_RABBITMQ_ANALYTICS_ENABLED", "DD_TRACE_RabbitMQ_ANALYTICS_ENABLED", "DD_RabbitMQ_ANALYTICS_ENABLED", + "DD_TRACE_RABBITMQ_ANALYTICS_SAMPLE_RATE", "DD_TRACE_RabbitMQ_ANALYTICS_SAMPLE_RATE", "DD_RabbitMQ_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_MSMQ_ENABLED", "DD_TRACE_Msmq_ENABLED", "DD_Msmq_ENABLED", + "DD_TRACE_MSMQ_ANALYTICS_ENABLED", "DD_TRACE_Msmq_ANALYTICS_ENABLED", "DD_Msmq_ANALYTICS_ENABLED", + "DD_TRACE_MSMQ_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Msmq_ANALYTICS_SAMPLE_RATE", "DD_Msmq_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_KAFKA_ENABLED", "DD_TRACE_Kafka_ENABLED", "DD_Kafka_ENABLED", + "DD_TRACE_KAFKA_ANALYTICS_ENABLED", "DD_TRACE_Kafka_ANALYTICS_ENABLED", "DD_Kafka_ANALYTICS_ENABLED", + "DD_TRACE_KAFKA_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Kafka_ANALYTICS_SAMPLE_RATE", "DD_Kafka_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_COSMOSDB_ENABLED", "DD_TRACE_CosmosDb_ENABLED", "DD_CosmosDb_ENABLED", + "DD_TRACE_COSMOSDB_ANALYTICS_ENABLED", "DD_TRACE_CosmosDb_ANALYTICS_ENABLED", "DD_CosmosDb_ANALYTICS_ENABLED", + "DD_TRACE_COSMOSDB_ANALYTICS_SAMPLE_RATE", "DD_TRACE_CosmosDb_ANALYTICS_SAMPLE_RATE", "DD_CosmosDb_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSS3_ENABLED", "DD_TRACE_AwsS3_ENABLED", "DD_AwsS3_ENABLED", + "DD_TRACE_AWSS3_ANALYTICS_ENABLED", "DD_TRACE_AwsS3_ANALYTICS_ENABLED", "DD_AwsS3_ANALYTICS_ENABLED", + "DD_TRACE_AWSS3_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsS3_ANALYTICS_SAMPLE_RATE", "DD_AwsS3_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSSDK_ENABLED", "DD_TRACE_AwsSdk_ENABLED", "DD_AwsSdk_ENABLED", + "DD_TRACE_AWSSDK_ANALYTICS_ENABLED", "DD_TRACE_AwsSdk_ANALYTICS_ENABLED", "DD_AwsSdk_ANALYTICS_ENABLED", + "DD_TRACE_AWSSDK_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsSdk_ANALYTICS_SAMPLE_RATE", "DD_AwsSdk_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSSQS_ENABLED", "DD_TRACE_AwsSqs_ENABLED", "DD_AwsSqs_ENABLED", + "DD_TRACE_AWSSQS_ANALYTICS_ENABLED", "DD_TRACE_AwsSqs_ANALYTICS_ENABLED", "DD_AwsSqs_ANALYTICS_ENABLED", + "DD_TRACE_AWSSQS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsSqs_ANALYTICS_SAMPLE_RATE", "DD_AwsSqs_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSSNS_ENABLED", "DD_TRACE_AwsSns_ENABLED", "DD_AwsSns_ENABLED", + "DD_TRACE_AWSSNS_ANALYTICS_ENABLED", "DD_TRACE_AwsSns_ANALYTICS_ENABLED", "DD_AwsSns_ANALYTICS_ENABLED", + "DD_TRACE_AWSSNS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsSns_ANALYTICS_SAMPLE_RATE", "DD_AwsSns_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSEVENTBRIDGE_ENABLED", "DD_TRACE_AwsEventBridge_ENABLED", "DD_AwsEventBridge_ENABLED", + "DD_TRACE_AWSEVENTBRIDGE_ANALYTICS_ENABLED", "DD_TRACE_AwsEventBridge_ANALYTICS_ENABLED", "DD_AwsEventBridge_ANALYTICS_ENABLED", + "DD_TRACE_AWSEVENTBRIDGE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsEventBridge_ANALYTICS_SAMPLE_RATE", "DD_AwsEventBridge_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSSTEPFUNCTIONS_ENABLED", "DD_TRACE_AwsStepFunctions_ENABLED", "DD_AwsStepFunctions_ENABLED", + "DD_TRACE_AWSSTEPFUNCTIONS_ANALYTICS_ENABLED", "DD_TRACE_AwsStepFunctions_ANALYTICS_ENABLED", "DD_AwsStepFunctions_ANALYTICS_ENABLED", + "DD_TRACE_AWSSTEPFUNCTIONS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsStepFunctions_ANALYTICS_SAMPLE_RATE", "DD_AwsStepFunctions_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSLAMBDA_ENABLED", "DD_TRACE_AwsLambda_ENABLED", "DD_AwsLambda_ENABLED", + "DD_TRACE_AWSLAMBDA_ANALYTICS_ENABLED", "DD_TRACE_AwsLambda_ANALYTICS_ENABLED", "DD_AwsLambda_ANALYTICS_ENABLED", + "DD_TRACE_AWSLAMBDA_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsLambda_ANALYTICS_SAMPLE_RATE", "DD_AwsLambda_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_ILOGGER_ENABLED", "DD_TRACE_ILogger_ENABLED", "DD_ILogger_ENABLED", + "DD_TRACE_ILOGGER_ANALYTICS_ENABLED", "DD_TRACE_ILogger_ANALYTICS_ENABLED", "DD_ILogger_ANALYTICS_ENABLED", + "DD_TRACE_ILOGGER_ANALYTICS_SAMPLE_RATE", "DD_TRACE_ILogger_ANALYTICS_SAMPLE_RATE", "DD_ILogger_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AEROSPIKE_ENABLED", "DD_TRACE_Aerospike_ENABLED", "DD_Aerospike_ENABLED", + "DD_TRACE_AEROSPIKE_ANALYTICS_ENABLED", "DD_TRACE_Aerospike_ANALYTICS_ENABLED", "DD_Aerospike_ANALYTICS_ENABLED", + "DD_TRACE_AEROSPIKE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Aerospike_ANALYTICS_SAMPLE_RATE", "DD_Aerospike_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AZUREFUNCTIONS_ENABLED", "DD_TRACE_AzureFunctions_ENABLED", "DD_AzureFunctions_ENABLED", + "DD_TRACE_AZUREFUNCTIONS_ANALYTICS_ENABLED", "DD_TRACE_AzureFunctions_ANALYTICS_ENABLED", "DD_AzureFunctions_ANALYTICS_ENABLED", + "DD_TRACE_AZUREFUNCTIONS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AzureFunctions_ANALYTICS_SAMPLE_RATE", "DD_AzureFunctions_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_COUCHBASE_ENABLED", "DD_TRACE_Couchbase_ENABLED", "DD_Couchbase_ENABLED", + "DD_TRACE_COUCHBASE_ANALYTICS_ENABLED", "DD_TRACE_Couchbase_ANALYTICS_ENABLED", "DD_Couchbase_ANALYTICS_ENABLED", + "DD_TRACE_COUCHBASE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Couchbase_ANALYTICS_SAMPLE_RATE", "DD_Couchbase_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_MYSQL_ENABLED", "DD_TRACE_MySql_ENABLED", "DD_MySql_ENABLED", + "DD_TRACE_MYSQL_ANALYTICS_ENABLED", "DD_TRACE_MySql_ANALYTICS_ENABLED", "DD_MySql_ANALYTICS_ENABLED", + "DD_TRACE_MYSQL_ANALYTICS_SAMPLE_RATE", "DD_TRACE_MySql_ANALYTICS_SAMPLE_RATE", "DD_MySql_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_NPGSQL_ENABLED", "DD_TRACE_Npgsql_ENABLED", "DD_Npgsql_ENABLED", + "DD_TRACE_NPGSQL_ANALYTICS_ENABLED", "DD_TRACE_Npgsql_ANALYTICS_ENABLED", "DD_Npgsql_ANALYTICS_ENABLED", + "DD_TRACE_NPGSQL_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Npgsql_ANALYTICS_SAMPLE_RATE", "DD_Npgsql_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_ORACLE_ENABLED", "DD_TRACE_Oracle_ENABLED", "DD_Oracle_ENABLED", + "DD_TRACE_ORACLE_ANALYTICS_ENABLED", "DD_TRACE_Oracle_ANALYTICS_ENABLED", "DD_Oracle_ANALYTICS_ENABLED", + "DD_TRACE_ORACLE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Oracle_ANALYTICS_SAMPLE_RATE", "DD_Oracle_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SQLCLIENT_ENABLED", "DD_TRACE_SqlClient_ENABLED", "DD_SqlClient_ENABLED", + "DD_TRACE_SQLCLIENT_ANALYTICS_ENABLED", "DD_TRACE_SqlClient_ANALYTICS_ENABLED", "DD_SqlClient_ANALYTICS_ENABLED", + "DD_TRACE_SQLCLIENT_ANALYTICS_SAMPLE_RATE", "DD_TRACE_SqlClient_ANALYTICS_SAMPLE_RATE", "DD_SqlClient_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SQLITE_ENABLED", "DD_TRACE_Sqlite_ENABLED", "DD_Sqlite_ENABLED", + "DD_TRACE_SQLITE_ANALYTICS_ENABLED", "DD_TRACE_Sqlite_ANALYTICS_ENABLED", "DD_Sqlite_ANALYTICS_ENABLED", + "DD_TRACE_SQLITE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Sqlite_ANALYTICS_SAMPLE_RATE", "DD_Sqlite_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SERILOG_ENABLED", "DD_TRACE_Serilog_ENABLED", "DD_Serilog_ENABLED", + "DD_TRACE_SERILOG_ANALYTICS_ENABLED", "DD_TRACE_Serilog_ANALYTICS_ENABLED", "DD_Serilog_ANALYTICS_ENABLED", + "DD_TRACE_SERILOG_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Serilog_ANALYTICS_SAMPLE_RATE", "DD_Serilog_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_LOG4NET_ENABLED", "DD_TRACE_Log4Net_ENABLED", "DD_Log4Net_ENABLED", + "DD_TRACE_LOG4NET_ANALYTICS_ENABLED", "DD_TRACE_Log4Net_ANALYTICS_ENABLED", "DD_Log4Net_ANALYTICS_ENABLED", + "DD_TRACE_LOG4NET_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Log4Net_ANALYTICS_SAMPLE_RATE", "DD_Log4Net_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_NLOG_ENABLED", "DD_TRACE_NLog_ENABLED", "DD_NLog_ENABLED", + "DD_TRACE_NLOG_ANALYTICS_ENABLED", "DD_TRACE_NLog_ANALYTICS_ENABLED", "DD_NLog_ANALYTICS_ENABLED", + "DD_TRACE_NLOG_ANALYTICS_SAMPLE_RATE", "DD_TRACE_NLog_ANALYTICS_SAMPLE_RATE", "DD_NLog_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_TRACEANNOTATIONS_ENABLED", "DD_TRACE_TraceAnnotations_ENABLED", "DD_TraceAnnotations_ENABLED", + "DD_TRACE_TRACEANNOTATIONS_ANALYTICS_ENABLED", "DD_TRACE_TraceAnnotations_ANALYTICS_ENABLED", "DD_TraceAnnotations_ANALYTICS_ENABLED", + "DD_TRACE_TRACEANNOTATIONS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_TraceAnnotations_ANALYTICS_SAMPLE_RATE", "DD_TraceAnnotations_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_GRPC_ENABLED", "DD_TRACE_Grpc_ENABLED", "DD_Grpc_ENABLED", + "DD_TRACE_GRPC_ANALYTICS_ENABLED", "DD_TRACE_Grpc_ANALYTICS_ENABLED", "DD_Grpc_ANALYTICS_ENABLED", + "DD_TRACE_GRPC_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Grpc_ANALYTICS_SAMPLE_RATE", "DD_Grpc_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_PROCESS_ENABLED", "DD_TRACE_Process_ENABLED", "DD_Process_ENABLED", + "DD_TRACE_PROCESS_ANALYTICS_ENABLED", "DD_TRACE_Process_ANALYTICS_ENABLED", "DD_Process_ANALYTICS_ENABLED", + "DD_TRACE_PROCESS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Process_ANALYTICS_SAMPLE_RATE", "DD_Process_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_HASHALGORITHM_ENABLED", "DD_TRACE_HashAlgorithm_ENABLED", "DD_HashAlgorithm_ENABLED", + "DD_TRACE_HASHALGORITHM_ANALYTICS_ENABLED", "DD_TRACE_HashAlgorithm_ANALYTICS_ENABLED", "DD_HashAlgorithm_ANALYTICS_ENABLED", + "DD_TRACE_HASHALGORITHM_ANALYTICS_SAMPLE_RATE", "DD_TRACE_HashAlgorithm_ANALYTICS_SAMPLE_RATE", "DD_HashAlgorithm_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SYMMETRICALGORITHM_ENABLED", "DD_TRACE_SymmetricAlgorithm_ENABLED", "DD_SymmetricAlgorithm_ENABLED", + "DD_TRACE_SYMMETRICALGORITHM_ANALYTICS_ENABLED", "DD_TRACE_SymmetricAlgorithm_ANALYTICS_ENABLED", "DD_SymmetricAlgorithm_ANALYTICS_ENABLED", + "DD_TRACE_SYMMETRICALGORITHM_ANALYTICS_SAMPLE_RATE", "DD_TRACE_SymmetricAlgorithm_ANALYTICS_SAMPLE_RATE", "DD_SymmetricAlgorithm_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_OPENTELEMETRY_ENABLED", "DD_TRACE_OpenTelemetry_ENABLED", "DD_OpenTelemetry_ENABLED", + "DD_TRACE_OPENTELEMETRY_ANALYTICS_ENABLED", "DD_TRACE_OpenTelemetry_ANALYTICS_ENABLED", "DD_OpenTelemetry_ANALYTICS_ENABLED", + "DD_TRACE_OPENTELEMETRY_ANALYTICS_SAMPLE_RATE", "DD_TRACE_OpenTelemetry_ANALYTICS_SAMPLE_RATE", "DD_OpenTelemetry_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_PATHTRAVERSAL_ENABLED", "DD_TRACE_PathTraversal_ENABLED", "DD_PathTraversal_ENABLED", + "DD_TRACE_PATHTRAVERSAL_ANALYTICS_ENABLED", "DD_TRACE_PathTraversal_ANALYTICS_ENABLED", "DD_PathTraversal_ANALYTICS_ENABLED", + "DD_TRACE_PATHTRAVERSAL_ANALYTICS_SAMPLE_RATE", "DD_TRACE_PathTraversal_ANALYTICS_SAMPLE_RATE", "DD_PathTraversal_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_LDAP_ENABLED", "DD_TRACE_Ldap_ENABLED", "DD_Ldap_ENABLED", + "DD_TRACE_LDAP_ANALYTICS_ENABLED", "DD_TRACE_Ldap_ANALYTICS_ENABLED", "DD_Ldap_ANALYTICS_ENABLED", + "DD_TRACE_LDAP_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Ldap_ANALYTICS_SAMPLE_RATE", "DD_Ldap_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SSRF_ENABLED", "DD_TRACE_Ssrf_ENABLED", "DD_Ssrf_ENABLED", + "DD_TRACE_SSRF_ANALYTICS_ENABLED", "DD_TRACE_Ssrf_ANALYTICS_ENABLED", "DD_Ssrf_ANALYTICS_ENABLED", + "DD_TRACE_SSRF_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Ssrf_ANALYTICS_SAMPLE_RATE", "DD_Ssrf_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSKINESIS_ENABLED", "DD_TRACE_AwsKinesis_ENABLED", "DD_AwsKinesis_ENABLED", + "DD_TRACE_AWSKINESIS_ANALYTICS_ENABLED", "DD_TRACE_AwsKinesis_ANALYTICS_ENABLED", "DD_AwsKinesis_ANALYTICS_ENABLED", + "DD_TRACE_AWSKINESIS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsKinesis_ANALYTICS_SAMPLE_RATE", "DD_AwsKinesis_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AZURESERVICEBUS_ENABLED", "DD_TRACE_AzureServiceBus_ENABLED", "DD_AzureServiceBus_ENABLED", + "DD_TRACE_AZURESERVICEBUS_ANALYTICS_ENABLED", "DD_TRACE_AzureServiceBus_ANALYTICS_ENABLED", "DD_AzureServiceBus_ANALYTICS_ENABLED", + "DD_TRACE_AZURESERVICEBUS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AzureServiceBus_ANALYTICS_SAMPLE_RATE", "DD_AzureServiceBus_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SYSTEMRANDOM_ENABLED", "DD_TRACE_SystemRandom_ENABLED", "DD_SystemRandom_ENABLED", + "DD_TRACE_SYSTEMRANDOM_ANALYTICS_ENABLED", "DD_TRACE_SystemRandom_ANALYTICS_ENABLED", "DD_SystemRandom_ANALYTICS_ENABLED", + "DD_TRACE_SYSTEMRANDOM_ANALYTICS_SAMPLE_RATE", "DD_TRACE_SystemRandom_ANALYTICS_SAMPLE_RATE", "DD_SystemRandom_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSDYNAMODB_ENABLED", "DD_TRACE_AwsDynamoDb_ENABLED", "DD_AwsDynamoDb_ENABLED", + "DD_TRACE_AWSDYNAMODB_ANALYTICS_ENABLED", "DD_TRACE_AwsDynamoDb_ANALYTICS_ENABLED", "DD_AwsDynamoDb_ANALYTICS_ENABLED", + "DD_TRACE_AWSDYNAMODB_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsDynamoDb_ANALYTICS_SAMPLE_RATE", "DD_AwsDynamoDb_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_HARDCODEDSECRET_ENABLED", "DD_TRACE_HardcodedSecret_ENABLED", "DD_HardcodedSecret_ENABLED", + "DD_TRACE_HARDCODEDSECRET_ANALYTICS_ENABLED", "DD_TRACE_HardcodedSecret_ANALYTICS_ENABLED", "DD_HardcodedSecret_ANALYTICS_ENABLED", + "DD_TRACE_HARDCODEDSECRET_ANALYTICS_SAMPLE_RATE", "DD_TRACE_HardcodedSecret_ANALYTICS_SAMPLE_RATE", "DD_HardcodedSecret_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_IBMMQ_ENABLED", "DD_TRACE_IbmMq_ENABLED", "DD_IbmMq_ENABLED", + "DD_TRACE_IBMMQ_ANALYTICS_ENABLED", "DD_TRACE_IbmMq_ANALYTICS_ENABLED", "DD_IbmMq_ANALYTICS_ENABLED", + "DD_TRACE_IBMMQ_ANALYTICS_SAMPLE_RATE", "DD_TRACE_IbmMq_ANALYTICS_SAMPLE_RATE", "DD_IbmMq_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_REMOTING_ENABLED", "DD_TRACE_Remoting_ENABLED", "DD_Remoting_ENABLED", + "DD_TRACE_REMOTING_ANALYTICS_ENABLED", "DD_TRACE_Remoting_ANALYTICS_ENABLED", "DD_Remoting_ANALYTICS_ENABLED", + "DD_TRACE_REMOTING_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Remoting_ANALYTICS_SAMPLE_RATE", "DD_Remoting_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_TRUSTBOUNDARYVIOLATION_ENABLED", "DD_TRACE_TrustBoundaryViolation_ENABLED", "DD_TrustBoundaryViolation_ENABLED", + "DD_TRACE_TRUSTBOUNDARYVIOLATION_ANALYTICS_ENABLED", "DD_TRACE_TrustBoundaryViolation_ANALYTICS_ENABLED", "DD_TrustBoundaryViolation_ANALYTICS_ENABLED", + "DD_TRACE_TRUSTBOUNDARYVIOLATION_ANALYTICS_SAMPLE_RATE", "DD_TRACE_TrustBoundaryViolation_ANALYTICS_SAMPLE_RATE", "DD_TrustBoundaryViolation_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_UNVALIDATEDREDIRECT_ENABLED", "DD_TRACE_UnvalidatedRedirect_ENABLED", "DD_UnvalidatedRedirect_ENABLED", + "DD_TRACE_UNVALIDATEDREDIRECT_ANALYTICS_ENABLED", "DD_TRACE_UnvalidatedRedirect_ANALYTICS_ENABLED", "DD_UnvalidatedRedirect_ANALYTICS_ENABLED", + "DD_TRACE_UNVALIDATEDREDIRECT_ANALYTICS_SAMPLE_RATE", "DD_TRACE_UnvalidatedRedirect_ANALYTICS_SAMPLE_RATE", "DD_UnvalidatedRedirect_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_TESTPLATFORMASSEMBLYRESOLVER_ENABLED", "DD_TRACE_TestPlatformAssemblyResolver_ENABLED", "DD_TestPlatformAssemblyResolver_ENABLED", + "DD_TRACE_TESTPLATFORMASSEMBLYRESOLVER_ANALYTICS_ENABLED", "DD_TRACE_TestPlatformAssemblyResolver_ANALYTICS_ENABLED", "DD_TestPlatformAssemblyResolver_ANALYTICS_ENABLED", + "DD_TRACE_TESTPLATFORMASSEMBLYRESOLVER_ANALYTICS_SAMPLE_RATE", "DD_TRACE_TestPlatformAssemblyResolver_ANALYTICS_SAMPLE_RATE", "DD_TestPlatformAssemblyResolver_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_STACKTRACELEAK_ENABLED", "DD_TRACE_StackTraceLeak_ENABLED", "DD_StackTraceLeak_ENABLED", + "DD_TRACE_STACKTRACELEAK_ANALYTICS_ENABLED", "DD_TRACE_StackTraceLeak_ANALYTICS_ENABLED", "DD_StackTraceLeak_ANALYTICS_ENABLED", + "DD_TRACE_STACKTRACELEAK_ANALYTICS_SAMPLE_RATE", "DD_TRACE_StackTraceLeak_ANALYTICS_SAMPLE_RATE", "DD_StackTraceLeak_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_XPATHINJECTION_ENABLED", "DD_TRACE_XpathInjection_ENABLED", "DD_XpathInjection_ENABLED", + "DD_TRACE_XPATHINJECTION_ANALYTICS_ENABLED", "DD_TRACE_XpathInjection_ANALYTICS_ENABLED", "DD_XpathInjection_ANALYTICS_ENABLED", + "DD_TRACE_XPATHINJECTION_ANALYTICS_SAMPLE_RATE", "DD_TRACE_XpathInjection_ANALYTICS_SAMPLE_RATE", "DD_XpathInjection_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_REFLECTIONINJECTION_ENABLED", "DD_TRACE_ReflectionInjection_ENABLED", "DD_ReflectionInjection_ENABLED", + "DD_TRACE_REFLECTIONINJECTION_ANALYTICS_ENABLED", "DD_TRACE_ReflectionInjection_ANALYTICS_ENABLED", "DD_ReflectionInjection_ANALYTICS_ENABLED", + "DD_TRACE_REFLECTIONINJECTION_ANALYTICS_SAMPLE_RATE", "DD_TRACE_ReflectionInjection_ANALYTICS_SAMPLE_RATE", "DD_ReflectionInjection_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_XSS_ENABLED", "DD_TRACE_Xss_ENABLED", "DD_Xss_ENABLED", + "DD_TRACE_XSS_ANALYTICS_ENABLED", "DD_TRACE_Xss_ANALYTICS_ENABLED", "DD_Xss_ANALYTICS_ENABLED", + "DD_TRACE_XSS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Xss_ANALYTICS_SAMPLE_RATE", "DD_Xss_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_NHIBERNATE_ENABLED", "DD_TRACE_NHibernate_ENABLED", "DD_NHibernate_ENABLED", + "DD_TRACE_NHIBERNATE_ANALYTICS_ENABLED", "DD_TRACE_NHibernate_ANALYTICS_ENABLED", "DD_NHibernate_ANALYTICS_ENABLED", + "DD_TRACE_NHIBERNATE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_NHibernate_ANALYTICS_SAMPLE_RATE", "DD_NHibernate_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_DOTNETTEST_ENABLED", "DD_TRACE_DotnetTest_ENABLED", "DD_DotnetTest_ENABLED", + "DD_TRACE_DOTNETTEST_ANALYTICS_ENABLED", "DD_TRACE_DotnetTest_ANALYTICS_ENABLED", "DD_DotnetTest_ANALYTICS_ENABLED", + "DD_TRACE_DOTNETTEST_ANALYTICS_SAMPLE_RATE", "DD_TRACE_DotnetTest_ANALYTICS_SAMPLE_RATE", "DD_DotnetTest_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SELENIUM_ENABLED", "DD_TRACE_Selenium_ENABLED", "DD_Selenium_ENABLED", + "DD_TRACE_SELENIUM_ANALYTICS_ENABLED", "DD_TRACE_Selenium_ANALYTICS_ENABLED", "DD_Selenium_ANALYTICS_ENABLED", + "DD_TRACE_SELENIUM_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Selenium_ANALYTICS_SAMPLE_RATE", "DD_Selenium_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_DIRECTORYLISTINGLEAK_ENABLED", "DD_TRACE_DirectoryListingLeak_ENABLED", "DD_DirectoryListingLeak_ENABLED", + "DD_TRACE_DIRECTORYLISTINGLEAK_ANALYTICS_ENABLED", "DD_TRACE_DirectoryListingLeak_ANALYTICS_ENABLED", "DD_DirectoryListingLeak_ANALYTICS_ENABLED", + "DD_TRACE_DIRECTORYLISTINGLEAK_ANALYTICS_SAMPLE_RATE", "DD_TRACE_DirectoryListingLeak_ANALYTICS_SAMPLE_RATE", "DD_DirectoryListingLeak_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SESSIONTIMEOUT_ENABLED", "DD_TRACE_SessionTimeout_ENABLED", "DD_SessionTimeout_ENABLED", + "DD_TRACE_SESSIONTIMEOUT_ANALYTICS_ENABLED", "DD_TRACE_SessionTimeout_ANALYTICS_ENABLED", "DD_SessionTimeout_ANALYTICS_ENABLED", + "DD_TRACE_SESSIONTIMEOUT_ANALYTICS_SAMPLE_RATE", "DD_TRACE_SessionTimeout_ANALYTICS_SAMPLE_RATE", "DD_SessionTimeout_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_DATADOGTRACEMANUAL_ENABLED", "DD_TRACE_DatadogTraceManual_ENABLED", "DD_DatadogTraceManual_ENABLED", + "DD_TRACE_DATADOGTRACEMANUAL_ANALYTICS_ENABLED", "DD_TRACE_DatadogTraceManual_ANALYTICS_ENABLED", "DD_DatadogTraceManual_ANALYTICS_ENABLED", + "DD_TRACE_DATADOGTRACEMANUAL_ANALYTICS_SAMPLE_RATE", "DD_TRACE_DatadogTraceManual_ANALYTICS_SAMPLE_RATE", "DD_DatadogTraceManual_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_EMAILHTMLINJECTION_ENABLED", "DD_TRACE_EmailHtmlInjection_ENABLED", "DD_EmailHtmlInjection_ENABLED", + "DD_TRACE_EMAILHTMLINJECTION_ANALYTICS_ENABLED", "DD_TRACE_EmailHtmlInjection_ANALYTICS_ENABLED", "DD_EmailHtmlInjection_ANALYTICS_ENABLED", + "DD_TRACE_EMAILHTMLINJECTION_ANALYTICS_SAMPLE_RATE", "DD_TRACE_EmailHtmlInjection_ANALYTICS_SAMPLE_RATE", "DD_EmailHtmlInjection_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_PROTOBUF_ENABLED", "DD_TRACE_Protobuf_ENABLED", "DD_Protobuf_ENABLED", + "DD_TRACE_PROTOBUF_ANALYTICS_ENABLED", "DD_TRACE_Protobuf_ANALYTICS_ENABLED", "DD_Protobuf_ANALYTICS_ENABLED", + "DD_TRACE_PROTOBUF_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Protobuf_ANALYTICS_SAMPLE_RATE", "DD_Protobuf_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AZUREEVENTHUBS_ENABLED", "DD_TRACE_AzureEventHubs_ENABLED", "DD_AzureEventHubs_ENABLED", + "DD_TRACE_AZUREEVENTHUBS_ANALYTICS_ENABLED", "DD_TRACE_AzureEventHubs_ANALYTICS_ENABLED", "DD_AzureEventHubs_ANALYTICS_ENABLED", + "DD_TRACE_AZUREEVENTHUBS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AzureEventHubs_ANALYTICS_SAMPLE_RATE", "DD_AzureEventHubs_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_DATADOGTRACEVERSIONCONFLICT_ENABLED", "DD_TRACE_DatadogTraceVersionConflict_ENABLED", "DD_DatadogTraceVersionConflict_ENABLED", + "DD_TRACE_DATADOGTRACEVERSIONCONFLICT_ANALYTICS_ENABLED", "DD_TRACE_DatadogTraceVersionConflict_ANALYTICS_ENABLED", "DD_DatadogTraceVersionConflict_ANALYTICS_ENABLED", + "DD_TRACE_DATADOGTRACEVERSIONCONFLICT_ANALYTICS_SAMPLE_RATE", "DD_TRACE_DatadogTraceVersionConflict_ANALYTICS_SAMPLE_RATE", "DD_DatadogTraceVersionConflict_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_HANGFIRE_ENABLED", "DD_TRACE_Hangfire_ENABLED", "DD_Hangfire_ENABLED", + "DD_TRACE_HANGFIRE_ANALYTICS_ENABLED", "DD_TRACE_Hangfire_ANALYTICS_ENABLED", "DD_Hangfire_ANALYTICS_ENABLED", + "DD_TRACE_HANGFIRE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Hangfire_ANALYTICS_SAMPLE_RATE", "DD_Hangfire_ANALYTICS_SAMPLE_RATE", + ]; + /// + /// Gets the configuration keys for the specified integration name. + /// Returns a KeyValuePair where Key is the canonical key and Value is an array of aliases. + /// + /// The integration name + /// KeyValuePair with canonical key and aliases + public static System.Collections.Generic.KeyValuePair GetIntegrationEnabledKeys(string integrationName) => + integrationName switch + { + "HttpMessageHandler" => new("DD_TRACE_HTTPMESSAGEHANDLER_ENABLED", ["DD_TRACE_HttpMessageHandler_ENABLED", "DD_HttpMessageHandler_ENABLED"]), + "HttpSocketsHandler" => new("DD_TRACE_HTTPSOCKETSHANDLER_ENABLED", ["DD_TRACE_HttpSocketsHandler_ENABLED", "DD_HttpSocketsHandler_ENABLED"]), + "WinHttpHandler" => new("DD_TRACE_WINHTTPHANDLER_ENABLED", ["DD_TRACE_WinHttpHandler_ENABLED", "DD_WinHttpHandler_ENABLED"]), + "CurlHandler" => new("DD_TRACE_CURLHANDLER_ENABLED", ["DD_TRACE_CurlHandler_ENABLED", "DD_CurlHandler_ENABLED"]), + "AspNetCore" => new("DD_TRACE_ASPNETCORE_ENABLED", ["DD_TRACE_AspNetCore_ENABLED", "DD_AspNetCore_ENABLED"]), + "AdoNet" => new("DD_TRACE_ADONET_ENABLED", ["DD_TRACE_AdoNet_ENABLED", "DD_AdoNet_ENABLED"]), + "AspNet" => new("DD_TRACE_ASPNET_ENABLED", ["DD_TRACE_AspNet_ENABLED", "DD_AspNet_ENABLED"]), + "AspNetMvc" => new("DD_TRACE_ASPNETMVC_ENABLED", ["DD_TRACE_AspNetMvc_ENABLED", "DD_AspNetMvc_ENABLED"]), + "AspNetWebApi2" => new("DD_TRACE_ASPNETWEBAPI2_ENABLED", ["DD_TRACE_AspNetWebApi2_ENABLED", "DD_AspNetWebApi2_ENABLED"]), + "GraphQL" => new("DD_TRACE_GRAPHQL_ENABLED", ["DD_TRACE_GraphQL_ENABLED", "DD_GraphQL_ENABLED"]), + "HotChocolate" => new("DD_TRACE_HOTCHOCOLATE_ENABLED", ["DD_TRACE_HotChocolate_ENABLED", "DD_HotChocolate_ENABLED"]), + "MongoDb" => new("DD_TRACE_MONGODB_ENABLED", ["DD_TRACE_MongoDb_ENABLED", "DD_MongoDb_ENABLED"]), + "XUnit" => new("DD_TRACE_XUNIT_ENABLED", ["DD_TRACE_XUnit_ENABLED", "DD_XUnit_ENABLED"]), + "NUnit" => new("DD_TRACE_NUNIT_ENABLED", ["DD_TRACE_NUnit_ENABLED", "DD_NUnit_ENABLED"]), + "MsTestV2" => new("DD_TRACE_MSTESTV2_ENABLED", ["DD_TRACE_MsTestV2_ENABLED", "DD_MsTestV2_ENABLED"]), + "Wcf" => new("DD_TRACE_WCF_ENABLED", ["DD_TRACE_Wcf_ENABLED", "DD_Wcf_ENABLED"]), + "WebRequest" => new("DD_TRACE_WEBREQUEST_ENABLED", ["DD_TRACE_WebRequest_ENABLED", "DD_WebRequest_ENABLED"]), + "ElasticsearchNet" => new("DD_TRACE_ELASTICSEARCHNET_ENABLED", ["DD_TRACE_ElasticsearchNet_ENABLED", "DD_ElasticsearchNet_ENABLED"]), + "ServiceStackRedis" => new("DD_TRACE_SERVICESTACKREDIS_ENABLED", ["DD_TRACE_ServiceStackRedis_ENABLED", "DD_ServiceStackRedis_ENABLED"]), + "StackExchangeRedis" => new("DD_TRACE_STACKEXCHANGEREDIS_ENABLED", ["DD_TRACE_StackExchangeRedis_ENABLED", "DD_StackExchangeRedis_ENABLED"]), + "ServiceRemoting" => new("DD_TRACE_SERVICEREMOTING_ENABLED", ["DD_TRACE_ServiceRemoting_ENABLED", "DD_ServiceRemoting_ENABLED"]), + "RabbitMQ" => new("DD_TRACE_RABBITMQ_ENABLED", ["DD_TRACE_RabbitMQ_ENABLED", "DD_RabbitMQ_ENABLED"]), + "Msmq" => new("DD_TRACE_MSMQ_ENABLED", ["DD_TRACE_Msmq_ENABLED", "DD_Msmq_ENABLED"]), + "Kafka" => new("DD_TRACE_KAFKA_ENABLED", ["DD_TRACE_Kafka_ENABLED", "DD_Kafka_ENABLED"]), + "CosmosDb" => new("DD_TRACE_COSMOSDB_ENABLED", ["DD_TRACE_CosmosDb_ENABLED", "DD_CosmosDb_ENABLED"]), + "AwsS3" => new("DD_TRACE_AWSS3_ENABLED", ["DD_TRACE_AwsS3_ENABLED", "DD_AwsS3_ENABLED"]), + "AwsSdk" => new("DD_TRACE_AWSSDK_ENABLED", ["DD_TRACE_AwsSdk_ENABLED", "DD_AwsSdk_ENABLED"]), + "AwsSqs" => new("DD_TRACE_AWSSQS_ENABLED", ["DD_TRACE_AwsSqs_ENABLED", "DD_AwsSqs_ENABLED"]), + "AwsSns" => new("DD_TRACE_AWSSNS_ENABLED", ["DD_TRACE_AwsSns_ENABLED", "DD_AwsSns_ENABLED"]), + "AwsEventBridge" => new("DD_TRACE_AWSEVENTBRIDGE_ENABLED", ["DD_TRACE_AwsEventBridge_ENABLED", "DD_AwsEventBridge_ENABLED"]), + "AwsStepFunctions" => new("DD_TRACE_AWSSTEPFUNCTIONS_ENABLED", ["DD_TRACE_AwsStepFunctions_ENABLED", "DD_AwsStepFunctions_ENABLED"]), + "AwsLambda" => new("DD_TRACE_AWSLAMBDA_ENABLED", ["DD_TRACE_AwsLambda_ENABLED", "DD_AwsLambda_ENABLED"]), + "ILogger" => new("DD_TRACE_ILOGGER_ENABLED", ["DD_TRACE_ILogger_ENABLED", "DD_ILogger_ENABLED"]), + "Aerospike" => new("DD_TRACE_AEROSPIKE_ENABLED", ["DD_TRACE_Aerospike_ENABLED", "DD_Aerospike_ENABLED"]), + "AzureFunctions" => new("DD_TRACE_AZUREFUNCTIONS_ENABLED", ["DD_TRACE_AzureFunctions_ENABLED", "DD_AzureFunctions_ENABLED"]), + "Couchbase" => new("DD_TRACE_COUCHBASE_ENABLED", ["DD_TRACE_Couchbase_ENABLED", "DD_Couchbase_ENABLED"]), + "MySql" => new("DD_TRACE_MYSQL_ENABLED", ["DD_TRACE_MySql_ENABLED", "DD_MySql_ENABLED"]), + "Npgsql" => new("DD_TRACE_NPGSQL_ENABLED", ["DD_TRACE_Npgsql_ENABLED", "DD_Npgsql_ENABLED"]), + "Oracle" => new("DD_TRACE_ORACLE_ENABLED", ["DD_TRACE_Oracle_ENABLED", "DD_Oracle_ENABLED"]), + "SqlClient" => new("DD_TRACE_SQLCLIENT_ENABLED", ["DD_TRACE_SqlClient_ENABLED", "DD_SqlClient_ENABLED"]), + "Sqlite" => new("DD_TRACE_SQLITE_ENABLED", ["DD_TRACE_Sqlite_ENABLED", "DD_Sqlite_ENABLED"]), + "Serilog" => new("DD_TRACE_SERILOG_ENABLED", ["DD_TRACE_Serilog_ENABLED", "DD_Serilog_ENABLED"]), + "Log4Net" => new("DD_TRACE_LOG4NET_ENABLED", ["DD_TRACE_Log4Net_ENABLED", "DD_Log4Net_ENABLED"]), + "NLog" => new("DD_TRACE_NLOG_ENABLED", ["DD_TRACE_NLog_ENABLED", "DD_NLog_ENABLED"]), + "TraceAnnotations" => new("DD_TRACE_TRACEANNOTATIONS_ENABLED", ["DD_TRACE_TraceAnnotations_ENABLED", "DD_TraceAnnotations_ENABLED"]), + "Grpc" => new("DD_TRACE_GRPC_ENABLED", ["DD_TRACE_Grpc_ENABLED", "DD_Grpc_ENABLED"]), + "Process" => new("DD_TRACE_PROCESS_ENABLED", ["DD_TRACE_Process_ENABLED", "DD_Process_ENABLED"]), + "HashAlgorithm" => new("DD_TRACE_HASHALGORITHM_ENABLED", ["DD_TRACE_HashAlgorithm_ENABLED", "DD_HashAlgorithm_ENABLED"]), + "SymmetricAlgorithm" => new("DD_TRACE_SYMMETRICALGORITHM_ENABLED", ["DD_TRACE_SymmetricAlgorithm_ENABLED", "DD_SymmetricAlgorithm_ENABLED"]), + "OpenTelemetry" => new("DD_TRACE_OPENTELEMETRY_ENABLED", ["DD_TRACE_OpenTelemetry_ENABLED", "DD_OpenTelemetry_ENABLED"]), + "PathTraversal" => new("DD_TRACE_PATHTRAVERSAL_ENABLED", ["DD_TRACE_PathTraversal_ENABLED", "DD_PathTraversal_ENABLED"]), + "Ldap" => new("DD_TRACE_LDAP_ENABLED", ["DD_TRACE_Ldap_ENABLED", "DD_Ldap_ENABLED"]), + "Ssrf" => new("DD_TRACE_SSRF_ENABLED", ["DD_TRACE_Ssrf_ENABLED", "DD_Ssrf_ENABLED"]), + "AwsKinesis" => new("DD_TRACE_AWSKINESIS_ENABLED", ["DD_TRACE_AwsKinesis_ENABLED", "DD_AwsKinesis_ENABLED"]), + "AzureServiceBus" => new("DD_TRACE_AZURESERVICEBUS_ENABLED", ["DD_TRACE_AzureServiceBus_ENABLED", "DD_AzureServiceBus_ENABLED"]), + "SystemRandom" => new("DD_TRACE_SYSTEMRANDOM_ENABLED", ["DD_TRACE_SystemRandom_ENABLED", "DD_SystemRandom_ENABLED"]), + "AwsDynamoDb" => new("DD_TRACE_AWSDYNAMODB_ENABLED", ["DD_TRACE_AwsDynamoDb_ENABLED", "DD_AwsDynamoDb_ENABLED"]), + "HardcodedSecret" => new("DD_TRACE_HARDCODEDSECRET_ENABLED", ["DD_TRACE_HardcodedSecret_ENABLED", "DD_HardcodedSecret_ENABLED"]), + "IbmMq" => new("DD_TRACE_IBMMQ_ENABLED", ["DD_TRACE_IbmMq_ENABLED", "DD_IbmMq_ENABLED"]), + "Remoting" => new("DD_TRACE_REMOTING_ENABLED", ["DD_TRACE_Remoting_ENABLED", "DD_Remoting_ENABLED"]), + "TrustBoundaryViolation" => new("DD_TRACE_TRUSTBOUNDARYVIOLATION_ENABLED", ["DD_TRACE_TrustBoundaryViolation_ENABLED", "DD_TrustBoundaryViolation_ENABLED"]), + "UnvalidatedRedirect" => new("DD_TRACE_UNVALIDATEDREDIRECT_ENABLED", ["DD_TRACE_UnvalidatedRedirect_ENABLED", "DD_UnvalidatedRedirect_ENABLED"]), + "TestPlatformAssemblyResolver" => new("DD_TRACE_TESTPLATFORMASSEMBLYRESOLVER_ENABLED", ["DD_TRACE_TestPlatformAssemblyResolver_ENABLED", "DD_TestPlatformAssemblyResolver_ENABLED"]), + "StackTraceLeak" => new("DD_TRACE_STACKTRACELEAK_ENABLED", ["DD_TRACE_StackTraceLeak_ENABLED", "DD_StackTraceLeak_ENABLED"]), + "XpathInjection" => new("DD_TRACE_XPATHINJECTION_ENABLED", ["DD_TRACE_XpathInjection_ENABLED", "DD_XpathInjection_ENABLED"]), + "ReflectionInjection" => new("DD_TRACE_REFLECTIONINJECTION_ENABLED", ["DD_TRACE_ReflectionInjection_ENABLED", "DD_ReflectionInjection_ENABLED"]), + "Xss" => new("DD_TRACE_XSS_ENABLED", ["DD_TRACE_Xss_ENABLED", "DD_Xss_ENABLED"]), + "NHibernate" => new("DD_TRACE_NHIBERNATE_ENABLED", ["DD_TRACE_NHibernate_ENABLED", "DD_NHibernate_ENABLED"]), + "DotnetTest" => new("DD_TRACE_DOTNETTEST_ENABLED", ["DD_TRACE_DotnetTest_ENABLED", "DD_DotnetTest_ENABLED"]), + "Selenium" => new("DD_TRACE_SELENIUM_ENABLED", ["DD_TRACE_Selenium_ENABLED", "DD_Selenium_ENABLED"]), + "DirectoryListingLeak" => new("DD_TRACE_DIRECTORYLISTINGLEAK_ENABLED", ["DD_TRACE_DirectoryListingLeak_ENABLED", "DD_DirectoryListingLeak_ENABLED"]), + "SessionTimeout" => new("DD_TRACE_SESSIONTIMEOUT_ENABLED", ["DD_TRACE_SessionTimeout_ENABLED", "DD_SessionTimeout_ENABLED"]), + "DatadogTraceManual" => new("DD_TRACE_DATADOGTRACEMANUAL_ENABLED", ["DD_TRACE_DatadogTraceManual_ENABLED", "DD_DatadogTraceManual_ENABLED"]), + "EmailHtmlInjection" => new("DD_TRACE_EMAILHTMLINJECTION_ENABLED", ["DD_TRACE_EmailHtmlInjection_ENABLED", "DD_EmailHtmlInjection_ENABLED"]), + "Protobuf" => new("DD_TRACE_PROTOBUF_ENABLED", ["DD_TRACE_Protobuf_ENABLED", "DD_Protobuf_ENABLED"]), + "AzureEventHubs" => new("DD_TRACE_AZUREEVENTHUBS_ENABLED", ["DD_TRACE_AzureEventHubs_ENABLED", "DD_AzureEventHubs_ENABLED"]), + "DatadogTraceVersionConflict" => new("DD_TRACE_DATADOGTRACEVERSIONCONFLICT_ENABLED", ["DD_TRACE_DatadogTraceVersionConflict_ENABLED", "DD_DatadogTraceVersionConflict_ENABLED"]), + "Hangfire" => new("DD_TRACE_HANGFIRE_ENABLED", ["DD_TRACE_Hangfire_ENABLED", "DD_Hangfire_ENABLED"]), + _ => GetIntegrationEnabledKeysFallback(integrationName) // we should never get here + }; + /// + /// Gets the analytics enabled configuration keys for the specified integration name. + /// Returns a KeyValuePair where Key is the canonical key and Value is an array of aliases. + /// + /// The integration name + /// KeyValuePair with canonical key and aliases + [System.Obsolete(ObsoleteMessage)] + public static System.Collections.Generic.KeyValuePair GetIntegrationAnalyticsEnabledKeys(string integrationName) => + integrationName switch + { + "HttpMessageHandler" => new("DD_TRACE_HTTPMESSAGEHANDLER_ANALYTICS_ENABLED", ["DD_TRACE_HttpMessageHandler_ANALYTICS_ENABLED", "DD_HttpMessageHandler_ANALYTICS_ENABLED"]), + "HttpSocketsHandler" => new("DD_TRACE_HTTPSOCKETSHANDLER_ANALYTICS_ENABLED", ["DD_TRACE_HttpSocketsHandler_ANALYTICS_ENABLED", "DD_HttpSocketsHandler_ANALYTICS_ENABLED"]), + "WinHttpHandler" => new("DD_TRACE_WINHTTPHANDLER_ANALYTICS_ENABLED", ["DD_TRACE_WinHttpHandler_ANALYTICS_ENABLED", "DD_WinHttpHandler_ANALYTICS_ENABLED"]), + "CurlHandler" => new("DD_TRACE_CURLHANDLER_ANALYTICS_ENABLED", ["DD_TRACE_CurlHandler_ANALYTICS_ENABLED", "DD_CurlHandler_ANALYTICS_ENABLED"]), + "AspNetCore" => new("DD_TRACE_ASPNETCORE_ANALYTICS_ENABLED", ["DD_TRACE_AspNetCore_ANALYTICS_ENABLED", "DD_AspNetCore_ANALYTICS_ENABLED"]), + "AdoNet" => new("DD_TRACE_ADONET_ANALYTICS_ENABLED", ["DD_TRACE_AdoNet_ANALYTICS_ENABLED", "DD_AdoNet_ANALYTICS_ENABLED"]), + "AspNet" => new("DD_TRACE_ASPNET_ANALYTICS_ENABLED", ["DD_TRACE_AspNet_ANALYTICS_ENABLED", "DD_AspNet_ANALYTICS_ENABLED"]), + "AspNetMvc" => new("DD_TRACE_ASPNETMVC_ANALYTICS_ENABLED", ["DD_TRACE_AspNetMvc_ANALYTICS_ENABLED", "DD_AspNetMvc_ANALYTICS_ENABLED"]), + "AspNetWebApi2" => new("DD_TRACE_ASPNETWEBAPI2_ANALYTICS_ENABLED", ["DD_TRACE_AspNetWebApi2_ANALYTICS_ENABLED", "DD_AspNetWebApi2_ANALYTICS_ENABLED"]), + "GraphQL" => new("DD_TRACE_GRAPHQL_ANALYTICS_ENABLED", ["DD_TRACE_GraphQL_ANALYTICS_ENABLED", "DD_GraphQL_ANALYTICS_ENABLED"]), + "HotChocolate" => new("DD_TRACE_HOTCHOCOLATE_ANALYTICS_ENABLED", ["DD_TRACE_HotChocolate_ANALYTICS_ENABLED", "DD_HotChocolate_ANALYTICS_ENABLED"]), + "MongoDb" => new("DD_TRACE_MONGODB_ANALYTICS_ENABLED", ["DD_TRACE_MongoDb_ANALYTICS_ENABLED", "DD_MongoDb_ANALYTICS_ENABLED"]), + "XUnit" => new("DD_TRACE_XUNIT_ANALYTICS_ENABLED", ["DD_TRACE_XUnit_ANALYTICS_ENABLED", "DD_XUnit_ANALYTICS_ENABLED"]), + "NUnit" => new("DD_TRACE_NUNIT_ANALYTICS_ENABLED", ["DD_TRACE_NUnit_ANALYTICS_ENABLED", "DD_NUnit_ANALYTICS_ENABLED"]), + "MsTestV2" => new("DD_TRACE_MSTESTV2_ANALYTICS_ENABLED", ["DD_TRACE_MsTestV2_ANALYTICS_ENABLED", "DD_MsTestV2_ANALYTICS_ENABLED"]), + "Wcf" => new("DD_TRACE_WCF_ANALYTICS_ENABLED", ["DD_TRACE_Wcf_ANALYTICS_ENABLED", "DD_Wcf_ANALYTICS_ENABLED"]), + "WebRequest" => new("DD_TRACE_WEBREQUEST_ANALYTICS_ENABLED", ["DD_TRACE_WebRequest_ANALYTICS_ENABLED", "DD_WebRequest_ANALYTICS_ENABLED"]), + "ElasticsearchNet" => new("DD_TRACE_ELASTICSEARCHNET_ANALYTICS_ENABLED", ["DD_TRACE_ElasticsearchNet_ANALYTICS_ENABLED", "DD_ElasticsearchNet_ANALYTICS_ENABLED"]), + "ServiceStackRedis" => new("DD_TRACE_SERVICESTACKREDIS_ANALYTICS_ENABLED", ["DD_TRACE_ServiceStackRedis_ANALYTICS_ENABLED", "DD_ServiceStackRedis_ANALYTICS_ENABLED"]), + "StackExchangeRedis" => new("DD_TRACE_STACKEXCHANGEREDIS_ANALYTICS_ENABLED", ["DD_TRACE_StackExchangeRedis_ANALYTICS_ENABLED", "DD_StackExchangeRedis_ANALYTICS_ENABLED"]), + "ServiceRemoting" => new("DD_TRACE_SERVICEREMOTING_ANALYTICS_ENABLED", ["DD_TRACE_ServiceRemoting_ANALYTICS_ENABLED", "DD_ServiceRemoting_ANALYTICS_ENABLED"]), + "RabbitMQ" => new("DD_TRACE_RABBITMQ_ANALYTICS_ENABLED", ["DD_TRACE_RabbitMQ_ANALYTICS_ENABLED", "DD_RabbitMQ_ANALYTICS_ENABLED"]), + "Msmq" => new("DD_TRACE_MSMQ_ANALYTICS_ENABLED", ["DD_TRACE_Msmq_ANALYTICS_ENABLED", "DD_Msmq_ANALYTICS_ENABLED"]), + "Kafka" => new("DD_TRACE_KAFKA_ANALYTICS_ENABLED", ["DD_TRACE_Kafka_ANALYTICS_ENABLED", "DD_Kafka_ANALYTICS_ENABLED"]), + "CosmosDb" => new("DD_TRACE_COSMOSDB_ANALYTICS_ENABLED", ["DD_TRACE_CosmosDb_ANALYTICS_ENABLED", "DD_CosmosDb_ANALYTICS_ENABLED"]), + "AwsS3" => new("DD_TRACE_AWSS3_ANALYTICS_ENABLED", ["DD_TRACE_AwsS3_ANALYTICS_ENABLED", "DD_AwsS3_ANALYTICS_ENABLED"]), + "AwsSdk" => new("DD_TRACE_AWSSDK_ANALYTICS_ENABLED", ["DD_TRACE_AwsSdk_ANALYTICS_ENABLED", "DD_AwsSdk_ANALYTICS_ENABLED"]), + "AwsSqs" => new("DD_TRACE_AWSSQS_ANALYTICS_ENABLED", ["DD_TRACE_AwsSqs_ANALYTICS_ENABLED", "DD_AwsSqs_ANALYTICS_ENABLED"]), + "AwsSns" => new("DD_TRACE_AWSSNS_ANALYTICS_ENABLED", ["DD_TRACE_AwsSns_ANALYTICS_ENABLED", "DD_AwsSns_ANALYTICS_ENABLED"]), + "AwsEventBridge" => new("DD_TRACE_AWSEVENTBRIDGE_ANALYTICS_ENABLED", ["DD_TRACE_AwsEventBridge_ANALYTICS_ENABLED", "DD_AwsEventBridge_ANALYTICS_ENABLED"]), + "AwsStepFunctions" => new("DD_TRACE_AWSSTEPFUNCTIONS_ANALYTICS_ENABLED", ["DD_TRACE_AwsStepFunctions_ANALYTICS_ENABLED", "DD_AwsStepFunctions_ANALYTICS_ENABLED"]), + "AwsLambda" => new("DD_TRACE_AWSLAMBDA_ANALYTICS_ENABLED", ["DD_TRACE_AwsLambda_ANALYTICS_ENABLED", "DD_AwsLambda_ANALYTICS_ENABLED"]), + "ILogger" => new("DD_TRACE_ILOGGER_ANALYTICS_ENABLED", ["DD_TRACE_ILogger_ANALYTICS_ENABLED", "DD_ILogger_ANALYTICS_ENABLED"]), + "Aerospike" => new("DD_TRACE_AEROSPIKE_ANALYTICS_ENABLED", ["DD_TRACE_Aerospike_ANALYTICS_ENABLED", "DD_Aerospike_ANALYTICS_ENABLED"]), + "AzureFunctions" => new("DD_TRACE_AZUREFUNCTIONS_ANALYTICS_ENABLED", ["DD_TRACE_AzureFunctions_ANALYTICS_ENABLED", "DD_AzureFunctions_ANALYTICS_ENABLED"]), + "Couchbase" => new("DD_TRACE_COUCHBASE_ANALYTICS_ENABLED", ["DD_TRACE_Couchbase_ANALYTICS_ENABLED", "DD_Couchbase_ANALYTICS_ENABLED"]), + "MySql" => new("DD_TRACE_MYSQL_ANALYTICS_ENABLED", ["DD_TRACE_MySql_ANALYTICS_ENABLED", "DD_MySql_ANALYTICS_ENABLED"]), + "Npgsql" => new("DD_TRACE_NPGSQL_ANALYTICS_ENABLED", ["DD_TRACE_Npgsql_ANALYTICS_ENABLED", "DD_Npgsql_ANALYTICS_ENABLED"]), + "Oracle" => new("DD_TRACE_ORACLE_ANALYTICS_ENABLED", ["DD_TRACE_Oracle_ANALYTICS_ENABLED", "DD_Oracle_ANALYTICS_ENABLED"]), + "SqlClient" => new("DD_TRACE_SQLCLIENT_ANALYTICS_ENABLED", ["DD_TRACE_SqlClient_ANALYTICS_ENABLED", "DD_SqlClient_ANALYTICS_ENABLED"]), + "Sqlite" => new("DD_TRACE_SQLITE_ANALYTICS_ENABLED", ["DD_TRACE_Sqlite_ANALYTICS_ENABLED", "DD_Sqlite_ANALYTICS_ENABLED"]), + "Serilog" => new("DD_TRACE_SERILOG_ANALYTICS_ENABLED", ["DD_TRACE_Serilog_ANALYTICS_ENABLED", "DD_Serilog_ANALYTICS_ENABLED"]), + "Log4Net" => new("DD_TRACE_LOG4NET_ANALYTICS_ENABLED", ["DD_TRACE_Log4Net_ANALYTICS_ENABLED", "DD_Log4Net_ANALYTICS_ENABLED"]), + "NLog" => new("DD_TRACE_NLOG_ANALYTICS_ENABLED", ["DD_TRACE_NLog_ANALYTICS_ENABLED", "DD_NLog_ANALYTICS_ENABLED"]), + "TraceAnnotations" => new("DD_TRACE_TRACEANNOTATIONS_ANALYTICS_ENABLED", ["DD_TRACE_TraceAnnotations_ANALYTICS_ENABLED", "DD_TraceAnnotations_ANALYTICS_ENABLED"]), + "Grpc" => new("DD_TRACE_GRPC_ANALYTICS_ENABLED", ["DD_TRACE_Grpc_ANALYTICS_ENABLED", "DD_Grpc_ANALYTICS_ENABLED"]), + "Process" => new("DD_TRACE_PROCESS_ANALYTICS_ENABLED", ["DD_TRACE_Process_ANALYTICS_ENABLED", "DD_Process_ANALYTICS_ENABLED"]), + "HashAlgorithm" => new("DD_TRACE_HASHALGORITHM_ANALYTICS_ENABLED", ["DD_TRACE_HashAlgorithm_ANALYTICS_ENABLED", "DD_HashAlgorithm_ANALYTICS_ENABLED"]), + "SymmetricAlgorithm" => new("DD_TRACE_SYMMETRICALGORITHM_ANALYTICS_ENABLED", ["DD_TRACE_SymmetricAlgorithm_ANALYTICS_ENABLED", "DD_SymmetricAlgorithm_ANALYTICS_ENABLED"]), + "OpenTelemetry" => new("DD_TRACE_OPENTELEMETRY_ANALYTICS_ENABLED", ["DD_TRACE_OpenTelemetry_ANALYTICS_ENABLED", "DD_OpenTelemetry_ANALYTICS_ENABLED"]), + "PathTraversal" => new("DD_TRACE_PATHTRAVERSAL_ANALYTICS_ENABLED", ["DD_TRACE_PathTraversal_ANALYTICS_ENABLED", "DD_PathTraversal_ANALYTICS_ENABLED"]), + "Ldap" => new("DD_TRACE_LDAP_ANALYTICS_ENABLED", ["DD_TRACE_Ldap_ANALYTICS_ENABLED", "DD_Ldap_ANALYTICS_ENABLED"]), + "Ssrf" => new("DD_TRACE_SSRF_ANALYTICS_ENABLED", ["DD_TRACE_Ssrf_ANALYTICS_ENABLED", "DD_Ssrf_ANALYTICS_ENABLED"]), + "AwsKinesis" => new("DD_TRACE_AWSKINESIS_ANALYTICS_ENABLED", ["DD_TRACE_AwsKinesis_ANALYTICS_ENABLED", "DD_AwsKinesis_ANALYTICS_ENABLED"]), + "AzureServiceBus" => new("DD_TRACE_AZURESERVICEBUS_ANALYTICS_ENABLED", ["DD_TRACE_AzureServiceBus_ANALYTICS_ENABLED", "DD_AzureServiceBus_ANALYTICS_ENABLED"]), + "SystemRandom" => new("DD_TRACE_SYSTEMRANDOM_ANALYTICS_ENABLED", ["DD_TRACE_SystemRandom_ANALYTICS_ENABLED", "DD_SystemRandom_ANALYTICS_ENABLED"]), + "AwsDynamoDb" => new("DD_TRACE_AWSDYNAMODB_ANALYTICS_ENABLED", ["DD_TRACE_AwsDynamoDb_ANALYTICS_ENABLED", "DD_AwsDynamoDb_ANALYTICS_ENABLED"]), + "HardcodedSecret" => new("DD_TRACE_HARDCODEDSECRET_ANALYTICS_ENABLED", ["DD_TRACE_HardcodedSecret_ANALYTICS_ENABLED", "DD_HardcodedSecret_ANALYTICS_ENABLED"]), + "IbmMq" => new("DD_TRACE_IBMMQ_ANALYTICS_ENABLED", ["DD_TRACE_IbmMq_ANALYTICS_ENABLED", "DD_IbmMq_ANALYTICS_ENABLED"]), + "Remoting" => new("DD_TRACE_REMOTING_ANALYTICS_ENABLED", ["DD_TRACE_Remoting_ANALYTICS_ENABLED", "DD_Remoting_ANALYTICS_ENABLED"]), + "TrustBoundaryViolation" => new("DD_TRACE_TRUSTBOUNDARYVIOLATION_ANALYTICS_ENABLED", ["DD_TRACE_TrustBoundaryViolation_ANALYTICS_ENABLED", "DD_TrustBoundaryViolation_ANALYTICS_ENABLED"]), + "UnvalidatedRedirect" => new("DD_TRACE_UNVALIDATEDREDIRECT_ANALYTICS_ENABLED", ["DD_TRACE_UnvalidatedRedirect_ANALYTICS_ENABLED", "DD_UnvalidatedRedirect_ANALYTICS_ENABLED"]), + "TestPlatformAssemblyResolver" => new("DD_TRACE_TESTPLATFORMASSEMBLYRESOLVER_ANALYTICS_ENABLED", ["DD_TRACE_TestPlatformAssemblyResolver_ANALYTICS_ENABLED", "DD_TestPlatformAssemblyResolver_ANALYTICS_ENABLED"]), + "StackTraceLeak" => new("DD_TRACE_STACKTRACELEAK_ANALYTICS_ENABLED", ["DD_TRACE_StackTraceLeak_ANALYTICS_ENABLED", "DD_StackTraceLeak_ANALYTICS_ENABLED"]), + "XpathInjection" => new("DD_TRACE_XPATHINJECTION_ANALYTICS_ENABLED", ["DD_TRACE_XpathInjection_ANALYTICS_ENABLED", "DD_XpathInjection_ANALYTICS_ENABLED"]), + "ReflectionInjection" => new("DD_TRACE_REFLECTIONINJECTION_ANALYTICS_ENABLED", ["DD_TRACE_ReflectionInjection_ANALYTICS_ENABLED", "DD_ReflectionInjection_ANALYTICS_ENABLED"]), + "Xss" => new("DD_TRACE_XSS_ANALYTICS_ENABLED", ["DD_TRACE_Xss_ANALYTICS_ENABLED", "DD_Xss_ANALYTICS_ENABLED"]), + "NHibernate" => new("DD_TRACE_NHIBERNATE_ANALYTICS_ENABLED", ["DD_TRACE_NHibernate_ANALYTICS_ENABLED", "DD_NHibernate_ANALYTICS_ENABLED"]), + "DotnetTest" => new("DD_TRACE_DOTNETTEST_ANALYTICS_ENABLED", ["DD_TRACE_DotnetTest_ANALYTICS_ENABLED", "DD_DotnetTest_ANALYTICS_ENABLED"]), + "Selenium" => new("DD_TRACE_SELENIUM_ANALYTICS_ENABLED", ["DD_TRACE_Selenium_ANALYTICS_ENABLED", "DD_Selenium_ANALYTICS_ENABLED"]), + "DirectoryListingLeak" => new("DD_TRACE_DIRECTORYLISTINGLEAK_ANALYTICS_ENABLED", ["DD_TRACE_DirectoryListingLeak_ANALYTICS_ENABLED", "DD_DirectoryListingLeak_ANALYTICS_ENABLED"]), + "SessionTimeout" => new("DD_TRACE_SESSIONTIMEOUT_ANALYTICS_ENABLED", ["DD_TRACE_SessionTimeout_ANALYTICS_ENABLED", "DD_SessionTimeout_ANALYTICS_ENABLED"]), + "DatadogTraceManual" => new("DD_TRACE_DATADOGTRACEMANUAL_ANALYTICS_ENABLED", ["DD_TRACE_DatadogTraceManual_ANALYTICS_ENABLED", "DD_DatadogTraceManual_ANALYTICS_ENABLED"]), + "EmailHtmlInjection" => new("DD_TRACE_EMAILHTMLINJECTION_ANALYTICS_ENABLED", ["DD_TRACE_EmailHtmlInjection_ANALYTICS_ENABLED", "DD_EmailHtmlInjection_ANALYTICS_ENABLED"]), + "Protobuf" => new("DD_TRACE_PROTOBUF_ANALYTICS_ENABLED", ["DD_TRACE_Protobuf_ANALYTICS_ENABLED", "DD_Protobuf_ANALYTICS_ENABLED"]), + "AzureEventHubs" => new("DD_TRACE_AZUREEVENTHUBS_ANALYTICS_ENABLED", ["DD_TRACE_AzureEventHubs_ANALYTICS_ENABLED", "DD_AzureEventHubs_ANALYTICS_ENABLED"]), + "DatadogTraceVersionConflict" => new("DD_TRACE_DATADOGTRACEVERSIONCONFLICT_ANALYTICS_ENABLED", ["DD_TRACE_DatadogTraceVersionConflict_ANALYTICS_ENABLED", "DD_DatadogTraceVersionConflict_ANALYTICS_ENABLED"]), + "Hangfire" => new("DD_TRACE_HANGFIRE_ANALYTICS_ENABLED", ["DD_TRACE_Hangfire_ANALYTICS_ENABLED", "DD_Hangfire_ANALYTICS_ENABLED"]), + _ => GetIntegrationAnalyticsEnabledKeysFallback(integrationName) // we should never get here + }; + /// + /// Gets the analytics sample rate configuration keys for the specified integration name. + /// Returns a KeyValuePair where Key is the canonical key and Value is an array of aliases. + /// + /// The integration name + /// KeyValuePair with canonical key and aliases + [System.Obsolete(ObsoleteMessage)] + public static System.Collections.Generic.KeyValuePair GetIntegrationAnalyticsSampleRateKeys(string integrationName) => + integrationName switch + { + "HttpMessageHandler" => new("DD_TRACE_HTTPMESSAGEHANDLER_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_HttpMessageHandler_ANALYTICS_SAMPLE_RATE", "DD_HttpMessageHandler_ANALYTICS_SAMPLE_RATE"]), + "HttpSocketsHandler" => new("DD_TRACE_HTTPSOCKETSHANDLER_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_HttpSocketsHandler_ANALYTICS_SAMPLE_RATE", "DD_HttpSocketsHandler_ANALYTICS_SAMPLE_RATE"]), + "WinHttpHandler" => new("DD_TRACE_WINHTTPHANDLER_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_WinHttpHandler_ANALYTICS_SAMPLE_RATE", "DD_WinHttpHandler_ANALYTICS_SAMPLE_RATE"]), + "CurlHandler" => new("DD_TRACE_CURLHANDLER_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_CurlHandler_ANALYTICS_SAMPLE_RATE", "DD_CurlHandler_ANALYTICS_SAMPLE_RATE"]), + "AspNetCore" => new("DD_TRACE_ASPNETCORE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AspNetCore_ANALYTICS_SAMPLE_RATE", "DD_AspNetCore_ANALYTICS_SAMPLE_RATE"]), + "AdoNet" => new("DD_TRACE_ADONET_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AdoNet_ANALYTICS_SAMPLE_RATE", "DD_AdoNet_ANALYTICS_SAMPLE_RATE"]), + "AspNet" => new("DD_TRACE_ASPNET_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AspNet_ANALYTICS_SAMPLE_RATE", "DD_AspNet_ANALYTICS_SAMPLE_RATE"]), + "AspNetMvc" => new("DD_TRACE_ASPNETMVC_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AspNetMvc_ANALYTICS_SAMPLE_RATE", "DD_AspNetMvc_ANALYTICS_SAMPLE_RATE"]), + "AspNetWebApi2" => new("DD_TRACE_ASPNETWEBAPI2_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AspNetWebApi2_ANALYTICS_SAMPLE_RATE", "DD_AspNetWebApi2_ANALYTICS_SAMPLE_RATE"]), + "GraphQL" => new("DD_TRACE_GRAPHQL_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_GraphQL_ANALYTICS_SAMPLE_RATE", "DD_GraphQL_ANALYTICS_SAMPLE_RATE"]), + "HotChocolate" => new("DD_TRACE_HOTCHOCOLATE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_HotChocolate_ANALYTICS_SAMPLE_RATE", "DD_HotChocolate_ANALYTICS_SAMPLE_RATE"]), + "MongoDb" => new("DD_TRACE_MONGODB_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_MongoDb_ANALYTICS_SAMPLE_RATE", "DD_MongoDb_ANALYTICS_SAMPLE_RATE"]), + "XUnit" => new("DD_TRACE_XUNIT_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_XUnit_ANALYTICS_SAMPLE_RATE", "DD_XUnit_ANALYTICS_SAMPLE_RATE"]), + "NUnit" => new("DD_TRACE_NUNIT_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_NUnit_ANALYTICS_SAMPLE_RATE", "DD_NUnit_ANALYTICS_SAMPLE_RATE"]), + "MsTestV2" => new("DD_TRACE_MSTESTV2_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_MsTestV2_ANALYTICS_SAMPLE_RATE", "DD_MsTestV2_ANALYTICS_SAMPLE_RATE"]), + "Wcf" => new("DD_TRACE_WCF_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Wcf_ANALYTICS_SAMPLE_RATE", "DD_Wcf_ANALYTICS_SAMPLE_RATE"]), + "WebRequest" => new("DD_TRACE_WEBREQUEST_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_WebRequest_ANALYTICS_SAMPLE_RATE", "DD_WebRequest_ANALYTICS_SAMPLE_RATE"]), + "ElasticsearchNet" => new("DD_TRACE_ELASTICSEARCHNET_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_ElasticsearchNet_ANALYTICS_SAMPLE_RATE", "DD_ElasticsearchNet_ANALYTICS_SAMPLE_RATE"]), + "ServiceStackRedis" => new("DD_TRACE_SERVICESTACKREDIS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_ServiceStackRedis_ANALYTICS_SAMPLE_RATE", "DD_ServiceStackRedis_ANALYTICS_SAMPLE_RATE"]), + "StackExchangeRedis" => new("DD_TRACE_STACKEXCHANGEREDIS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_StackExchangeRedis_ANALYTICS_SAMPLE_RATE", "DD_StackExchangeRedis_ANALYTICS_SAMPLE_RATE"]), + "ServiceRemoting" => new("DD_TRACE_SERVICEREMOTING_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_ServiceRemoting_ANALYTICS_SAMPLE_RATE", "DD_ServiceRemoting_ANALYTICS_SAMPLE_RATE"]), + "RabbitMQ" => new("DD_TRACE_RABBITMQ_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_RabbitMQ_ANALYTICS_SAMPLE_RATE", "DD_RabbitMQ_ANALYTICS_SAMPLE_RATE"]), + "Msmq" => new("DD_TRACE_MSMQ_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Msmq_ANALYTICS_SAMPLE_RATE", "DD_Msmq_ANALYTICS_SAMPLE_RATE"]), + "Kafka" => new("DD_TRACE_KAFKA_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Kafka_ANALYTICS_SAMPLE_RATE", "DD_Kafka_ANALYTICS_SAMPLE_RATE"]), + "CosmosDb" => new("DD_TRACE_COSMOSDB_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_CosmosDb_ANALYTICS_SAMPLE_RATE", "DD_CosmosDb_ANALYTICS_SAMPLE_RATE"]), + "AwsS3" => new("DD_TRACE_AWSS3_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsS3_ANALYTICS_SAMPLE_RATE", "DD_AwsS3_ANALYTICS_SAMPLE_RATE"]), + "AwsSdk" => new("DD_TRACE_AWSSDK_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsSdk_ANALYTICS_SAMPLE_RATE", "DD_AwsSdk_ANALYTICS_SAMPLE_RATE"]), + "AwsSqs" => new("DD_TRACE_AWSSQS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsSqs_ANALYTICS_SAMPLE_RATE", "DD_AwsSqs_ANALYTICS_SAMPLE_RATE"]), + "AwsSns" => new("DD_TRACE_AWSSNS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsSns_ANALYTICS_SAMPLE_RATE", "DD_AwsSns_ANALYTICS_SAMPLE_RATE"]), + "AwsEventBridge" => new("DD_TRACE_AWSEVENTBRIDGE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsEventBridge_ANALYTICS_SAMPLE_RATE", "DD_AwsEventBridge_ANALYTICS_SAMPLE_RATE"]), + "AwsStepFunctions" => new("DD_TRACE_AWSSTEPFUNCTIONS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsStepFunctions_ANALYTICS_SAMPLE_RATE", "DD_AwsStepFunctions_ANALYTICS_SAMPLE_RATE"]), + "AwsLambda" => new("DD_TRACE_AWSLAMBDA_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsLambda_ANALYTICS_SAMPLE_RATE", "DD_AwsLambda_ANALYTICS_SAMPLE_RATE"]), + "ILogger" => new("DD_TRACE_ILOGGER_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_ILogger_ANALYTICS_SAMPLE_RATE", "DD_ILogger_ANALYTICS_SAMPLE_RATE"]), + "Aerospike" => new("DD_TRACE_AEROSPIKE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Aerospike_ANALYTICS_SAMPLE_RATE", "DD_Aerospike_ANALYTICS_SAMPLE_RATE"]), + "AzureFunctions" => new("DD_TRACE_AZUREFUNCTIONS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AzureFunctions_ANALYTICS_SAMPLE_RATE", "DD_AzureFunctions_ANALYTICS_SAMPLE_RATE"]), + "Couchbase" => new("DD_TRACE_COUCHBASE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Couchbase_ANALYTICS_SAMPLE_RATE", "DD_Couchbase_ANALYTICS_SAMPLE_RATE"]), + "MySql" => new("DD_TRACE_MYSQL_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_MySql_ANALYTICS_SAMPLE_RATE", "DD_MySql_ANALYTICS_SAMPLE_RATE"]), + "Npgsql" => new("DD_TRACE_NPGSQL_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Npgsql_ANALYTICS_SAMPLE_RATE", "DD_Npgsql_ANALYTICS_SAMPLE_RATE"]), + "Oracle" => new("DD_TRACE_ORACLE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Oracle_ANALYTICS_SAMPLE_RATE", "DD_Oracle_ANALYTICS_SAMPLE_RATE"]), + "SqlClient" => new("DD_TRACE_SQLCLIENT_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_SqlClient_ANALYTICS_SAMPLE_RATE", "DD_SqlClient_ANALYTICS_SAMPLE_RATE"]), + "Sqlite" => new("DD_TRACE_SQLITE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Sqlite_ANALYTICS_SAMPLE_RATE", "DD_Sqlite_ANALYTICS_SAMPLE_RATE"]), + "Serilog" => new("DD_TRACE_SERILOG_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Serilog_ANALYTICS_SAMPLE_RATE", "DD_Serilog_ANALYTICS_SAMPLE_RATE"]), + "Log4Net" => new("DD_TRACE_LOG4NET_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Log4Net_ANALYTICS_SAMPLE_RATE", "DD_Log4Net_ANALYTICS_SAMPLE_RATE"]), + "NLog" => new("DD_TRACE_NLOG_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_NLog_ANALYTICS_SAMPLE_RATE", "DD_NLog_ANALYTICS_SAMPLE_RATE"]), + "TraceAnnotations" => new("DD_TRACE_TRACEANNOTATIONS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_TraceAnnotations_ANALYTICS_SAMPLE_RATE", "DD_TraceAnnotations_ANALYTICS_SAMPLE_RATE"]), + "Grpc" => new("DD_TRACE_GRPC_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Grpc_ANALYTICS_SAMPLE_RATE", "DD_Grpc_ANALYTICS_SAMPLE_RATE"]), + "Process" => new("DD_TRACE_PROCESS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Process_ANALYTICS_SAMPLE_RATE", "DD_Process_ANALYTICS_SAMPLE_RATE"]), + "HashAlgorithm" => new("DD_TRACE_HASHALGORITHM_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_HashAlgorithm_ANALYTICS_SAMPLE_RATE", "DD_HashAlgorithm_ANALYTICS_SAMPLE_RATE"]), + "SymmetricAlgorithm" => new("DD_TRACE_SYMMETRICALGORITHM_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_SymmetricAlgorithm_ANALYTICS_SAMPLE_RATE", "DD_SymmetricAlgorithm_ANALYTICS_SAMPLE_RATE"]), + "OpenTelemetry" => new("DD_TRACE_OPENTELEMETRY_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_OpenTelemetry_ANALYTICS_SAMPLE_RATE", "DD_OpenTelemetry_ANALYTICS_SAMPLE_RATE"]), + "PathTraversal" => new("DD_TRACE_PATHTRAVERSAL_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_PathTraversal_ANALYTICS_SAMPLE_RATE", "DD_PathTraversal_ANALYTICS_SAMPLE_RATE"]), + "Ldap" => new("DD_TRACE_LDAP_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Ldap_ANALYTICS_SAMPLE_RATE", "DD_Ldap_ANALYTICS_SAMPLE_RATE"]), + "Ssrf" => new("DD_TRACE_SSRF_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Ssrf_ANALYTICS_SAMPLE_RATE", "DD_Ssrf_ANALYTICS_SAMPLE_RATE"]), + "AwsKinesis" => new("DD_TRACE_AWSKINESIS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsKinesis_ANALYTICS_SAMPLE_RATE", "DD_AwsKinesis_ANALYTICS_SAMPLE_RATE"]), + "AzureServiceBus" => new("DD_TRACE_AZURESERVICEBUS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AzureServiceBus_ANALYTICS_SAMPLE_RATE", "DD_AzureServiceBus_ANALYTICS_SAMPLE_RATE"]), + "SystemRandom" => new("DD_TRACE_SYSTEMRANDOM_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_SystemRandom_ANALYTICS_SAMPLE_RATE", "DD_SystemRandom_ANALYTICS_SAMPLE_RATE"]), + "AwsDynamoDb" => new("DD_TRACE_AWSDYNAMODB_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsDynamoDb_ANALYTICS_SAMPLE_RATE", "DD_AwsDynamoDb_ANALYTICS_SAMPLE_RATE"]), + "HardcodedSecret" => new("DD_TRACE_HARDCODEDSECRET_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_HardcodedSecret_ANALYTICS_SAMPLE_RATE", "DD_HardcodedSecret_ANALYTICS_SAMPLE_RATE"]), + "IbmMq" => new("DD_TRACE_IBMMQ_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_IbmMq_ANALYTICS_SAMPLE_RATE", "DD_IbmMq_ANALYTICS_SAMPLE_RATE"]), + "Remoting" => new("DD_TRACE_REMOTING_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Remoting_ANALYTICS_SAMPLE_RATE", "DD_Remoting_ANALYTICS_SAMPLE_RATE"]), + "TrustBoundaryViolation" => new("DD_TRACE_TRUSTBOUNDARYVIOLATION_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_TrustBoundaryViolation_ANALYTICS_SAMPLE_RATE", "DD_TrustBoundaryViolation_ANALYTICS_SAMPLE_RATE"]), + "UnvalidatedRedirect" => new("DD_TRACE_UNVALIDATEDREDIRECT_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_UnvalidatedRedirect_ANALYTICS_SAMPLE_RATE", "DD_UnvalidatedRedirect_ANALYTICS_SAMPLE_RATE"]), + "TestPlatformAssemblyResolver" => new("DD_TRACE_TESTPLATFORMASSEMBLYRESOLVER_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_TestPlatformAssemblyResolver_ANALYTICS_SAMPLE_RATE", "DD_TestPlatformAssemblyResolver_ANALYTICS_SAMPLE_RATE"]), + "StackTraceLeak" => new("DD_TRACE_STACKTRACELEAK_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_StackTraceLeak_ANALYTICS_SAMPLE_RATE", "DD_StackTraceLeak_ANALYTICS_SAMPLE_RATE"]), + "XpathInjection" => new("DD_TRACE_XPATHINJECTION_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_XpathInjection_ANALYTICS_SAMPLE_RATE", "DD_XpathInjection_ANALYTICS_SAMPLE_RATE"]), + "ReflectionInjection" => new("DD_TRACE_REFLECTIONINJECTION_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_ReflectionInjection_ANALYTICS_SAMPLE_RATE", "DD_ReflectionInjection_ANALYTICS_SAMPLE_RATE"]), + "Xss" => new("DD_TRACE_XSS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Xss_ANALYTICS_SAMPLE_RATE", "DD_Xss_ANALYTICS_SAMPLE_RATE"]), + "NHibernate" => new("DD_TRACE_NHIBERNATE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_NHibernate_ANALYTICS_SAMPLE_RATE", "DD_NHibernate_ANALYTICS_SAMPLE_RATE"]), + "DotnetTest" => new("DD_TRACE_DOTNETTEST_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_DotnetTest_ANALYTICS_SAMPLE_RATE", "DD_DotnetTest_ANALYTICS_SAMPLE_RATE"]), + "Selenium" => new("DD_TRACE_SELENIUM_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Selenium_ANALYTICS_SAMPLE_RATE", "DD_Selenium_ANALYTICS_SAMPLE_RATE"]), + "DirectoryListingLeak" => new("DD_TRACE_DIRECTORYLISTINGLEAK_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_DirectoryListingLeak_ANALYTICS_SAMPLE_RATE", "DD_DirectoryListingLeak_ANALYTICS_SAMPLE_RATE"]), + "SessionTimeout" => new("DD_TRACE_SESSIONTIMEOUT_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_SessionTimeout_ANALYTICS_SAMPLE_RATE", "DD_SessionTimeout_ANALYTICS_SAMPLE_RATE"]), + "DatadogTraceManual" => new("DD_TRACE_DATADOGTRACEMANUAL_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_DatadogTraceManual_ANALYTICS_SAMPLE_RATE", "DD_DatadogTraceManual_ANALYTICS_SAMPLE_RATE"]), + "EmailHtmlInjection" => new("DD_TRACE_EMAILHTMLINJECTION_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_EmailHtmlInjection_ANALYTICS_SAMPLE_RATE", "DD_EmailHtmlInjection_ANALYTICS_SAMPLE_RATE"]), + "Protobuf" => new("DD_TRACE_PROTOBUF_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Protobuf_ANALYTICS_SAMPLE_RATE", "DD_Protobuf_ANALYTICS_SAMPLE_RATE"]), + "AzureEventHubs" => new("DD_TRACE_AZUREEVENTHUBS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AzureEventHubs_ANALYTICS_SAMPLE_RATE", "DD_AzureEventHubs_ANALYTICS_SAMPLE_RATE"]), + "DatadogTraceVersionConflict" => new("DD_TRACE_DATADOGTRACEVERSIONCONFLICT_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_DatadogTraceVersionConflict_ANALYTICS_SAMPLE_RATE", "DD_DatadogTraceVersionConflict_ANALYTICS_SAMPLE_RATE"]), + "Hangfire" => new("DD_TRACE_HANGFIRE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Hangfire_ANALYTICS_SAMPLE_RATE", "DD_Hangfire_ANALYTICS_SAMPLE_RATE"]), + _ => GetIntegrationAnalyticsSampleRateKeysFallback(integrationName) // we should never get here + }; + + private static System.Collections.Generic.KeyValuePair GetIntegrationEnabledKeysFallback(string integrationName) => + new(string.Format("DD_TRACE_{0}_ENABLED", integrationName.ToUpperInvariant()), + [ + string.Format("DD_TRACE_{0}_ENABLED", integrationName), + $"DD_{integrationName}_ENABLED" + ]); + + private static System.Collections.Generic.KeyValuePair GetIntegrationAnalyticsEnabledKeysFallback(string integrationName) => + new(string.Format("DD_TRACE_{0}_ANALYTICS_ENABLED", integrationName.ToUpperInvariant()), + [ + string.Format("DD_TRACE_{0}_ANALYTICS_ENABLED", integrationName), + $"DD_{integrationName}_ANALYTICS_ENABLED" + ]); + + private static System.Collections.Generic.KeyValuePair GetIntegrationAnalyticsSampleRateKeysFallback(string integrationName) => + new(string.Format("DD_TRACE_{0}_ANALYTICS_SAMPLE_RATE", integrationName.ToUpperInvariant()), + [ + string.Format("DD_TRACE_{0}_ANALYTICS_SAMPLE_RATE", integrationName), + $"DD_{integrationName}_ANALYTICS_SAMPLE_RATE" + ]); + } +} diff --git a/tracer/src/Datadog.Trace/Generated/netstandard2.0/Datadog.Trace.SourceGenerators/EnumExtensionsGenerator/IntegrationNameToKeys.g.cs b/tracer/src/Datadog.Trace/Generated/netstandard2.0/Datadog.Trace.SourceGenerators/EnumExtensionsGenerator/IntegrationNameToKeys.g.cs new file mode 100644 index 000000000000..1efa701f825a --- /dev/null +++ b/tracer/src/Datadog.Trace/Generated/netstandard2.0/Datadog.Trace.SourceGenerators/EnumExtensionsGenerator/IntegrationNameToKeys.g.cs @@ -0,0 +1,551 @@ +// +// Unless explicitly stated otherwise all files in this repository are licensed under the Apache 2 License. +// This product includes software developed at Datadog (https://www.datadoghq.com/). Copyright 2017 Datadog, Inc. +// +// + +#nullable enable + + +namespace Datadog.Trace.Configuration +{ + /// + /// Generated mapping of integration names to their configuration keys. + /// + internal static partial class IntegrationNameToKeys + { + private const string ObsoleteMessage = DeprecationMessages.AppAnalytics; + + /// + /// All integration enabled keys (canonical + aliases). + /// + [Datadog.Trace.SourceGenerators.TestingOnly] + public static string[] GetAllIntegrationEnabledKeys() => + [ + "DD_TRACE_HTTPMESSAGEHANDLER_ENABLED", "DD_TRACE_HttpMessageHandler_ENABLED", "DD_HttpMessageHandler_ENABLED", + "DD_TRACE_HTTPMESSAGEHANDLER_ANALYTICS_ENABLED", "DD_TRACE_HttpMessageHandler_ANALYTICS_ENABLED", "DD_HttpMessageHandler_ANALYTICS_ENABLED", + "DD_TRACE_HTTPMESSAGEHANDLER_ANALYTICS_SAMPLE_RATE", "DD_TRACE_HttpMessageHandler_ANALYTICS_SAMPLE_RATE", "DD_HttpMessageHandler_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_HTTPSOCKETSHANDLER_ENABLED", "DD_TRACE_HttpSocketsHandler_ENABLED", "DD_HttpSocketsHandler_ENABLED", + "DD_TRACE_HTTPSOCKETSHANDLER_ANALYTICS_ENABLED", "DD_TRACE_HttpSocketsHandler_ANALYTICS_ENABLED", "DD_HttpSocketsHandler_ANALYTICS_ENABLED", + "DD_TRACE_HTTPSOCKETSHANDLER_ANALYTICS_SAMPLE_RATE", "DD_TRACE_HttpSocketsHandler_ANALYTICS_SAMPLE_RATE", "DD_HttpSocketsHandler_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_WINHTTPHANDLER_ENABLED", "DD_TRACE_WinHttpHandler_ENABLED", "DD_WinHttpHandler_ENABLED", + "DD_TRACE_WINHTTPHANDLER_ANALYTICS_ENABLED", "DD_TRACE_WinHttpHandler_ANALYTICS_ENABLED", "DD_WinHttpHandler_ANALYTICS_ENABLED", + "DD_TRACE_WINHTTPHANDLER_ANALYTICS_SAMPLE_RATE", "DD_TRACE_WinHttpHandler_ANALYTICS_SAMPLE_RATE", "DD_WinHttpHandler_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_CURLHANDLER_ENABLED", "DD_TRACE_CurlHandler_ENABLED", "DD_CurlHandler_ENABLED", + "DD_TRACE_CURLHANDLER_ANALYTICS_ENABLED", "DD_TRACE_CurlHandler_ANALYTICS_ENABLED", "DD_CurlHandler_ANALYTICS_ENABLED", + "DD_TRACE_CURLHANDLER_ANALYTICS_SAMPLE_RATE", "DD_TRACE_CurlHandler_ANALYTICS_SAMPLE_RATE", "DD_CurlHandler_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_ASPNETCORE_ENABLED", "DD_TRACE_AspNetCore_ENABLED", "DD_AspNetCore_ENABLED", + "DD_TRACE_ASPNETCORE_ANALYTICS_ENABLED", "DD_TRACE_AspNetCore_ANALYTICS_ENABLED", "DD_AspNetCore_ANALYTICS_ENABLED", + "DD_TRACE_ASPNETCORE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AspNetCore_ANALYTICS_SAMPLE_RATE", "DD_AspNetCore_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_ADONET_ENABLED", "DD_TRACE_AdoNet_ENABLED", "DD_AdoNet_ENABLED", + "DD_TRACE_ADONET_ANALYTICS_ENABLED", "DD_TRACE_AdoNet_ANALYTICS_ENABLED", "DD_AdoNet_ANALYTICS_ENABLED", + "DD_TRACE_ADONET_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AdoNet_ANALYTICS_SAMPLE_RATE", "DD_AdoNet_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_ASPNET_ENABLED", "DD_TRACE_AspNet_ENABLED", "DD_AspNet_ENABLED", + "DD_TRACE_ASPNET_ANALYTICS_ENABLED", "DD_TRACE_AspNet_ANALYTICS_ENABLED", "DD_AspNet_ANALYTICS_ENABLED", + "DD_TRACE_ASPNET_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AspNet_ANALYTICS_SAMPLE_RATE", "DD_AspNet_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_ASPNETMVC_ENABLED", "DD_TRACE_AspNetMvc_ENABLED", "DD_AspNetMvc_ENABLED", + "DD_TRACE_ASPNETMVC_ANALYTICS_ENABLED", "DD_TRACE_AspNetMvc_ANALYTICS_ENABLED", "DD_AspNetMvc_ANALYTICS_ENABLED", + "DD_TRACE_ASPNETMVC_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AspNetMvc_ANALYTICS_SAMPLE_RATE", "DD_AspNetMvc_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_ASPNETWEBAPI2_ENABLED", "DD_TRACE_AspNetWebApi2_ENABLED", "DD_AspNetWebApi2_ENABLED", + "DD_TRACE_ASPNETWEBAPI2_ANALYTICS_ENABLED", "DD_TRACE_AspNetWebApi2_ANALYTICS_ENABLED", "DD_AspNetWebApi2_ANALYTICS_ENABLED", + "DD_TRACE_ASPNETWEBAPI2_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AspNetWebApi2_ANALYTICS_SAMPLE_RATE", "DD_AspNetWebApi2_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_GRAPHQL_ENABLED", "DD_TRACE_GraphQL_ENABLED", "DD_GraphQL_ENABLED", + "DD_TRACE_GRAPHQL_ANALYTICS_ENABLED", "DD_TRACE_GraphQL_ANALYTICS_ENABLED", "DD_GraphQL_ANALYTICS_ENABLED", + "DD_TRACE_GRAPHQL_ANALYTICS_SAMPLE_RATE", "DD_TRACE_GraphQL_ANALYTICS_SAMPLE_RATE", "DD_GraphQL_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_HOTCHOCOLATE_ENABLED", "DD_TRACE_HotChocolate_ENABLED", "DD_HotChocolate_ENABLED", + "DD_TRACE_HOTCHOCOLATE_ANALYTICS_ENABLED", "DD_TRACE_HotChocolate_ANALYTICS_ENABLED", "DD_HotChocolate_ANALYTICS_ENABLED", + "DD_TRACE_HOTCHOCOLATE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_HotChocolate_ANALYTICS_SAMPLE_RATE", "DD_HotChocolate_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_MONGODB_ENABLED", "DD_TRACE_MongoDb_ENABLED", "DD_MongoDb_ENABLED", + "DD_TRACE_MONGODB_ANALYTICS_ENABLED", "DD_TRACE_MongoDb_ANALYTICS_ENABLED", "DD_MongoDb_ANALYTICS_ENABLED", + "DD_TRACE_MONGODB_ANALYTICS_SAMPLE_RATE", "DD_TRACE_MongoDb_ANALYTICS_SAMPLE_RATE", "DD_MongoDb_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_XUNIT_ENABLED", "DD_TRACE_XUnit_ENABLED", "DD_XUnit_ENABLED", + "DD_TRACE_XUNIT_ANALYTICS_ENABLED", "DD_TRACE_XUnit_ANALYTICS_ENABLED", "DD_XUnit_ANALYTICS_ENABLED", + "DD_TRACE_XUNIT_ANALYTICS_SAMPLE_RATE", "DD_TRACE_XUnit_ANALYTICS_SAMPLE_RATE", "DD_XUnit_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_NUNIT_ENABLED", "DD_TRACE_NUnit_ENABLED", "DD_NUnit_ENABLED", + "DD_TRACE_NUNIT_ANALYTICS_ENABLED", "DD_TRACE_NUnit_ANALYTICS_ENABLED", "DD_NUnit_ANALYTICS_ENABLED", + "DD_TRACE_NUNIT_ANALYTICS_SAMPLE_RATE", "DD_TRACE_NUnit_ANALYTICS_SAMPLE_RATE", "DD_NUnit_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_MSTESTV2_ENABLED", "DD_TRACE_MsTestV2_ENABLED", "DD_MsTestV2_ENABLED", + "DD_TRACE_MSTESTV2_ANALYTICS_ENABLED", "DD_TRACE_MsTestV2_ANALYTICS_ENABLED", "DD_MsTestV2_ANALYTICS_ENABLED", + "DD_TRACE_MSTESTV2_ANALYTICS_SAMPLE_RATE", "DD_TRACE_MsTestV2_ANALYTICS_SAMPLE_RATE", "DD_MsTestV2_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_WCF_ENABLED", "DD_TRACE_Wcf_ENABLED", "DD_Wcf_ENABLED", + "DD_TRACE_WCF_ANALYTICS_ENABLED", "DD_TRACE_Wcf_ANALYTICS_ENABLED", "DD_Wcf_ANALYTICS_ENABLED", + "DD_TRACE_WCF_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Wcf_ANALYTICS_SAMPLE_RATE", "DD_Wcf_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_WEBREQUEST_ENABLED", "DD_TRACE_WebRequest_ENABLED", "DD_WebRequest_ENABLED", + "DD_TRACE_WEBREQUEST_ANALYTICS_ENABLED", "DD_TRACE_WebRequest_ANALYTICS_ENABLED", "DD_WebRequest_ANALYTICS_ENABLED", + "DD_TRACE_WEBREQUEST_ANALYTICS_SAMPLE_RATE", "DD_TRACE_WebRequest_ANALYTICS_SAMPLE_RATE", "DD_WebRequest_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_ELASTICSEARCHNET_ENABLED", "DD_TRACE_ElasticsearchNet_ENABLED", "DD_ElasticsearchNet_ENABLED", + "DD_TRACE_ELASTICSEARCHNET_ANALYTICS_ENABLED", "DD_TRACE_ElasticsearchNet_ANALYTICS_ENABLED", "DD_ElasticsearchNet_ANALYTICS_ENABLED", + "DD_TRACE_ELASTICSEARCHNET_ANALYTICS_SAMPLE_RATE", "DD_TRACE_ElasticsearchNet_ANALYTICS_SAMPLE_RATE", "DD_ElasticsearchNet_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SERVICESTACKREDIS_ENABLED", "DD_TRACE_ServiceStackRedis_ENABLED", "DD_ServiceStackRedis_ENABLED", + "DD_TRACE_SERVICESTACKREDIS_ANALYTICS_ENABLED", "DD_TRACE_ServiceStackRedis_ANALYTICS_ENABLED", "DD_ServiceStackRedis_ANALYTICS_ENABLED", + "DD_TRACE_SERVICESTACKREDIS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_ServiceStackRedis_ANALYTICS_SAMPLE_RATE", "DD_ServiceStackRedis_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_STACKEXCHANGEREDIS_ENABLED", "DD_TRACE_StackExchangeRedis_ENABLED", "DD_StackExchangeRedis_ENABLED", + "DD_TRACE_STACKEXCHANGEREDIS_ANALYTICS_ENABLED", "DD_TRACE_StackExchangeRedis_ANALYTICS_ENABLED", "DD_StackExchangeRedis_ANALYTICS_ENABLED", + "DD_TRACE_STACKEXCHANGEREDIS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_StackExchangeRedis_ANALYTICS_SAMPLE_RATE", "DD_StackExchangeRedis_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SERVICEREMOTING_ENABLED", "DD_TRACE_ServiceRemoting_ENABLED", "DD_ServiceRemoting_ENABLED", + "DD_TRACE_SERVICEREMOTING_ANALYTICS_ENABLED", "DD_TRACE_ServiceRemoting_ANALYTICS_ENABLED", "DD_ServiceRemoting_ANALYTICS_ENABLED", + "DD_TRACE_SERVICEREMOTING_ANALYTICS_SAMPLE_RATE", "DD_TRACE_ServiceRemoting_ANALYTICS_SAMPLE_RATE", "DD_ServiceRemoting_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_RABBITMQ_ENABLED", "DD_TRACE_RabbitMQ_ENABLED", "DD_RabbitMQ_ENABLED", + "DD_TRACE_RABBITMQ_ANALYTICS_ENABLED", "DD_TRACE_RabbitMQ_ANALYTICS_ENABLED", "DD_RabbitMQ_ANALYTICS_ENABLED", + "DD_TRACE_RABBITMQ_ANALYTICS_SAMPLE_RATE", "DD_TRACE_RabbitMQ_ANALYTICS_SAMPLE_RATE", "DD_RabbitMQ_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_MSMQ_ENABLED", "DD_TRACE_Msmq_ENABLED", "DD_Msmq_ENABLED", + "DD_TRACE_MSMQ_ANALYTICS_ENABLED", "DD_TRACE_Msmq_ANALYTICS_ENABLED", "DD_Msmq_ANALYTICS_ENABLED", + "DD_TRACE_MSMQ_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Msmq_ANALYTICS_SAMPLE_RATE", "DD_Msmq_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_KAFKA_ENABLED", "DD_TRACE_Kafka_ENABLED", "DD_Kafka_ENABLED", + "DD_TRACE_KAFKA_ANALYTICS_ENABLED", "DD_TRACE_Kafka_ANALYTICS_ENABLED", "DD_Kafka_ANALYTICS_ENABLED", + "DD_TRACE_KAFKA_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Kafka_ANALYTICS_SAMPLE_RATE", "DD_Kafka_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_COSMOSDB_ENABLED", "DD_TRACE_CosmosDb_ENABLED", "DD_CosmosDb_ENABLED", + "DD_TRACE_COSMOSDB_ANALYTICS_ENABLED", "DD_TRACE_CosmosDb_ANALYTICS_ENABLED", "DD_CosmosDb_ANALYTICS_ENABLED", + "DD_TRACE_COSMOSDB_ANALYTICS_SAMPLE_RATE", "DD_TRACE_CosmosDb_ANALYTICS_SAMPLE_RATE", "DD_CosmosDb_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSS3_ENABLED", "DD_TRACE_AwsS3_ENABLED", "DD_AwsS3_ENABLED", + "DD_TRACE_AWSS3_ANALYTICS_ENABLED", "DD_TRACE_AwsS3_ANALYTICS_ENABLED", "DD_AwsS3_ANALYTICS_ENABLED", + "DD_TRACE_AWSS3_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsS3_ANALYTICS_SAMPLE_RATE", "DD_AwsS3_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSSDK_ENABLED", "DD_TRACE_AwsSdk_ENABLED", "DD_AwsSdk_ENABLED", + "DD_TRACE_AWSSDK_ANALYTICS_ENABLED", "DD_TRACE_AwsSdk_ANALYTICS_ENABLED", "DD_AwsSdk_ANALYTICS_ENABLED", + "DD_TRACE_AWSSDK_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsSdk_ANALYTICS_SAMPLE_RATE", "DD_AwsSdk_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSSQS_ENABLED", "DD_TRACE_AwsSqs_ENABLED", "DD_AwsSqs_ENABLED", + "DD_TRACE_AWSSQS_ANALYTICS_ENABLED", "DD_TRACE_AwsSqs_ANALYTICS_ENABLED", "DD_AwsSqs_ANALYTICS_ENABLED", + "DD_TRACE_AWSSQS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsSqs_ANALYTICS_SAMPLE_RATE", "DD_AwsSqs_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSSNS_ENABLED", "DD_TRACE_AwsSns_ENABLED", "DD_AwsSns_ENABLED", + "DD_TRACE_AWSSNS_ANALYTICS_ENABLED", "DD_TRACE_AwsSns_ANALYTICS_ENABLED", "DD_AwsSns_ANALYTICS_ENABLED", + "DD_TRACE_AWSSNS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsSns_ANALYTICS_SAMPLE_RATE", "DD_AwsSns_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSEVENTBRIDGE_ENABLED", "DD_TRACE_AwsEventBridge_ENABLED", "DD_AwsEventBridge_ENABLED", + "DD_TRACE_AWSEVENTBRIDGE_ANALYTICS_ENABLED", "DD_TRACE_AwsEventBridge_ANALYTICS_ENABLED", "DD_AwsEventBridge_ANALYTICS_ENABLED", + "DD_TRACE_AWSEVENTBRIDGE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsEventBridge_ANALYTICS_SAMPLE_RATE", "DD_AwsEventBridge_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSSTEPFUNCTIONS_ENABLED", "DD_TRACE_AwsStepFunctions_ENABLED", "DD_AwsStepFunctions_ENABLED", + "DD_TRACE_AWSSTEPFUNCTIONS_ANALYTICS_ENABLED", "DD_TRACE_AwsStepFunctions_ANALYTICS_ENABLED", "DD_AwsStepFunctions_ANALYTICS_ENABLED", + "DD_TRACE_AWSSTEPFUNCTIONS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsStepFunctions_ANALYTICS_SAMPLE_RATE", "DD_AwsStepFunctions_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSLAMBDA_ENABLED", "DD_TRACE_AwsLambda_ENABLED", "DD_AwsLambda_ENABLED", + "DD_TRACE_AWSLAMBDA_ANALYTICS_ENABLED", "DD_TRACE_AwsLambda_ANALYTICS_ENABLED", "DD_AwsLambda_ANALYTICS_ENABLED", + "DD_TRACE_AWSLAMBDA_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsLambda_ANALYTICS_SAMPLE_RATE", "DD_AwsLambda_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_ILOGGER_ENABLED", "DD_TRACE_ILogger_ENABLED", "DD_ILogger_ENABLED", + "DD_TRACE_ILOGGER_ANALYTICS_ENABLED", "DD_TRACE_ILogger_ANALYTICS_ENABLED", "DD_ILogger_ANALYTICS_ENABLED", + "DD_TRACE_ILOGGER_ANALYTICS_SAMPLE_RATE", "DD_TRACE_ILogger_ANALYTICS_SAMPLE_RATE", "DD_ILogger_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AEROSPIKE_ENABLED", "DD_TRACE_Aerospike_ENABLED", "DD_Aerospike_ENABLED", + "DD_TRACE_AEROSPIKE_ANALYTICS_ENABLED", "DD_TRACE_Aerospike_ANALYTICS_ENABLED", "DD_Aerospike_ANALYTICS_ENABLED", + "DD_TRACE_AEROSPIKE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Aerospike_ANALYTICS_SAMPLE_RATE", "DD_Aerospike_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AZUREFUNCTIONS_ENABLED", "DD_TRACE_AzureFunctions_ENABLED", "DD_AzureFunctions_ENABLED", + "DD_TRACE_AZUREFUNCTIONS_ANALYTICS_ENABLED", "DD_TRACE_AzureFunctions_ANALYTICS_ENABLED", "DD_AzureFunctions_ANALYTICS_ENABLED", + "DD_TRACE_AZUREFUNCTIONS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AzureFunctions_ANALYTICS_SAMPLE_RATE", "DD_AzureFunctions_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_COUCHBASE_ENABLED", "DD_TRACE_Couchbase_ENABLED", "DD_Couchbase_ENABLED", + "DD_TRACE_COUCHBASE_ANALYTICS_ENABLED", "DD_TRACE_Couchbase_ANALYTICS_ENABLED", "DD_Couchbase_ANALYTICS_ENABLED", + "DD_TRACE_COUCHBASE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Couchbase_ANALYTICS_SAMPLE_RATE", "DD_Couchbase_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_MYSQL_ENABLED", "DD_TRACE_MySql_ENABLED", "DD_MySql_ENABLED", + "DD_TRACE_MYSQL_ANALYTICS_ENABLED", "DD_TRACE_MySql_ANALYTICS_ENABLED", "DD_MySql_ANALYTICS_ENABLED", + "DD_TRACE_MYSQL_ANALYTICS_SAMPLE_RATE", "DD_TRACE_MySql_ANALYTICS_SAMPLE_RATE", "DD_MySql_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_NPGSQL_ENABLED", "DD_TRACE_Npgsql_ENABLED", "DD_Npgsql_ENABLED", + "DD_TRACE_NPGSQL_ANALYTICS_ENABLED", "DD_TRACE_Npgsql_ANALYTICS_ENABLED", "DD_Npgsql_ANALYTICS_ENABLED", + "DD_TRACE_NPGSQL_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Npgsql_ANALYTICS_SAMPLE_RATE", "DD_Npgsql_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_ORACLE_ENABLED", "DD_TRACE_Oracle_ENABLED", "DD_Oracle_ENABLED", + "DD_TRACE_ORACLE_ANALYTICS_ENABLED", "DD_TRACE_Oracle_ANALYTICS_ENABLED", "DD_Oracle_ANALYTICS_ENABLED", + "DD_TRACE_ORACLE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Oracle_ANALYTICS_SAMPLE_RATE", "DD_Oracle_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SQLCLIENT_ENABLED", "DD_TRACE_SqlClient_ENABLED", "DD_SqlClient_ENABLED", + "DD_TRACE_SQLCLIENT_ANALYTICS_ENABLED", "DD_TRACE_SqlClient_ANALYTICS_ENABLED", "DD_SqlClient_ANALYTICS_ENABLED", + "DD_TRACE_SQLCLIENT_ANALYTICS_SAMPLE_RATE", "DD_TRACE_SqlClient_ANALYTICS_SAMPLE_RATE", "DD_SqlClient_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SQLITE_ENABLED", "DD_TRACE_Sqlite_ENABLED", "DD_Sqlite_ENABLED", + "DD_TRACE_SQLITE_ANALYTICS_ENABLED", "DD_TRACE_Sqlite_ANALYTICS_ENABLED", "DD_Sqlite_ANALYTICS_ENABLED", + "DD_TRACE_SQLITE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Sqlite_ANALYTICS_SAMPLE_RATE", "DD_Sqlite_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SERILOG_ENABLED", "DD_TRACE_Serilog_ENABLED", "DD_Serilog_ENABLED", + "DD_TRACE_SERILOG_ANALYTICS_ENABLED", "DD_TRACE_Serilog_ANALYTICS_ENABLED", "DD_Serilog_ANALYTICS_ENABLED", + "DD_TRACE_SERILOG_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Serilog_ANALYTICS_SAMPLE_RATE", "DD_Serilog_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_LOG4NET_ENABLED", "DD_TRACE_Log4Net_ENABLED", "DD_Log4Net_ENABLED", + "DD_TRACE_LOG4NET_ANALYTICS_ENABLED", "DD_TRACE_Log4Net_ANALYTICS_ENABLED", "DD_Log4Net_ANALYTICS_ENABLED", + "DD_TRACE_LOG4NET_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Log4Net_ANALYTICS_SAMPLE_RATE", "DD_Log4Net_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_NLOG_ENABLED", "DD_TRACE_NLog_ENABLED", "DD_NLog_ENABLED", + "DD_TRACE_NLOG_ANALYTICS_ENABLED", "DD_TRACE_NLog_ANALYTICS_ENABLED", "DD_NLog_ANALYTICS_ENABLED", + "DD_TRACE_NLOG_ANALYTICS_SAMPLE_RATE", "DD_TRACE_NLog_ANALYTICS_SAMPLE_RATE", "DD_NLog_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_TRACEANNOTATIONS_ENABLED", "DD_TRACE_TraceAnnotations_ENABLED", "DD_TraceAnnotations_ENABLED", + "DD_TRACE_TRACEANNOTATIONS_ANALYTICS_ENABLED", "DD_TRACE_TraceAnnotations_ANALYTICS_ENABLED", "DD_TraceAnnotations_ANALYTICS_ENABLED", + "DD_TRACE_TRACEANNOTATIONS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_TraceAnnotations_ANALYTICS_SAMPLE_RATE", "DD_TraceAnnotations_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_GRPC_ENABLED", "DD_TRACE_Grpc_ENABLED", "DD_Grpc_ENABLED", + "DD_TRACE_GRPC_ANALYTICS_ENABLED", "DD_TRACE_Grpc_ANALYTICS_ENABLED", "DD_Grpc_ANALYTICS_ENABLED", + "DD_TRACE_GRPC_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Grpc_ANALYTICS_SAMPLE_RATE", "DD_Grpc_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_PROCESS_ENABLED", "DD_TRACE_Process_ENABLED", "DD_Process_ENABLED", + "DD_TRACE_PROCESS_ANALYTICS_ENABLED", "DD_TRACE_Process_ANALYTICS_ENABLED", "DD_Process_ANALYTICS_ENABLED", + "DD_TRACE_PROCESS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Process_ANALYTICS_SAMPLE_RATE", "DD_Process_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_HASHALGORITHM_ENABLED", "DD_TRACE_HashAlgorithm_ENABLED", "DD_HashAlgorithm_ENABLED", + "DD_TRACE_HASHALGORITHM_ANALYTICS_ENABLED", "DD_TRACE_HashAlgorithm_ANALYTICS_ENABLED", "DD_HashAlgorithm_ANALYTICS_ENABLED", + "DD_TRACE_HASHALGORITHM_ANALYTICS_SAMPLE_RATE", "DD_TRACE_HashAlgorithm_ANALYTICS_SAMPLE_RATE", "DD_HashAlgorithm_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SYMMETRICALGORITHM_ENABLED", "DD_TRACE_SymmetricAlgorithm_ENABLED", "DD_SymmetricAlgorithm_ENABLED", + "DD_TRACE_SYMMETRICALGORITHM_ANALYTICS_ENABLED", "DD_TRACE_SymmetricAlgorithm_ANALYTICS_ENABLED", "DD_SymmetricAlgorithm_ANALYTICS_ENABLED", + "DD_TRACE_SYMMETRICALGORITHM_ANALYTICS_SAMPLE_RATE", "DD_TRACE_SymmetricAlgorithm_ANALYTICS_SAMPLE_RATE", "DD_SymmetricAlgorithm_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_OPENTELEMETRY_ENABLED", "DD_TRACE_OpenTelemetry_ENABLED", "DD_OpenTelemetry_ENABLED", + "DD_TRACE_OPENTELEMETRY_ANALYTICS_ENABLED", "DD_TRACE_OpenTelemetry_ANALYTICS_ENABLED", "DD_OpenTelemetry_ANALYTICS_ENABLED", + "DD_TRACE_OPENTELEMETRY_ANALYTICS_SAMPLE_RATE", "DD_TRACE_OpenTelemetry_ANALYTICS_SAMPLE_RATE", "DD_OpenTelemetry_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_PATHTRAVERSAL_ENABLED", "DD_TRACE_PathTraversal_ENABLED", "DD_PathTraversal_ENABLED", + "DD_TRACE_PATHTRAVERSAL_ANALYTICS_ENABLED", "DD_TRACE_PathTraversal_ANALYTICS_ENABLED", "DD_PathTraversal_ANALYTICS_ENABLED", + "DD_TRACE_PATHTRAVERSAL_ANALYTICS_SAMPLE_RATE", "DD_TRACE_PathTraversal_ANALYTICS_SAMPLE_RATE", "DD_PathTraversal_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_LDAP_ENABLED", "DD_TRACE_Ldap_ENABLED", "DD_Ldap_ENABLED", + "DD_TRACE_LDAP_ANALYTICS_ENABLED", "DD_TRACE_Ldap_ANALYTICS_ENABLED", "DD_Ldap_ANALYTICS_ENABLED", + "DD_TRACE_LDAP_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Ldap_ANALYTICS_SAMPLE_RATE", "DD_Ldap_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SSRF_ENABLED", "DD_TRACE_Ssrf_ENABLED", "DD_Ssrf_ENABLED", + "DD_TRACE_SSRF_ANALYTICS_ENABLED", "DD_TRACE_Ssrf_ANALYTICS_ENABLED", "DD_Ssrf_ANALYTICS_ENABLED", + "DD_TRACE_SSRF_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Ssrf_ANALYTICS_SAMPLE_RATE", "DD_Ssrf_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSKINESIS_ENABLED", "DD_TRACE_AwsKinesis_ENABLED", "DD_AwsKinesis_ENABLED", + "DD_TRACE_AWSKINESIS_ANALYTICS_ENABLED", "DD_TRACE_AwsKinesis_ANALYTICS_ENABLED", "DD_AwsKinesis_ANALYTICS_ENABLED", + "DD_TRACE_AWSKINESIS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsKinesis_ANALYTICS_SAMPLE_RATE", "DD_AwsKinesis_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AZURESERVICEBUS_ENABLED", "DD_TRACE_AzureServiceBus_ENABLED", "DD_AzureServiceBus_ENABLED", + "DD_TRACE_AZURESERVICEBUS_ANALYTICS_ENABLED", "DD_TRACE_AzureServiceBus_ANALYTICS_ENABLED", "DD_AzureServiceBus_ANALYTICS_ENABLED", + "DD_TRACE_AZURESERVICEBUS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AzureServiceBus_ANALYTICS_SAMPLE_RATE", "DD_AzureServiceBus_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SYSTEMRANDOM_ENABLED", "DD_TRACE_SystemRandom_ENABLED", "DD_SystemRandom_ENABLED", + "DD_TRACE_SYSTEMRANDOM_ANALYTICS_ENABLED", "DD_TRACE_SystemRandom_ANALYTICS_ENABLED", "DD_SystemRandom_ANALYTICS_ENABLED", + "DD_TRACE_SYSTEMRANDOM_ANALYTICS_SAMPLE_RATE", "DD_TRACE_SystemRandom_ANALYTICS_SAMPLE_RATE", "DD_SystemRandom_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSDYNAMODB_ENABLED", "DD_TRACE_AwsDynamoDb_ENABLED", "DD_AwsDynamoDb_ENABLED", + "DD_TRACE_AWSDYNAMODB_ANALYTICS_ENABLED", "DD_TRACE_AwsDynamoDb_ANALYTICS_ENABLED", "DD_AwsDynamoDb_ANALYTICS_ENABLED", + "DD_TRACE_AWSDYNAMODB_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsDynamoDb_ANALYTICS_SAMPLE_RATE", "DD_AwsDynamoDb_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_HARDCODEDSECRET_ENABLED", "DD_TRACE_HardcodedSecret_ENABLED", "DD_HardcodedSecret_ENABLED", + "DD_TRACE_HARDCODEDSECRET_ANALYTICS_ENABLED", "DD_TRACE_HardcodedSecret_ANALYTICS_ENABLED", "DD_HardcodedSecret_ANALYTICS_ENABLED", + "DD_TRACE_HARDCODEDSECRET_ANALYTICS_SAMPLE_RATE", "DD_TRACE_HardcodedSecret_ANALYTICS_SAMPLE_RATE", "DD_HardcodedSecret_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_IBMMQ_ENABLED", "DD_TRACE_IbmMq_ENABLED", "DD_IbmMq_ENABLED", + "DD_TRACE_IBMMQ_ANALYTICS_ENABLED", "DD_TRACE_IbmMq_ANALYTICS_ENABLED", "DD_IbmMq_ANALYTICS_ENABLED", + "DD_TRACE_IBMMQ_ANALYTICS_SAMPLE_RATE", "DD_TRACE_IbmMq_ANALYTICS_SAMPLE_RATE", "DD_IbmMq_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_REMOTING_ENABLED", "DD_TRACE_Remoting_ENABLED", "DD_Remoting_ENABLED", + "DD_TRACE_REMOTING_ANALYTICS_ENABLED", "DD_TRACE_Remoting_ANALYTICS_ENABLED", "DD_Remoting_ANALYTICS_ENABLED", + "DD_TRACE_REMOTING_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Remoting_ANALYTICS_SAMPLE_RATE", "DD_Remoting_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_TRUSTBOUNDARYVIOLATION_ENABLED", "DD_TRACE_TrustBoundaryViolation_ENABLED", "DD_TrustBoundaryViolation_ENABLED", + "DD_TRACE_TRUSTBOUNDARYVIOLATION_ANALYTICS_ENABLED", "DD_TRACE_TrustBoundaryViolation_ANALYTICS_ENABLED", "DD_TrustBoundaryViolation_ANALYTICS_ENABLED", + "DD_TRACE_TRUSTBOUNDARYVIOLATION_ANALYTICS_SAMPLE_RATE", "DD_TRACE_TrustBoundaryViolation_ANALYTICS_SAMPLE_RATE", "DD_TrustBoundaryViolation_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_UNVALIDATEDREDIRECT_ENABLED", "DD_TRACE_UnvalidatedRedirect_ENABLED", "DD_UnvalidatedRedirect_ENABLED", + "DD_TRACE_UNVALIDATEDREDIRECT_ANALYTICS_ENABLED", "DD_TRACE_UnvalidatedRedirect_ANALYTICS_ENABLED", "DD_UnvalidatedRedirect_ANALYTICS_ENABLED", + "DD_TRACE_UNVALIDATEDREDIRECT_ANALYTICS_SAMPLE_RATE", "DD_TRACE_UnvalidatedRedirect_ANALYTICS_SAMPLE_RATE", "DD_UnvalidatedRedirect_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_TESTPLATFORMASSEMBLYRESOLVER_ENABLED", "DD_TRACE_TestPlatformAssemblyResolver_ENABLED", "DD_TestPlatformAssemblyResolver_ENABLED", + "DD_TRACE_TESTPLATFORMASSEMBLYRESOLVER_ANALYTICS_ENABLED", "DD_TRACE_TestPlatformAssemblyResolver_ANALYTICS_ENABLED", "DD_TestPlatformAssemblyResolver_ANALYTICS_ENABLED", + "DD_TRACE_TESTPLATFORMASSEMBLYRESOLVER_ANALYTICS_SAMPLE_RATE", "DD_TRACE_TestPlatformAssemblyResolver_ANALYTICS_SAMPLE_RATE", "DD_TestPlatformAssemblyResolver_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_STACKTRACELEAK_ENABLED", "DD_TRACE_StackTraceLeak_ENABLED", "DD_StackTraceLeak_ENABLED", + "DD_TRACE_STACKTRACELEAK_ANALYTICS_ENABLED", "DD_TRACE_StackTraceLeak_ANALYTICS_ENABLED", "DD_StackTraceLeak_ANALYTICS_ENABLED", + "DD_TRACE_STACKTRACELEAK_ANALYTICS_SAMPLE_RATE", "DD_TRACE_StackTraceLeak_ANALYTICS_SAMPLE_RATE", "DD_StackTraceLeak_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_XPATHINJECTION_ENABLED", "DD_TRACE_XpathInjection_ENABLED", "DD_XpathInjection_ENABLED", + "DD_TRACE_XPATHINJECTION_ANALYTICS_ENABLED", "DD_TRACE_XpathInjection_ANALYTICS_ENABLED", "DD_XpathInjection_ANALYTICS_ENABLED", + "DD_TRACE_XPATHINJECTION_ANALYTICS_SAMPLE_RATE", "DD_TRACE_XpathInjection_ANALYTICS_SAMPLE_RATE", "DD_XpathInjection_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_REFLECTIONINJECTION_ENABLED", "DD_TRACE_ReflectionInjection_ENABLED", "DD_ReflectionInjection_ENABLED", + "DD_TRACE_REFLECTIONINJECTION_ANALYTICS_ENABLED", "DD_TRACE_ReflectionInjection_ANALYTICS_ENABLED", "DD_ReflectionInjection_ANALYTICS_ENABLED", + "DD_TRACE_REFLECTIONINJECTION_ANALYTICS_SAMPLE_RATE", "DD_TRACE_ReflectionInjection_ANALYTICS_SAMPLE_RATE", "DD_ReflectionInjection_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_XSS_ENABLED", "DD_TRACE_Xss_ENABLED", "DD_Xss_ENABLED", + "DD_TRACE_XSS_ANALYTICS_ENABLED", "DD_TRACE_Xss_ANALYTICS_ENABLED", "DD_Xss_ANALYTICS_ENABLED", + "DD_TRACE_XSS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Xss_ANALYTICS_SAMPLE_RATE", "DD_Xss_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_NHIBERNATE_ENABLED", "DD_TRACE_NHibernate_ENABLED", "DD_NHibernate_ENABLED", + "DD_TRACE_NHIBERNATE_ANALYTICS_ENABLED", "DD_TRACE_NHibernate_ANALYTICS_ENABLED", "DD_NHibernate_ANALYTICS_ENABLED", + "DD_TRACE_NHIBERNATE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_NHibernate_ANALYTICS_SAMPLE_RATE", "DD_NHibernate_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_DOTNETTEST_ENABLED", "DD_TRACE_DotnetTest_ENABLED", "DD_DotnetTest_ENABLED", + "DD_TRACE_DOTNETTEST_ANALYTICS_ENABLED", "DD_TRACE_DotnetTest_ANALYTICS_ENABLED", "DD_DotnetTest_ANALYTICS_ENABLED", + "DD_TRACE_DOTNETTEST_ANALYTICS_SAMPLE_RATE", "DD_TRACE_DotnetTest_ANALYTICS_SAMPLE_RATE", "DD_DotnetTest_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SELENIUM_ENABLED", "DD_TRACE_Selenium_ENABLED", "DD_Selenium_ENABLED", + "DD_TRACE_SELENIUM_ANALYTICS_ENABLED", "DD_TRACE_Selenium_ANALYTICS_ENABLED", "DD_Selenium_ANALYTICS_ENABLED", + "DD_TRACE_SELENIUM_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Selenium_ANALYTICS_SAMPLE_RATE", "DD_Selenium_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_DIRECTORYLISTINGLEAK_ENABLED", "DD_TRACE_DirectoryListingLeak_ENABLED", "DD_DirectoryListingLeak_ENABLED", + "DD_TRACE_DIRECTORYLISTINGLEAK_ANALYTICS_ENABLED", "DD_TRACE_DirectoryListingLeak_ANALYTICS_ENABLED", "DD_DirectoryListingLeak_ANALYTICS_ENABLED", + "DD_TRACE_DIRECTORYLISTINGLEAK_ANALYTICS_SAMPLE_RATE", "DD_TRACE_DirectoryListingLeak_ANALYTICS_SAMPLE_RATE", "DD_DirectoryListingLeak_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_SESSIONTIMEOUT_ENABLED", "DD_TRACE_SessionTimeout_ENABLED", "DD_SessionTimeout_ENABLED", + "DD_TRACE_SESSIONTIMEOUT_ANALYTICS_ENABLED", "DD_TRACE_SessionTimeout_ANALYTICS_ENABLED", "DD_SessionTimeout_ANALYTICS_ENABLED", + "DD_TRACE_SESSIONTIMEOUT_ANALYTICS_SAMPLE_RATE", "DD_TRACE_SessionTimeout_ANALYTICS_SAMPLE_RATE", "DD_SessionTimeout_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_DATADOGTRACEMANUAL_ENABLED", "DD_TRACE_DatadogTraceManual_ENABLED", "DD_DatadogTraceManual_ENABLED", + "DD_TRACE_DATADOGTRACEMANUAL_ANALYTICS_ENABLED", "DD_TRACE_DatadogTraceManual_ANALYTICS_ENABLED", "DD_DatadogTraceManual_ANALYTICS_ENABLED", + "DD_TRACE_DATADOGTRACEMANUAL_ANALYTICS_SAMPLE_RATE", "DD_TRACE_DatadogTraceManual_ANALYTICS_SAMPLE_RATE", "DD_DatadogTraceManual_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_EMAILHTMLINJECTION_ENABLED", "DD_TRACE_EmailHtmlInjection_ENABLED", "DD_EmailHtmlInjection_ENABLED", + "DD_TRACE_EMAILHTMLINJECTION_ANALYTICS_ENABLED", "DD_TRACE_EmailHtmlInjection_ANALYTICS_ENABLED", "DD_EmailHtmlInjection_ANALYTICS_ENABLED", + "DD_TRACE_EMAILHTMLINJECTION_ANALYTICS_SAMPLE_RATE", "DD_TRACE_EmailHtmlInjection_ANALYTICS_SAMPLE_RATE", "DD_EmailHtmlInjection_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_PROTOBUF_ENABLED", "DD_TRACE_Protobuf_ENABLED", "DD_Protobuf_ENABLED", + "DD_TRACE_PROTOBUF_ANALYTICS_ENABLED", "DD_TRACE_Protobuf_ANALYTICS_ENABLED", "DD_Protobuf_ANALYTICS_ENABLED", + "DD_TRACE_PROTOBUF_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Protobuf_ANALYTICS_SAMPLE_RATE", "DD_Protobuf_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AZUREEVENTHUBS_ENABLED", "DD_TRACE_AzureEventHubs_ENABLED", "DD_AzureEventHubs_ENABLED", + "DD_TRACE_AZUREEVENTHUBS_ANALYTICS_ENABLED", "DD_TRACE_AzureEventHubs_ANALYTICS_ENABLED", "DD_AzureEventHubs_ANALYTICS_ENABLED", + "DD_TRACE_AZUREEVENTHUBS_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AzureEventHubs_ANALYTICS_SAMPLE_RATE", "DD_AzureEventHubs_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_DATADOGTRACEVERSIONCONFLICT_ENABLED", "DD_TRACE_DatadogTraceVersionConflict_ENABLED", "DD_DatadogTraceVersionConflict_ENABLED", + "DD_TRACE_DATADOGTRACEVERSIONCONFLICT_ANALYTICS_ENABLED", "DD_TRACE_DatadogTraceVersionConflict_ANALYTICS_ENABLED", "DD_DatadogTraceVersionConflict_ANALYTICS_ENABLED", + "DD_TRACE_DATADOGTRACEVERSIONCONFLICT_ANALYTICS_SAMPLE_RATE", "DD_TRACE_DatadogTraceVersionConflict_ANALYTICS_SAMPLE_RATE", "DD_DatadogTraceVersionConflict_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_HANGFIRE_ENABLED", "DD_TRACE_Hangfire_ENABLED", "DD_Hangfire_ENABLED", + "DD_TRACE_HANGFIRE_ANALYTICS_ENABLED", "DD_TRACE_Hangfire_ANALYTICS_ENABLED", "DD_Hangfire_ANALYTICS_ENABLED", + "DD_TRACE_HANGFIRE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_Hangfire_ANALYTICS_SAMPLE_RATE", "DD_Hangfire_ANALYTICS_SAMPLE_RATE", + ]; + /// + /// Gets the configuration keys for the specified integration name. + /// Returns a KeyValuePair where Key is the canonical key and Value is an array of aliases. + /// + /// The integration name + /// KeyValuePair with canonical key and aliases + public static System.Collections.Generic.KeyValuePair GetIntegrationEnabledKeys(string integrationName) => + integrationName switch + { + "HttpMessageHandler" => new("DD_TRACE_HTTPMESSAGEHANDLER_ENABLED", ["DD_TRACE_HttpMessageHandler_ENABLED", "DD_HttpMessageHandler_ENABLED"]), + "HttpSocketsHandler" => new("DD_TRACE_HTTPSOCKETSHANDLER_ENABLED", ["DD_TRACE_HttpSocketsHandler_ENABLED", "DD_HttpSocketsHandler_ENABLED"]), + "WinHttpHandler" => new("DD_TRACE_WINHTTPHANDLER_ENABLED", ["DD_TRACE_WinHttpHandler_ENABLED", "DD_WinHttpHandler_ENABLED"]), + "CurlHandler" => new("DD_TRACE_CURLHANDLER_ENABLED", ["DD_TRACE_CurlHandler_ENABLED", "DD_CurlHandler_ENABLED"]), + "AspNetCore" => new("DD_TRACE_ASPNETCORE_ENABLED", ["DD_TRACE_AspNetCore_ENABLED", "DD_AspNetCore_ENABLED"]), + "AdoNet" => new("DD_TRACE_ADONET_ENABLED", ["DD_TRACE_AdoNet_ENABLED", "DD_AdoNet_ENABLED"]), + "AspNet" => new("DD_TRACE_ASPNET_ENABLED", ["DD_TRACE_AspNet_ENABLED", "DD_AspNet_ENABLED"]), + "AspNetMvc" => new("DD_TRACE_ASPNETMVC_ENABLED", ["DD_TRACE_AspNetMvc_ENABLED", "DD_AspNetMvc_ENABLED"]), + "AspNetWebApi2" => new("DD_TRACE_ASPNETWEBAPI2_ENABLED", ["DD_TRACE_AspNetWebApi2_ENABLED", "DD_AspNetWebApi2_ENABLED"]), + "GraphQL" => new("DD_TRACE_GRAPHQL_ENABLED", ["DD_TRACE_GraphQL_ENABLED", "DD_GraphQL_ENABLED"]), + "HotChocolate" => new("DD_TRACE_HOTCHOCOLATE_ENABLED", ["DD_TRACE_HotChocolate_ENABLED", "DD_HotChocolate_ENABLED"]), + "MongoDb" => new("DD_TRACE_MONGODB_ENABLED", ["DD_TRACE_MongoDb_ENABLED", "DD_MongoDb_ENABLED"]), + "XUnit" => new("DD_TRACE_XUNIT_ENABLED", ["DD_TRACE_XUnit_ENABLED", "DD_XUnit_ENABLED"]), + "NUnit" => new("DD_TRACE_NUNIT_ENABLED", ["DD_TRACE_NUnit_ENABLED", "DD_NUnit_ENABLED"]), + "MsTestV2" => new("DD_TRACE_MSTESTV2_ENABLED", ["DD_TRACE_MsTestV2_ENABLED", "DD_MsTestV2_ENABLED"]), + "Wcf" => new("DD_TRACE_WCF_ENABLED", ["DD_TRACE_Wcf_ENABLED", "DD_Wcf_ENABLED"]), + "WebRequest" => new("DD_TRACE_WEBREQUEST_ENABLED", ["DD_TRACE_WebRequest_ENABLED", "DD_WebRequest_ENABLED"]), + "ElasticsearchNet" => new("DD_TRACE_ELASTICSEARCHNET_ENABLED", ["DD_TRACE_ElasticsearchNet_ENABLED", "DD_ElasticsearchNet_ENABLED"]), + "ServiceStackRedis" => new("DD_TRACE_SERVICESTACKREDIS_ENABLED", ["DD_TRACE_ServiceStackRedis_ENABLED", "DD_ServiceStackRedis_ENABLED"]), + "StackExchangeRedis" => new("DD_TRACE_STACKEXCHANGEREDIS_ENABLED", ["DD_TRACE_StackExchangeRedis_ENABLED", "DD_StackExchangeRedis_ENABLED"]), + "ServiceRemoting" => new("DD_TRACE_SERVICEREMOTING_ENABLED", ["DD_TRACE_ServiceRemoting_ENABLED", "DD_ServiceRemoting_ENABLED"]), + "RabbitMQ" => new("DD_TRACE_RABBITMQ_ENABLED", ["DD_TRACE_RabbitMQ_ENABLED", "DD_RabbitMQ_ENABLED"]), + "Msmq" => new("DD_TRACE_MSMQ_ENABLED", ["DD_TRACE_Msmq_ENABLED", "DD_Msmq_ENABLED"]), + "Kafka" => new("DD_TRACE_KAFKA_ENABLED", ["DD_TRACE_Kafka_ENABLED", "DD_Kafka_ENABLED"]), + "CosmosDb" => new("DD_TRACE_COSMOSDB_ENABLED", ["DD_TRACE_CosmosDb_ENABLED", "DD_CosmosDb_ENABLED"]), + "AwsS3" => new("DD_TRACE_AWSS3_ENABLED", ["DD_TRACE_AwsS3_ENABLED", "DD_AwsS3_ENABLED"]), + "AwsSdk" => new("DD_TRACE_AWSSDK_ENABLED", ["DD_TRACE_AwsSdk_ENABLED", "DD_AwsSdk_ENABLED"]), + "AwsSqs" => new("DD_TRACE_AWSSQS_ENABLED", ["DD_TRACE_AwsSqs_ENABLED", "DD_AwsSqs_ENABLED"]), + "AwsSns" => new("DD_TRACE_AWSSNS_ENABLED", ["DD_TRACE_AwsSns_ENABLED", "DD_AwsSns_ENABLED"]), + "AwsEventBridge" => new("DD_TRACE_AWSEVENTBRIDGE_ENABLED", ["DD_TRACE_AwsEventBridge_ENABLED", "DD_AwsEventBridge_ENABLED"]), + "AwsStepFunctions" => new("DD_TRACE_AWSSTEPFUNCTIONS_ENABLED", ["DD_TRACE_AwsStepFunctions_ENABLED", "DD_AwsStepFunctions_ENABLED"]), + "AwsLambda" => new("DD_TRACE_AWSLAMBDA_ENABLED", ["DD_TRACE_AwsLambda_ENABLED", "DD_AwsLambda_ENABLED"]), + "ILogger" => new("DD_TRACE_ILOGGER_ENABLED", ["DD_TRACE_ILogger_ENABLED", "DD_ILogger_ENABLED"]), + "Aerospike" => new("DD_TRACE_AEROSPIKE_ENABLED", ["DD_TRACE_Aerospike_ENABLED", "DD_Aerospike_ENABLED"]), + "AzureFunctions" => new("DD_TRACE_AZUREFUNCTIONS_ENABLED", ["DD_TRACE_AzureFunctions_ENABLED", "DD_AzureFunctions_ENABLED"]), + "Couchbase" => new("DD_TRACE_COUCHBASE_ENABLED", ["DD_TRACE_Couchbase_ENABLED", "DD_Couchbase_ENABLED"]), + "MySql" => new("DD_TRACE_MYSQL_ENABLED", ["DD_TRACE_MySql_ENABLED", "DD_MySql_ENABLED"]), + "Npgsql" => new("DD_TRACE_NPGSQL_ENABLED", ["DD_TRACE_Npgsql_ENABLED", "DD_Npgsql_ENABLED"]), + "Oracle" => new("DD_TRACE_ORACLE_ENABLED", ["DD_TRACE_Oracle_ENABLED", "DD_Oracle_ENABLED"]), + "SqlClient" => new("DD_TRACE_SQLCLIENT_ENABLED", ["DD_TRACE_SqlClient_ENABLED", "DD_SqlClient_ENABLED"]), + "Sqlite" => new("DD_TRACE_SQLITE_ENABLED", ["DD_TRACE_Sqlite_ENABLED", "DD_Sqlite_ENABLED"]), + "Serilog" => new("DD_TRACE_SERILOG_ENABLED", ["DD_TRACE_Serilog_ENABLED", "DD_Serilog_ENABLED"]), + "Log4Net" => new("DD_TRACE_LOG4NET_ENABLED", ["DD_TRACE_Log4Net_ENABLED", "DD_Log4Net_ENABLED"]), + "NLog" => new("DD_TRACE_NLOG_ENABLED", ["DD_TRACE_NLog_ENABLED", "DD_NLog_ENABLED"]), + "TraceAnnotations" => new("DD_TRACE_TRACEANNOTATIONS_ENABLED", ["DD_TRACE_TraceAnnotations_ENABLED", "DD_TraceAnnotations_ENABLED"]), + "Grpc" => new("DD_TRACE_GRPC_ENABLED", ["DD_TRACE_Grpc_ENABLED", "DD_Grpc_ENABLED"]), + "Process" => new("DD_TRACE_PROCESS_ENABLED", ["DD_TRACE_Process_ENABLED", "DD_Process_ENABLED"]), + "HashAlgorithm" => new("DD_TRACE_HASHALGORITHM_ENABLED", ["DD_TRACE_HashAlgorithm_ENABLED", "DD_HashAlgorithm_ENABLED"]), + "SymmetricAlgorithm" => new("DD_TRACE_SYMMETRICALGORITHM_ENABLED", ["DD_TRACE_SymmetricAlgorithm_ENABLED", "DD_SymmetricAlgorithm_ENABLED"]), + "OpenTelemetry" => new("DD_TRACE_OPENTELEMETRY_ENABLED", ["DD_TRACE_OpenTelemetry_ENABLED", "DD_OpenTelemetry_ENABLED"]), + "PathTraversal" => new("DD_TRACE_PATHTRAVERSAL_ENABLED", ["DD_TRACE_PathTraversal_ENABLED", "DD_PathTraversal_ENABLED"]), + "Ldap" => new("DD_TRACE_LDAP_ENABLED", ["DD_TRACE_Ldap_ENABLED", "DD_Ldap_ENABLED"]), + "Ssrf" => new("DD_TRACE_SSRF_ENABLED", ["DD_TRACE_Ssrf_ENABLED", "DD_Ssrf_ENABLED"]), + "AwsKinesis" => new("DD_TRACE_AWSKINESIS_ENABLED", ["DD_TRACE_AwsKinesis_ENABLED", "DD_AwsKinesis_ENABLED"]), + "AzureServiceBus" => new("DD_TRACE_AZURESERVICEBUS_ENABLED", ["DD_TRACE_AzureServiceBus_ENABLED", "DD_AzureServiceBus_ENABLED"]), + "SystemRandom" => new("DD_TRACE_SYSTEMRANDOM_ENABLED", ["DD_TRACE_SystemRandom_ENABLED", "DD_SystemRandom_ENABLED"]), + "AwsDynamoDb" => new("DD_TRACE_AWSDYNAMODB_ENABLED", ["DD_TRACE_AwsDynamoDb_ENABLED", "DD_AwsDynamoDb_ENABLED"]), + "HardcodedSecret" => new("DD_TRACE_HARDCODEDSECRET_ENABLED", ["DD_TRACE_HardcodedSecret_ENABLED", "DD_HardcodedSecret_ENABLED"]), + "IbmMq" => new("DD_TRACE_IBMMQ_ENABLED", ["DD_TRACE_IbmMq_ENABLED", "DD_IbmMq_ENABLED"]), + "Remoting" => new("DD_TRACE_REMOTING_ENABLED", ["DD_TRACE_Remoting_ENABLED", "DD_Remoting_ENABLED"]), + "TrustBoundaryViolation" => new("DD_TRACE_TRUSTBOUNDARYVIOLATION_ENABLED", ["DD_TRACE_TrustBoundaryViolation_ENABLED", "DD_TrustBoundaryViolation_ENABLED"]), + "UnvalidatedRedirect" => new("DD_TRACE_UNVALIDATEDREDIRECT_ENABLED", ["DD_TRACE_UnvalidatedRedirect_ENABLED", "DD_UnvalidatedRedirect_ENABLED"]), + "TestPlatformAssemblyResolver" => new("DD_TRACE_TESTPLATFORMASSEMBLYRESOLVER_ENABLED", ["DD_TRACE_TestPlatformAssemblyResolver_ENABLED", "DD_TestPlatformAssemblyResolver_ENABLED"]), + "StackTraceLeak" => new("DD_TRACE_STACKTRACELEAK_ENABLED", ["DD_TRACE_StackTraceLeak_ENABLED", "DD_StackTraceLeak_ENABLED"]), + "XpathInjection" => new("DD_TRACE_XPATHINJECTION_ENABLED", ["DD_TRACE_XpathInjection_ENABLED", "DD_XpathInjection_ENABLED"]), + "ReflectionInjection" => new("DD_TRACE_REFLECTIONINJECTION_ENABLED", ["DD_TRACE_ReflectionInjection_ENABLED", "DD_ReflectionInjection_ENABLED"]), + "Xss" => new("DD_TRACE_XSS_ENABLED", ["DD_TRACE_Xss_ENABLED", "DD_Xss_ENABLED"]), + "NHibernate" => new("DD_TRACE_NHIBERNATE_ENABLED", ["DD_TRACE_NHibernate_ENABLED", "DD_NHibernate_ENABLED"]), + "DotnetTest" => new("DD_TRACE_DOTNETTEST_ENABLED", ["DD_TRACE_DotnetTest_ENABLED", "DD_DotnetTest_ENABLED"]), + "Selenium" => new("DD_TRACE_SELENIUM_ENABLED", ["DD_TRACE_Selenium_ENABLED", "DD_Selenium_ENABLED"]), + "DirectoryListingLeak" => new("DD_TRACE_DIRECTORYLISTINGLEAK_ENABLED", ["DD_TRACE_DirectoryListingLeak_ENABLED", "DD_DirectoryListingLeak_ENABLED"]), + "SessionTimeout" => new("DD_TRACE_SESSIONTIMEOUT_ENABLED", ["DD_TRACE_SessionTimeout_ENABLED", "DD_SessionTimeout_ENABLED"]), + "DatadogTraceManual" => new("DD_TRACE_DATADOGTRACEMANUAL_ENABLED", ["DD_TRACE_DatadogTraceManual_ENABLED", "DD_DatadogTraceManual_ENABLED"]), + "EmailHtmlInjection" => new("DD_TRACE_EMAILHTMLINJECTION_ENABLED", ["DD_TRACE_EmailHtmlInjection_ENABLED", "DD_EmailHtmlInjection_ENABLED"]), + "Protobuf" => new("DD_TRACE_PROTOBUF_ENABLED", ["DD_TRACE_Protobuf_ENABLED", "DD_Protobuf_ENABLED"]), + "AzureEventHubs" => new("DD_TRACE_AZUREEVENTHUBS_ENABLED", ["DD_TRACE_AzureEventHubs_ENABLED", "DD_AzureEventHubs_ENABLED"]), + "DatadogTraceVersionConflict" => new("DD_TRACE_DATADOGTRACEVERSIONCONFLICT_ENABLED", ["DD_TRACE_DatadogTraceVersionConflict_ENABLED", "DD_DatadogTraceVersionConflict_ENABLED"]), + "Hangfire" => new("DD_TRACE_HANGFIRE_ENABLED", ["DD_TRACE_Hangfire_ENABLED", "DD_Hangfire_ENABLED"]), + _ => GetIntegrationEnabledKeysFallback(integrationName) // we should never get here + }; + /// + /// Gets the analytics enabled configuration keys for the specified integration name. + /// Returns a KeyValuePair where Key is the canonical key and Value is an array of aliases. + /// + /// The integration name + /// KeyValuePair with canonical key and aliases + [System.Obsolete(ObsoleteMessage)] + public static System.Collections.Generic.KeyValuePair GetIntegrationAnalyticsEnabledKeys(string integrationName) => + integrationName switch + { + "HttpMessageHandler" => new("DD_TRACE_HTTPMESSAGEHANDLER_ANALYTICS_ENABLED", ["DD_TRACE_HttpMessageHandler_ANALYTICS_ENABLED", "DD_HttpMessageHandler_ANALYTICS_ENABLED"]), + "HttpSocketsHandler" => new("DD_TRACE_HTTPSOCKETSHANDLER_ANALYTICS_ENABLED", ["DD_TRACE_HttpSocketsHandler_ANALYTICS_ENABLED", "DD_HttpSocketsHandler_ANALYTICS_ENABLED"]), + "WinHttpHandler" => new("DD_TRACE_WINHTTPHANDLER_ANALYTICS_ENABLED", ["DD_TRACE_WinHttpHandler_ANALYTICS_ENABLED", "DD_WinHttpHandler_ANALYTICS_ENABLED"]), + "CurlHandler" => new("DD_TRACE_CURLHANDLER_ANALYTICS_ENABLED", ["DD_TRACE_CurlHandler_ANALYTICS_ENABLED", "DD_CurlHandler_ANALYTICS_ENABLED"]), + "AspNetCore" => new("DD_TRACE_ASPNETCORE_ANALYTICS_ENABLED", ["DD_TRACE_AspNetCore_ANALYTICS_ENABLED", "DD_AspNetCore_ANALYTICS_ENABLED"]), + "AdoNet" => new("DD_TRACE_ADONET_ANALYTICS_ENABLED", ["DD_TRACE_AdoNet_ANALYTICS_ENABLED", "DD_AdoNet_ANALYTICS_ENABLED"]), + "AspNet" => new("DD_TRACE_ASPNET_ANALYTICS_ENABLED", ["DD_TRACE_AspNet_ANALYTICS_ENABLED", "DD_AspNet_ANALYTICS_ENABLED"]), + "AspNetMvc" => new("DD_TRACE_ASPNETMVC_ANALYTICS_ENABLED", ["DD_TRACE_AspNetMvc_ANALYTICS_ENABLED", "DD_AspNetMvc_ANALYTICS_ENABLED"]), + "AspNetWebApi2" => new("DD_TRACE_ASPNETWEBAPI2_ANALYTICS_ENABLED", ["DD_TRACE_AspNetWebApi2_ANALYTICS_ENABLED", "DD_AspNetWebApi2_ANALYTICS_ENABLED"]), + "GraphQL" => new("DD_TRACE_GRAPHQL_ANALYTICS_ENABLED", ["DD_TRACE_GraphQL_ANALYTICS_ENABLED", "DD_GraphQL_ANALYTICS_ENABLED"]), + "HotChocolate" => new("DD_TRACE_HOTCHOCOLATE_ANALYTICS_ENABLED", ["DD_TRACE_HotChocolate_ANALYTICS_ENABLED", "DD_HotChocolate_ANALYTICS_ENABLED"]), + "MongoDb" => new("DD_TRACE_MONGODB_ANALYTICS_ENABLED", ["DD_TRACE_MongoDb_ANALYTICS_ENABLED", "DD_MongoDb_ANALYTICS_ENABLED"]), + "XUnit" => new("DD_TRACE_XUNIT_ANALYTICS_ENABLED", ["DD_TRACE_XUnit_ANALYTICS_ENABLED", "DD_XUnit_ANALYTICS_ENABLED"]), + "NUnit" => new("DD_TRACE_NUNIT_ANALYTICS_ENABLED", ["DD_TRACE_NUnit_ANALYTICS_ENABLED", "DD_NUnit_ANALYTICS_ENABLED"]), + "MsTestV2" => new("DD_TRACE_MSTESTV2_ANALYTICS_ENABLED", ["DD_TRACE_MsTestV2_ANALYTICS_ENABLED", "DD_MsTestV2_ANALYTICS_ENABLED"]), + "Wcf" => new("DD_TRACE_WCF_ANALYTICS_ENABLED", ["DD_TRACE_Wcf_ANALYTICS_ENABLED", "DD_Wcf_ANALYTICS_ENABLED"]), + "WebRequest" => new("DD_TRACE_WEBREQUEST_ANALYTICS_ENABLED", ["DD_TRACE_WebRequest_ANALYTICS_ENABLED", "DD_WebRequest_ANALYTICS_ENABLED"]), + "ElasticsearchNet" => new("DD_TRACE_ELASTICSEARCHNET_ANALYTICS_ENABLED", ["DD_TRACE_ElasticsearchNet_ANALYTICS_ENABLED", "DD_ElasticsearchNet_ANALYTICS_ENABLED"]), + "ServiceStackRedis" => new("DD_TRACE_SERVICESTACKREDIS_ANALYTICS_ENABLED", ["DD_TRACE_ServiceStackRedis_ANALYTICS_ENABLED", "DD_ServiceStackRedis_ANALYTICS_ENABLED"]), + "StackExchangeRedis" => new("DD_TRACE_STACKEXCHANGEREDIS_ANALYTICS_ENABLED", ["DD_TRACE_StackExchangeRedis_ANALYTICS_ENABLED", "DD_StackExchangeRedis_ANALYTICS_ENABLED"]), + "ServiceRemoting" => new("DD_TRACE_SERVICEREMOTING_ANALYTICS_ENABLED", ["DD_TRACE_ServiceRemoting_ANALYTICS_ENABLED", "DD_ServiceRemoting_ANALYTICS_ENABLED"]), + "RabbitMQ" => new("DD_TRACE_RABBITMQ_ANALYTICS_ENABLED", ["DD_TRACE_RabbitMQ_ANALYTICS_ENABLED", "DD_RabbitMQ_ANALYTICS_ENABLED"]), + "Msmq" => new("DD_TRACE_MSMQ_ANALYTICS_ENABLED", ["DD_TRACE_Msmq_ANALYTICS_ENABLED", "DD_Msmq_ANALYTICS_ENABLED"]), + "Kafka" => new("DD_TRACE_KAFKA_ANALYTICS_ENABLED", ["DD_TRACE_Kafka_ANALYTICS_ENABLED", "DD_Kafka_ANALYTICS_ENABLED"]), + "CosmosDb" => new("DD_TRACE_COSMOSDB_ANALYTICS_ENABLED", ["DD_TRACE_CosmosDb_ANALYTICS_ENABLED", "DD_CosmosDb_ANALYTICS_ENABLED"]), + "AwsS3" => new("DD_TRACE_AWSS3_ANALYTICS_ENABLED", ["DD_TRACE_AwsS3_ANALYTICS_ENABLED", "DD_AwsS3_ANALYTICS_ENABLED"]), + "AwsSdk" => new("DD_TRACE_AWSSDK_ANALYTICS_ENABLED", ["DD_TRACE_AwsSdk_ANALYTICS_ENABLED", "DD_AwsSdk_ANALYTICS_ENABLED"]), + "AwsSqs" => new("DD_TRACE_AWSSQS_ANALYTICS_ENABLED", ["DD_TRACE_AwsSqs_ANALYTICS_ENABLED", "DD_AwsSqs_ANALYTICS_ENABLED"]), + "AwsSns" => new("DD_TRACE_AWSSNS_ANALYTICS_ENABLED", ["DD_TRACE_AwsSns_ANALYTICS_ENABLED", "DD_AwsSns_ANALYTICS_ENABLED"]), + "AwsEventBridge" => new("DD_TRACE_AWSEVENTBRIDGE_ANALYTICS_ENABLED", ["DD_TRACE_AwsEventBridge_ANALYTICS_ENABLED", "DD_AwsEventBridge_ANALYTICS_ENABLED"]), + "AwsStepFunctions" => new("DD_TRACE_AWSSTEPFUNCTIONS_ANALYTICS_ENABLED", ["DD_TRACE_AwsStepFunctions_ANALYTICS_ENABLED", "DD_AwsStepFunctions_ANALYTICS_ENABLED"]), + "AwsLambda" => new("DD_TRACE_AWSLAMBDA_ANALYTICS_ENABLED", ["DD_TRACE_AwsLambda_ANALYTICS_ENABLED", "DD_AwsLambda_ANALYTICS_ENABLED"]), + "ILogger" => new("DD_TRACE_ILOGGER_ANALYTICS_ENABLED", ["DD_TRACE_ILogger_ANALYTICS_ENABLED", "DD_ILogger_ANALYTICS_ENABLED"]), + "Aerospike" => new("DD_TRACE_AEROSPIKE_ANALYTICS_ENABLED", ["DD_TRACE_Aerospike_ANALYTICS_ENABLED", "DD_Aerospike_ANALYTICS_ENABLED"]), + "AzureFunctions" => new("DD_TRACE_AZUREFUNCTIONS_ANALYTICS_ENABLED", ["DD_TRACE_AzureFunctions_ANALYTICS_ENABLED", "DD_AzureFunctions_ANALYTICS_ENABLED"]), + "Couchbase" => new("DD_TRACE_COUCHBASE_ANALYTICS_ENABLED", ["DD_TRACE_Couchbase_ANALYTICS_ENABLED", "DD_Couchbase_ANALYTICS_ENABLED"]), + "MySql" => new("DD_TRACE_MYSQL_ANALYTICS_ENABLED", ["DD_TRACE_MySql_ANALYTICS_ENABLED", "DD_MySql_ANALYTICS_ENABLED"]), + "Npgsql" => new("DD_TRACE_NPGSQL_ANALYTICS_ENABLED", ["DD_TRACE_Npgsql_ANALYTICS_ENABLED", "DD_Npgsql_ANALYTICS_ENABLED"]), + "Oracle" => new("DD_TRACE_ORACLE_ANALYTICS_ENABLED", ["DD_TRACE_Oracle_ANALYTICS_ENABLED", "DD_Oracle_ANALYTICS_ENABLED"]), + "SqlClient" => new("DD_TRACE_SQLCLIENT_ANALYTICS_ENABLED", ["DD_TRACE_SqlClient_ANALYTICS_ENABLED", "DD_SqlClient_ANALYTICS_ENABLED"]), + "Sqlite" => new("DD_TRACE_SQLITE_ANALYTICS_ENABLED", ["DD_TRACE_Sqlite_ANALYTICS_ENABLED", "DD_Sqlite_ANALYTICS_ENABLED"]), + "Serilog" => new("DD_TRACE_SERILOG_ANALYTICS_ENABLED", ["DD_TRACE_Serilog_ANALYTICS_ENABLED", "DD_Serilog_ANALYTICS_ENABLED"]), + "Log4Net" => new("DD_TRACE_LOG4NET_ANALYTICS_ENABLED", ["DD_TRACE_Log4Net_ANALYTICS_ENABLED", "DD_Log4Net_ANALYTICS_ENABLED"]), + "NLog" => new("DD_TRACE_NLOG_ANALYTICS_ENABLED", ["DD_TRACE_NLog_ANALYTICS_ENABLED", "DD_NLog_ANALYTICS_ENABLED"]), + "TraceAnnotations" => new("DD_TRACE_TRACEANNOTATIONS_ANALYTICS_ENABLED", ["DD_TRACE_TraceAnnotations_ANALYTICS_ENABLED", "DD_TraceAnnotations_ANALYTICS_ENABLED"]), + "Grpc" => new("DD_TRACE_GRPC_ANALYTICS_ENABLED", ["DD_TRACE_Grpc_ANALYTICS_ENABLED", "DD_Grpc_ANALYTICS_ENABLED"]), + "Process" => new("DD_TRACE_PROCESS_ANALYTICS_ENABLED", ["DD_TRACE_Process_ANALYTICS_ENABLED", "DD_Process_ANALYTICS_ENABLED"]), + "HashAlgorithm" => new("DD_TRACE_HASHALGORITHM_ANALYTICS_ENABLED", ["DD_TRACE_HashAlgorithm_ANALYTICS_ENABLED", "DD_HashAlgorithm_ANALYTICS_ENABLED"]), + "SymmetricAlgorithm" => new("DD_TRACE_SYMMETRICALGORITHM_ANALYTICS_ENABLED", ["DD_TRACE_SymmetricAlgorithm_ANALYTICS_ENABLED", "DD_SymmetricAlgorithm_ANALYTICS_ENABLED"]), + "OpenTelemetry" => new("DD_TRACE_OPENTELEMETRY_ANALYTICS_ENABLED", ["DD_TRACE_OpenTelemetry_ANALYTICS_ENABLED", "DD_OpenTelemetry_ANALYTICS_ENABLED"]), + "PathTraversal" => new("DD_TRACE_PATHTRAVERSAL_ANALYTICS_ENABLED", ["DD_TRACE_PathTraversal_ANALYTICS_ENABLED", "DD_PathTraversal_ANALYTICS_ENABLED"]), + "Ldap" => new("DD_TRACE_LDAP_ANALYTICS_ENABLED", ["DD_TRACE_Ldap_ANALYTICS_ENABLED", "DD_Ldap_ANALYTICS_ENABLED"]), + "Ssrf" => new("DD_TRACE_SSRF_ANALYTICS_ENABLED", ["DD_TRACE_Ssrf_ANALYTICS_ENABLED", "DD_Ssrf_ANALYTICS_ENABLED"]), + "AwsKinesis" => new("DD_TRACE_AWSKINESIS_ANALYTICS_ENABLED", ["DD_TRACE_AwsKinesis_ANALYTICS_ENABLED", "DD_AwsKinesis_ANALYTICS_ENABLED"]), + "AzureServiceBus" => new("DD_TRACE_AZURESERVICEBUS_ANALYTICS_ENABLED", ["DD_TRACE_AzureServiceBus_ANALYTICS_ENABLED", "DD_AzureServiceBus_ANALYTICS_ENABLED"]), + "SystemRandom" => new("DD_TRACE_SYSTEMRANDOM_ANALYTICS_ENABLED", ["DD_TRACE_SystemRandom_ANALYTICS_ENABLED", "DD_SystemRandom_ANALYTICS_ENABLED"]), + "AwsDynamoDb" => new("DD_TRACE_AWSDYNAMODB_ANALYTICS_ENABLED", ["DD_TRACE_AwsDynamoDb_ANALYTICS_ENABLED", "DD_AwsDynamoDb_ANALYTICS_ENABLED"]), + "HardcodedSecret" => new("DD_TRACE_HARDCODEDSECRET_ANALYTICS_ENABLED", ["DD_TRACE_HardcodedSecret_ANALYTICS_ENABLED", "DD_HardcodedSecret_ANALYTICS_ENABLED"]), + "IbmMq" => new("DD_TRACE_IBMMQ_ANALYTICS_ENABLED", ["DD_TRACE_IbmMq_ANALYTICS_ENABLED", "DD_IbmMq_ANALYTICS_ENABLED"]), + "Remoting" => new("DD_TRACE_REMOTING_ANALYTICS_ENABLED", ["DD_TRACE_Remoting_ANALYTICS_ENABLED", "DD_Remoting_ANALYTICS_ENABLED"]), + "TrustBoundaryViolation" => new("DD_TRACE_TRUSTBOUNDARYVIOLATION_ANALYTICS_ENABLED", ["DD_TRACE_TrustBoundaryViolation_ANALYTICS_ENABLED", "DD_TrustBoundaryViolation_ANALYTICS_ENABLED"]), + "UnvalidatedRedirect" => new("DD_TRACE_UNVALIDATEDREDIRECT_ANALYTICS_ENABLED", ["DD_TRACE_UnvalidatedRedirect_ANALYTICS_ENABLED", "DD_UnvalidatedRedirect_ANALYTICS_ENABLED"]), + "TestPlatformAssemblyResolver" => new("DD_TRACE_TESTPLATFORMASSEMBLYRESOLVER_ANALYTICS_ENABLED", ["DD_TRACE_TestPlatformAssemblyResolver_ANALYTICS_ENABLED", "DD_TestPlatformAssemblyResolver_ANALYTICS_ENABLED"]), + "StackTraceLeak" => new("DD_TRACE_STACKTRACELEAK_ANALYTICS_ENABLED", ["DD_TRACE_StackTraceLeak_ANALYTICS_ENABLED", "DD_StackTraceLeak_ANALYTICS_ENABLED"]), + "XpathInjection" => new("DD_TRACE_XPATHINJECTION_ANALYTICS_ENABLED", ["DD_TRACE_XpathInjection_ANALYTICS_ENABLED", "DD_XpathInjection_ANALYTICS_ENABLED"]), + "ReflectionInjection" => new("DD_TRACE_REFLECTIONINJECTION_ANALYTICS_ENABLED", ["DD_TRACE_ReflectionInjection_ANALYTICS_ENABLED", "DD_ReflectionInjection_ANALYTICS_ENABLED"]), + "Xss" => new("DD_TRACE_XSS_ANALYTICS_ENABLED", ["DD_TRACE_Xss_ANALYTICS_ENABLED", "DD_Xss_ANALYTICS_ENABLED"]), + "NHibernate" => new("DD_TRACE_NHIBERNATE_ANALYTICS_ENABLED", ["DD_TRACE_NHibernate_ANALYTICS_ENABLED", "DD_NHibernate_ANALYTICS_ENABLED"]), + "DotnetTest" => new("DD_TRACE_DOTNETTEST_ANALYTICS_ENABLED", ["DD_TRACE_DotnetTest_ANALYTICS_ENABLED", "DD_DotnetTest_ANALYTICS_ENABLED"]), + "Selenium" => new("DD_TRACE_SELENIUM_ANALYTICS_ENABLED", ["DD_TRACE_Selenium_ANALYTICS_ENABLED", "DD_Selenium_ANALYTICS_ENABLED"]), + "DirectoryListingLeak" => new("DD_TRACE_DIRECTORYLISTINGLEAK_ANALYTICS_ENABLED", ["DD_TRACE_DirectoryListingLeak_ANALYTICS_ENABLED", "DD_DirectoryListingLeak_ANALYTICS_ENABLED"]), + "SessionTimeout" => new("DD_TRACE_SESSIONTIMEOUT_ANALYTICS_ENABLED", ["DD_TRACE_SessionTimeout_ANALYTICS_ENABLED", "DD_SessionTimeout_ANALYTICS_ENABLED"]), + "DatadogTraceManual" => new("DD_TRACE_DATADOGTRACEMANUAL_ANALYTICS_ENABLED", ["DD_TRACE_DatadogTraceManual_ANALYTICS_ENABLED", "DD_DatadogTraceManual_ANALYTICS_ENABLED"]), + "EmailHtmlInjection" => new("DD_TRACE_EMAILHTMLINJECTION_ANALYTICS_ENABLED", ["DD_TRACE_EmailHtmlInjection_ANALYTICS_ENABLED", "DD_EmailHtmlInjection_ANALYTICS_ENABLED"]), + "Protobuf" => new("DD_TRACE_PROTOBUF_ANALYTICS_ENABLED", ["DD_TRACE_Protobuf_ANALYTICS_ENABLED", "DD_Protobuf_ANALYTICS_ENABLED"]), + "AzureEventHubs" => new("DD_TRACE_AZUREEVENTHUBS_ANALYTICS_ENABLED", ["DD_TRACE_AzureEventHubs_ANALYTICS_ENABLED", "DD_AzureEventHubs_ANALYTICS_ENABLED"]), + "DatadogTraceVersionConflict" => new("DD_TRACE_DATADOGTRACEVERSIONCONFLICT_ANALYTICS_ENABLED", ["DD_TRACE_DatadogTraceVersionConflict_ANALYTICS_ENABLED", "DD_DatadogTraceVersionConflict_ANALYTICS_ENABLED"]), + "Hangfire" => new("DD_TRACE_HANGFIRE_ANALYTICS_ENABLED", ["DD_TRACE_Hangfire_ANALYTICS_ENABLED", "DD_Hangfire_ANALYTICS_ENABLED"]), + _ => GetIntegrationAnalyticsEnabledKeysFallback(integrationName) // we should never get here + }; + /// + /// Gets the analytics sample rate configuration keys for the specified integration name. + /// Returns a KeyValuePair where Key is the canonical key and Value is an array of aliases. + /// + /// The integration name + /// KeyValuePair with canonical key and aliases + [System.Obsolete(ObsoleteMessage)] + public static System.Collections.Generic.KeyValuePair GetIntegrationAnalyticsSampleRateKeys(string integrationName) => + integrationName switch + { + "HttpMessageHandler" => new("DD_TRACE_HTTPMESSAGEHANDLER_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_HttpMessageHandler_ANALYTICS_SAMPLE_RATE", "DD_HttpMessageHandler_ANALYTICS_SAMPLE_RATE"]), + "HttpSocketsHandler" => new("DD_TRACE_HTTPSOCKETSHANDLER_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_HttpSocketsHandler_ANALYTICS_SAMPLE_RATE", "DD_HttpSocketsHandler_ANALYTICS_SAMPLE_RATE"]), + "WinHttpHandler" => new("DD_TRACE_WINHTTPHANDLER_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_WinHttpHandler_ANALYTICS_SAMPLE_RATE", "DD_WinHttpHandler_ANALYTICS_SAMPLE_RATE"]), + "CurlHandler" => new("DD_TRACE_CURLHANDLER_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_CurlHandler_ANALYTICS_SAMPLE_RATE", "DD_CurlHandler_ANALYTICS_SAMPLE_RATE"]), + "AspNetCore" => new("DD_TRACE_ASPNETCORE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AspNetCore_ANALYTICS_SAMPLE_RATE", "DD_AspNetCore_ANALYTICS_SAMPLE_RATE"]), + "AdoNet" => new("DD_TRACE_ADONET_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AdoNet_ANALYTICS_SAMPLE_RATE", "DD_AdoNet_ANALYTICS_SAMPLE_RATE"]), + "AspNet" => new("DD_TRACE_ASPNET_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AspNet_ANALYTICS_SAMPLE_RATE", "DD_AspNet_ANALYTICS_SAMPLE_RATE"]), + "AspNetMvc" => new("DD_TRACE_ASPNETMVC_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AspNetMvc_ANALYTICS_SAMPLE_RATE", "DD_AspNetMvc_ANALYTICS_SAMPLE_RATE"]), + "AspNetWebApi2" => new("DD_TRACE_ASPNETWEBAPI2_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AspNetWebApi2_ANALYTICS_SAMPLE_RATE", "DD_AspNetWebApi2_ANALYTICS_SAMPLE_RATE"]), + "GraphQL" => new("DD_TRACE_GRAPHQL_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_GraphQL_ANALYTICS_SAMPLE_RATE", "DD_GraphQL_ANALYTICS_SAMPLE_RATE"]), + "HotChocolate" => new("DD_TRACE_HOTCHOCOLATE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_HotChocolate_ANALYTICS_SAMPLE_RATE", "DD_HotChocolate_ANALYTICS_SAMPLE_RATE"]), + "MongoDb" => new("DD_TRACE_MONGODB_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_MongoDb_ANALYTICS_SAMPLE_RATE", "DD_MongoDb_ANALYTICS_SAMPLE_RATE"]), + "XUnit" => new("DD_TRACE_XUNIT_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_XUnit_ANALYTICS_SAMPLE_RATE", "DD_XUnit_ANALYTICS_SAMPLE_RATE"]), + "NUnit" => new("DD_TRACE_NUNIT_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_NUnit_ANALYTICS_SAMPLE_RATE", "DD_NUnit_ANALYTICS_SAMPLE_RATE"]), + "MsTestV2" => new("DD_TRACE_MSTESTV2_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_MsTestV2_ANALYTICS_SAMPLE_RATE", "DD_MsTestV2_ANALYTICS_SAMPLE_RATE"]), + "Wcf" => new("DD_TRACE_WCF_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Wcf_ANALYTICS_SAMPLE_RATE", "DD_Wcf_ANALYTICS_SAMPLE_RATE"]), + "WebRequest" => new("DD_TRACE_WEBREQUEST_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_WebRequest_ANALYTICS_SAMPLE_RATE", "DD_WebRequest_ANALYTICS_SAMPLE_RATE"]), + "ElasticsearchNet" => new("DD_TRACE_ELASTICSEARCHNET_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_ElasticsearchNet_ANALYTICS_SAMPLE_RATE", "DD_ElasticsearchNet_ANALYTICS_SAMPLE_RATE"]), + "ServiceStackRedis" => new("DD_TRACE_SERVICESTACKREDIS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_ServiceStackRedis_ANALYTICS_SAMPLE_RATE", "DD_ServiceStackRedis_ANALYTICS_SAMPLE_RATE"]), + "StackExchangeRedis" => new("DD_TRACE_STACKEXCHANGEREDIS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_StackExchangeRedis_ANALYTICS_SAMPLE_RATE", "DD_StackExchangeRedis_ANALYTICS_SAMPLE_RATE"]), + "ServiceRemoting" => new("DD_TRACE_SERVICEREMOTING_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_ServiceRemoting_ANALYTICS_SAMPLE_RATE", "DD_ServiceRemoting_ANALYTICS_SAMPLE_RATE"]), + "RabbitMQ" => new("DD_TRACE_RABBITMQ_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_RabbitMQ_ANALYTICS_SAMPLE_RATE", "DD_RabbitMQ_ANALYTICS_SAMPLE_RATE"]), + "Msmq" => new("DD_TRACE_MSMQ_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Msmq_ANALYTICS_SAMPLE_RATE", "DD_Msmq_ANALYTICS_SAMPLE_RATE"]), + "Kafka" => new("DD_TRACE_KAFKA_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Kafka_ANALYTICS_SAMPLE_RATE", "DD_Kafka_ANALYTICS_SAMPLE_RATE"]), + "CosmosDb" => new("DD_TRACE_COSMOSDB_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_CosmosDb_ANALYTICS_SAMPLE_RATE", "DD_CosmosDb_ANALYTICS_SAMPLE_RATE"]), + "AwsS3" => new("DD_TRACE_AWSS3_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsS3_ANALYTICS_SAMPLE_RATE", "DD_AwsS3_ANALYTICS_SAMPLE_RATE"]), + "AwsSdk" => new("DD_TRACE_AWSSDK_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsSdk_ANALYTICS_SAMPLE_RATE", "DD_AwsSdk_ANALYTICS_SAMPLE_RATE"]), + "AwsSqs" => new("DD_TRACE_AWSSQS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsSqs_ANALYTICS_SAMPLE_RATE", "DD_AwsSqs_ANALYTICS_SAMPLE_RATE"]), + "AwsSns" => new("DD_TRACE_AWSSNS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsSns_ANALYTICS_SAMPLE_RATE", "DD_AwsSns_ANALYTICS_SAMPLE_RATE"]), + "AwsEventBridge" => new("DD_TRACE_AWSEVENTBRIDGE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsEventBridge_ANALYTICS_SAMPLE_RATE", "DD_AwsEventBridge_ANALYTICS_SAMPLE_RATE"]), + "AwsStepFunctions" => new("DD_TRACE_AWSSTEPFUNCTIONS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsStepFunctions_ANALYTICS_SAMPLE_RATE", "DD_AwsStepFunctions_ANALYTICS_SAMPLE_RATE"]), + "AwsLambda" => new("DD_TRACE_AWSLAMBDA_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsLambda_ANALYTICS_SAMPLE_RATE", "DD_AwsLambda_ANALYTICS_SAMPLE_RATE"]), + "ILogger" => new("DD_TRACE_ILOGGER_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_ILogger_ANALYTICS_SAMPLE_RATE", "DD_ILogger_ANALYTICS_SAMPLE_RATE"]), + "Aerospike" => new("DD_TRACE_AEROSPIKE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Aerospike_ANALYTICS_SAMPLE_RATE", "DD_Aerospike_ANALYTICS_SAMPLE_RATE"]), + "AzureFunctions" => new("DD_TRACE_AZUREFUNCTIONS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AzureFunctions_ANALYTICS_SAMPLE_RATE", "DD_AzureFunctions_ANALYTICS_SAMPLE_RATE"]), + "Couchbase" => new("DD_TRACE_COUCHBASE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Couchbase_ANALYTICS_SAMPLE_RATE", "DD_Couchbase_ANALYTICS_SAMPLE_RATE"]), + "MySql" => new("DD_TRACE_MYSQL_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_MySql_ANALYTICS_SAMPLE_RATE", "DD_MySql_ANALYTICS_SAMPLE_RATE"]), + "Npgsql" => new("DD_TRACE_NPGSQL_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Npgsql_ANALYTICS_SAMPLE_RATE", "DD_Npgsql_ANALYTICS_SAMPLE_RATE"]), + "Oracle" => new("DD_TRACE_ORACLE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Oracle_ANALYTICS_SAMPLE_RATE", "DD_Oracle_ANALYTICS_SAMPLE_RATE"]), + "SqlClient" => new("DD_TRACE_SQLCLIENT_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_SqlClient_ANALYTICS_SAMPLE_RATE", "DD_SqlClient_ANALYTICS_SAMPLE_RATE"]), + "Sqlite" => new("DD_TRACE_SQLITE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Sqlite_ANALYTICS_SAMPLE_RATE", "DD_Sqlite_ANALYTICS_SAMPLE_RATE"]), + "Serilog" => new("DD_TRACE_SERILOG_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Serilog_ANALYTICS_SAMPLE_RATE", "DD_Serilog_ANALYTICS_SAMPLE_RATE"]), + "Log4Net" => new("DD_TRACE_LOG4NET_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Log4Net_ANALYTICS_SAMPLE_RATE", "DD_Log4Net_ANALYTICS_SAMPLE_RATE"]), + "NLog" => new("DD_TRACE_NLOG_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_NLog_ANALYTICS_SAMPLE_RATE", "DD_NLog_ANALYTICS_SAMPLE_RATE"]), + "TraceAnnotations" => new("DD_TRACE_TRACEANNOTATIONS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_TraceAnnotations_ANALYTICS_SAMPLE_RATE", "DD_TraceAnnotations_ANALYTICS_SAMPLE_RATE"]), + "Grpc" => new("DD_TRACE_GRPC_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Grpc_ANALYTICS_SAMPLE_RATE", "DD_Grpc_ANALYTICS_SAMPLE_RATE"]), + "Process" => new("DD_TRACE_PROCESS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Process_ANALYTICS_SAMPLE_RATE", "DD_Process_ANALYTICS_SAMPLE_RATE"]), + "HashAlgorithm" => new("DD_TRACE_HASHALGORITHM_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_HashAlgorithm_ANALYTICS_SAMPLE_RATE", "DD_HashAlgorithm_ANALYTICS_SAMPLE_RATE"]), + "SymmetricAlgorithm" => new("DD_TRACE_SYMMETRICALGORITHM_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_SymmetricAlgorithm_ANALYTICS_SAMPLE_RATE", "DD_SymmetricAlgorithm_ANALYTICS_SAMPLE_RATE"]), + "OpenTelemetry" => new("DD_TRACE_OPENTELEMETRY_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_OpenTelemetry_ANALYTICS_SAMPLE_RATE", "DD_OpenTelemetry_ANALYTICS_SAMPLE_RATE"]), + "PathTraversal" => new("DD_TRACE_PATHTRAVERSAL_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_PathTraversal_ANALYTICS_SAMPLE_RATE", "DD_PathTraversal_ANALYTICS_SAMPLE_RATE"]), + "Ldap" => new("DD_TRACE_LDAP_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Ldap_ANALYTICS_SAMPLE_RATE", "DD_Ldap_ANALYTICS_SAMPLE_RATE"]), + "Ssrf" => new("DD_TRACE_SSRF_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Ssrf_ANALYTICS_SAMPLE_RATE", "DD_Ssrf_ANALYTICS_SAMPLE_RATE"]), + "AwsKinesis" => new("DD_TRACE_AWSKINESIS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsKinesis_ANALYTICS_SAMPLE_RATE", "DD_AwsKinesis_ANALYTICS_SAMPLE_RATE"]), + "AzureServiceBus" => new("DD_TRACE_AZURESERVICEBUS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AzureServiceBus_ANALYTICS_SAMPLE_RATE", "DD_AzureServiceBus_ANALYTICS_SAMPLE_RATE"]), + "SystemRandom" => new("DD_TRACE_SYSTEMRANDOM_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_SystemRandom_ANALYTICS_SAMPLE_RATE", "DD_SystemRandom_ANALYTICS_SAMPLE_RATE"]), + "AwsDynamoDb" => new("DD_TRACE_AWSDYNAMODB_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsDynamoDb_ANALYTICS_SAMPLE_RATE", "DD_AwsDynamoDb_ANALYTICS_SAMPLE_RATE"]), + "HardcodedSecret" => new("DD_TRACE_HARDCODEDSECRET_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_HardcodedSecret_ANALYTICS_SAMPLE_RATE", "DD_HardcodedSecret_ANALYTICS_SAMPLE_RATE"]), + "IbmMq" => new("DD_TRACE_IBMMQ_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_IbmMq_ANALYTICS_SAMPLE_RATE", "DD_IbmMq_ANALYTICS_SAMPLE_RATE"]), + "Remoting" => new("DD_TRACE_REMOTING_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Remoting_ANALYTICS_SAMPLE_RATE", "DD_Remoting_ANALYTICS_SAMPLE_RATE"]), + "TrustBoundaryViolation" => new("DD_TRACE_TRUSTBOUNDARYVIOLATION_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_TrustBoundaryViolation_ANALYTICS_SAMPLE_RATE", "DD_TrustBoundaryViolation_ANALYTICS_SAMPLE_RATE"]), + "UnvalidatedRedirect" => new("DD_TRACE_UNVALIDATEDREDIRECT_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_UnvalidatedRedirect_ANALYTICS_SAMPLE_RATE", "DD_UnvalidatedRedirect_ANALYTICS_SAMPLE_RATE"]), + "TestPlatformAssemblyResolver" => new("DD_TRACE_TESTPLATFORMASSEMBLYRESOLVER_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_TestPlatformAssemblyResolver_ANALYTICS_SAMPLE_RATE", "DD_TestPlatformAssemblyResolver_ANALYTICS_SAMPLE_RATE"]), + "StackTraceLeak" => new("DD_TRACE_STACKTRACELEAK_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_StackTraceLeak_ANALYTICS_SAMPLE_RATE", "DD_StackTraceLeak_ANALYTICS_SAMPLE_RATE"]), + "XpathInjection" => new("DD_TRACE_XPATHINJECTION_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_XpathInjection_ANALYTICS_SAMPLE_RATE", "DD_XpathInjection_ANALYTICS_SAMPLE_RATE"]), + "ReflectionInjection" => new("DD_TRACE_REFLECTIONINJECTION_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_ReflectionInjection_ANALYTICS_SAMPLE_RATE", "DD_ReflectionInjection_ANALYTICS_SAMPLE_RATE"]), + "Xss" => new("DD_TRACE_XSS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Xss_ANALYTICS_SAMPLE_RATE", "DD_Xss_ANALYTICS_SAMPLE_RATE"]), + "NHibernate" => new("DD_TRACE_NHIBERNATE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_NHibernate_ANALYTICS_SAMPLE_RATE", "DD_NHibernate_ANALYTICS_SAMPLE_RATE"]), + "DotnetTest" => new("DD_TRACE_DOTNETTEST_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_DotnetTest_ANALYTICS_SAMPLE_RATE", "DD_DotnetTest_ANALYTICS_SAMPLE_RATE"]), + "Selenium" => new("DD_TRACE_SELENIUM_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Selenium_ANALYTICS_SAMPLE_RATE", "DD_Selenium_ANALYTICS_SAMPLE_RATE"]), + "DirectoryListingLeak" => new("DD_TRACE_DIRECTORYLISTINGLEAK_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_DirectoryListingLeak_ANALYTICS_SAMPLE_RATE", "DD_DirectoryListingLeak_ANALYTICS_SAMPLE_RATE"]), + "SessionTimeout" => new("DD_TRACE_SESSIONTIMEOUT_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_SessionTimeout_ANALYTICS_SAMPLE_RATE", "DD_SessionTimeout_ANALYTICS_SAMPLE_RATE"]), + "DatadogTraceManual" => new("DD_TRACE_DATADOGTRACEMANUAL_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_DatadogTraceManual_ANALYTICS_SAMPLE_RATE", "DD_DatadogTraceManual_ANALYTICS_SAMPLE_RATE"]), + "EmailHtmlInjection" => new("DD_TRACE_EMAILHTMLINJECTION_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_EmailHtmlInjection_ANALYTICS_SAMPLE_RATE", "DD_EmailHtmlInjection_ANALYTICS_SAMPLE_RATE"]), + "Protobuf" => new("DD_TRACE_PROTOBUF_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Protobuf_ANALYTICS_SAMPLE_RATE", "DD_Protobuf_ANALYTICS_SAMPLE_RATE"]), + "AzureEventHubs" => new("DD_TRACE_AZUREEVENTHUBS_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AzureEventHubs_ANALYTICS_SAMPLE_RATE", "DD_AzureEventHubs_ANALYTICS_SAMPLE_RATE"]), + "DatadogTraceVersionConflict" => new("DD_TRACE_DATADOGTRACEVERSIONCONFLICT_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_DatadogTraceVersionConflict_ANALYTICS_SAMPLE_RATE", "DD_DatadogTraceVersionConflict_ANALYTICS_SAMPLE_RATE"]), + "Hangfire" => new("DD_TRACE_HANGFIRE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_Hangfire_ANALYTICS_SAMPLE_RATE", "DD_Hangfire_ANALYTICS_SAMPLE_RATE"]), + _ => GetIntegrationAnalyticsSampleRateKeysFallback(integrationName) // we should never get here + }; + + private static System.Collections.Generic.KeyValuePair GetIntegrationEnabledKeysFallback(string integrationName) => + new(string.Format("DD_TRACE_{0}_ENABLED", integrationName.ToUpperInvariant()), + [ + string.Format("DD_TRACE_{0}_ENABLED", integrationName), + $"DD_{integrationName}_ENABLED" + ]); + + private static System.Collections.Generic.KeyValuePair GetIntegrationAnalyticsEnabledKeysFallback(string integrationName) => + new(string.Format("DD_TRACE_{0}_ANALYTICS_ENABLED", integrationName.ToUpperInvariant()), + [ + string.Format("DD_TRACE_{0}_ANALYTICS_ENABLED", integrationName), + $"DD_{integrationName}_ANALYTICS_ENABLED" + ]); + + private static System.Collections.Generic.KeyValuePair GetIntegrationAnalyticsSampleRateKeysFallback(string integrationName) => + new(string.Format("DD_TRACE_{0}_ANALYTICS_SAMPLE_RATE", integrationName.ToUpperInvariant()), + [ + string.Format("DD_TRACE_{0}_ANALYTICS_SAMPLE_RATE", integrationName), + $"DD_{integrationName}_ANALYTICS_SAMPLE_RATE" + ]); + } +} diff --git a/tracer/test/Datadog.Trace.SourceGenerators.Tests/EnumExtensionsGeneratorTests.cs b/tracer/test/Datadog.Trace.SourceGenerators.Tests/EnumExtensionsGeneratorTests.cs index 71dc487078a1..a1f29643141b 100644 --- a/tracer/test/Datadog.Trace.SourceGenerators.Tests/EnumExtensionsGeneratorTests.cs +++ b/tracer/test/Datadog.Trace.SourceGenerators.Tests/EnumExtensionsGeneratorTests.cs @@ -1,8 +1,9 @@ -// +// // Unless explicitly stated otherwise all files in this repository are licensed under the Apache 2 License. // This product includes software developed at Datadog (https://www.datadoghq.com/). Copyright 2017 Datadog, Inc. // +using System.Linq; using Datadog.Trace.SourceGenerators.EnumExtensions; using Datadog.Trace.SourceGenerators.EnumExtensions.Diagnostics; using FluentAssertions; @@ -407,4 +408,279 @@ public static string[] GetDescriptions() Assert.Contains(diagnostics, diag => diag.Id == DuplicateDescriptionDiagnostic.Id); output.Should().Be(expected); } + + [Fact] + public void CanGenerateIntegrationNameToKeysForIntegrationId() + { + const string input = """ + using Datadog.Trace.SourceGenerators; + + namespace Datadog.Trace.Configuration; + + [EnumExtensions] + internal enum IntegrationId + { + HttpMessageHandler, + AspNetCore, + AdoNet, + } + """; + + const string expected = Constants.FileHeader + """ + + namespace Datadog.Trace.Configuration + { + /// + /// Generated mapping of integration names to their configuration keys. + /// + internal static partial class IntegrationNameToKeys + { + private const string ObsoleteMessage = DeprecationMessages.AppAnalytics; + + /// + /// All integration enabled keys (canonical + aliases). + /// + [Datadog.Trace.SourceGenerators.TestingOnly] + public static string[] GetAllIntegrationEnabledKeys() => + [ + "DD_TRACE_HTTPMESSAGEHANDLER_ENABLED", "DD_TRACE_HttpMessageHandler_ENABLED", "DD_HttpMessageHandler_ENABLED", + "DD_TRACE_HTTPMESSAGEHANDLER_ANALYTICS_ENABLED", "DD_TRACE_HttpMessageHandler_ANALYTICS_ENABLED", "DD_HttpMessageHandler_ANALYTICS_ENABLED", + "DD_TRACE_HTTPMESSAGEHANDLER_ANALYTICS_SAMPLE_RATE", "DD_TRACE_HttpMessageHandler_ANALYTICS_SAMPLE_RATE", "DD_HttpMessageHandler_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_ASPNETCORE_ENABLED", "DD_TRACE_AspNetCore_ENABLED", "DD_AspNetCore_ENABLED", + "DD_TRACE_ASPNETCORE_ANALYTICS_ENABLED", "DD_TRACE_AspNetCore_ANALYTICS_ENABLED", "DD_AspNetCore_ANALYTICS_ENABLED", + "DD_TRACE_ASPNETCORE_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AspNetCore_ANALYTICS_SAMPLE_RATE", "DD_AspNetCore_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_ADONET_ENABLED", "DD_TRACE_AdoNet_ENABLED", "DD_AdoNet_ENABLED", + "DD_TRACE_ADONET_ANALYTICS_ENABLED", "DD_TRACE_AdoNet_ANALYTICS_ENABLED", "DD_AdoNet_ANALYTICS_ENABLED", + "DD_TRACE_ADONET_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AdoNet_ANALYTICS_SAMPLE_RATE", "DD_AdoNet_ANALYTICS_SAMPLE_RATE", + ]; + /// + /// Gets the configuration keys for the specified integration name. + /// Returns a KeyValuePair where Key is the canonical key and Value is an array of aliases. + /// + /// The integration name + /// KeyValuePair with canonical key and aliases + public static System.Collections.Generic.KeyValuePair GetIntegrationEnabledKeys(string integrationName) => + integrationName switch + { + "HttpMessageHandler" => new("DD_TRACE_HTTPMESSAGEHANDLER_ENABLED", ["DD_TRACE_HttpMessageHandler_ENABLED", "DD_HttpMessageHandler_ENABLED"]), + "AspNetCore" => new("DD_TRACE_ASPNETCORE_ENABLED", ["DD_TRACE_AspNetCore_ENABLED", "DD_AspNetCore_ENABLED"]), + "AdoNet" => new("DD_TRACE_ADONET_ENABLED", ["DD_TRACE_AdoNet_ENABLED", "DD_AdoNet_ENABLED"]), + _ => GetIntegrationEnabledKeysFallback(integrationName) // we should never get here + }; + /// + /// Gets the analytics enabled configuration keys for the specified integration name. + /// Returns a KeyValuePair where Key is the canonical key and Value is an array of aliases. + /// + /// The integration name + /// KeyValuePair with canonical key and aliases + [System.Obsolete(ObsoleteMessage)] + public static System.Collections.Generic.KeyValuePair GetIntegrationAnalyticsEnabledKeys(string integrationName) => + integrationName switch + { + "HttpMessageHandler" => new("DD_TRACE_HTTPMESSAGEHANDLER_ANALYTICS_ENABLED", ["DD_TRACE_HttpMessageHandler_ANALYTICS_ENABLED", "DD_HttpMessageHandler_ANALYTICS_ENABLED"]), + "AspNetCore" => new("DD_TRACE_ASPNETCORE_ANALYTICS_ENABLED", ["DD_TRACE_AspNetCore_ANALYTICS_ENABLED", "DD_AspNetCore_ANALYTICS_ENABLED"]), + "AdoNet" => new("DD_TRACE_ADONET_ANALYTICS_ENABLED", ["DD_TRACE_AdoNet_ANALYTICS_ENABLED", "DD_AdoNet_ANALYTICS_ENABLED"]), + _ => GetIntegrationAnalyticsEnabledKeysFallback(integrationName) // we should never get here + }; + /// + /// Gets the analytics sample rate configuration keys for the specified integration name. + /// Returns a KeyValuePair where Key is the canonical key and Value is an array of aliases. + /// + /// The integration name + /// KeyValuePair with canonical key and aliases + [System.Obsolete(ObsoleteMessage)] + public static System.Collections.Generic.KeyValuePair GetIntegrationAnalyticsSampleRateKeys(string integrationName) => + integrationName switch + { + "HttpMessageHandler" => new("DD_TRACE_HTTPMESSAGEHANDLER_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_HttpMessageHandler_ANALYTICS_SAMPLE_RATE", "DD_HttpMessageHandler_ANALYTICS_SAMPLE_RATE"]), + "AspNetCore" => new("DD_TRACE_ASPNETCORE_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AspNetCore_ANALYTICS_SAMPLE_RATE", "DD_AspNetCore_ANALYTICS_SAMPLE_RATE"]), + "AdoNet" => new("DD_TRACE_ADONET_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AdoNet_ANALYTICS_SAMPLE_RATE", "DD_AdoNet_ANALYTICS_SAMPLE_RATE"]), + _ => GetIntegrationAnalyticsSampleRateKeysFallback(integrationName) // we should never get here + }; + + private static System.Collections.Generic.KeyValuePair GetIntegrationEnabledKeysFallback(string integrationName) => + new(string.Format("DD_TRACE_{0}_ENABLED", integrationName.ToUpperInvariant()), + [ + string.Format("DD_TRACE_{0}_ENABLED", integrationName), + $"DD_{integrationName}_ENABLED" + ]); + + private static System.Collections.Generic.KeyValuePair GetIntegrationAnalyticsEnabledKeysFallback(string integrationName) => + new(string.Format("DD_TRACE_{0}_ANALYTICS_ENABLED", integrationName.ToUpperInvariant()), + [ + string.Format("DD_TRACE_{0}_ANALYTICS_ENABLED", integrationName), + $"DD_{integrationName}_ANALYTICS_ENABLED" + ]); + + private static System.Collections.Generic.KeyValuePair GetIntegrationAnalyticsSampleRateKeysFallback(string integrationName) => + new(string.Format("DD_TRACE_{0}_ANALYTICS_SAMPLE_RATE", integrationName.ToUpperInvariant()), + [ + string.Format("DD_TRACE_{0}_ANALYTICS_SAMPLE_RATE", integrationName), + $"DD_{integrationName}_ANALYTICS_SAMPLE_RATE" + ]); + } + } + + """; + + var (diagnostics, output) = TestHelpers.GetGeneratedTrees(input); + + using var s = new AssertionScope(); + diagnostics.Should().BeEmpty(); + output.Should().HaveCount(3); + + var integrationNameToKeys = output.FirstOrDefault(x => x.Contains("IntegrationNameToKeys")); + integrationNameToKeys.Should().NotBeNull(); + integrationNameToKeys.Should().Be(expected); + } + + [Fact] + public void DoesNotGenerateIntegrationNameToKeysForNonIntegrationIdEnum() + { + const string input = """ + using Datadog.Trace.SourceGenerators; + + namespace MyTestNameSpace; + + [EnumExtensions] + public enum MyEnum + { + First, + Second, + } + """; + + var (diagnostics, output) = TestHelpers.GetGeneratedTrees(input); + + using var s = new AssertionScope(); + diagnostics.Should().BeEmpty(); + output.Should().HaveCount(2); + output.Should().Contain(x => x.Contains("MyEnumExtensions")); + output.Should().NotContain(x => x.Contains("IntegrationNameToKeys")); + } + + [Fact] + public void IntegrationNameToKeysGeneratesCorrectKeyFormats() + { + const string input = """ + using Datadog.Trace.SourceGenerators; + + namespace Datadog.Trace.Configuration; + + [EnumExtensions] + internal enum IntegrationId + { + MySql, + AwsS3, + RabbitMQ, + } + """; + + const string expected = Constants.FileHeader + """ + + namespace Datadog.Trace.Configuration + { + /// + /// Generated mapping of integration names to their configuration keys. + /// + internal static partial class IntegrationNameToKeys + { + private const string ObsoleteMessage = DeprecationMessages.AppAnalytics; + + /// + /// All integration enabled keys (canonical + aliases). + /// + [Datadog.Trace.SourceGenerators.TestingOnly] + public static string[] GetAllIntegrationEnabledKeys() => + [ + "DD_TRACE_MYSQL_ENABLED", "DD_TRACE_MySql_ENABLED", "DD_MySql_ENABLED", + "DD_TRACE_MYSQL_ANALYTICS_ENABLED", "DD_TRACE_MySql_ANALYTICS_ENABLED", "DD_MySql_ANALYTICS_ENABLED", + "DD_TRACE_MYSQL_ANALYTICS_SAMPLE_RATE", "DD_TRACE_MySql_ANALYTICS_SAMPLE_RATE", "DD_MySql_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_AWSS3_ENABLED", "DD_TRACE_AwsS3_ENABLED", "DD_AwsS3_ENABLED", + "DD_TRACE_AWSS3_ANALYTICS_ENABLED", "DD_TRACE_AwsS3_ANALYTICS_ENABLED", "DD_AwsS3_ANALYTICS_ENABLED", + "DD_TRACE_AWSS3_ANALYTICS_SAMPLE_RATE", "DD_TRACE_AwsS3_ANALYTICS_SAMPLE_RATE", "DD_AwsS3_ANALYTICS_SAMPLE_RATE", + "DD_TRACE_RABBITMQ_ENABLED", "DD_TRACE_RabbitMQ_ENABLED", "DD_RabbitMQ_ENABLED", + "DD_TRACE_RABBITMQ_ANALYTICS_ENABLED", "DD_TRACE_RabbitMQ_ANALYTICS_ENABLED", "DD_RabbitMQ_ANALYTICS_ENABLED", + "DD_TRACE_RABBITMQ_ANALYTICS_SAMPLE_RATE", "DD_TRACE_RabbitMQ_ANALYTICS_SAMPLE_RATE", "DD_RabbitMQ_ANALYTICS_SAMPLE_RATE", + ]; + /// + /// Gets the configuration keys for the specified integration name. + /// Returns a KeyValuePair where Key is the canonical key and Value is an array of aliases. + /// + /// The integration name + /// KeyValuePair with canonical key and aliases + public static System.Collections.Generic.KeyValuePair GetIntegrationEnabledKeys(string integrationName) => + integrationName switch + { + "MySql" => new("DD_TRACE_MYSQL_ENABLED", ["DD_TRACE_MySql_ENABLED", "DD_MySql_ENABLED"]), + "AwsS3" => new("DD_TRACE_AWSS3_ENABLED", ["DD_TRACE_AwsS3_ENABLED", "DD_AwsS3_ENABLED"]), + "RabbitMQ" => new("DD_TRACE_RABBITMQ_ENABLED", ["DD_TRACE_RabbitMQ_ENABLED", "DD_RabbitMQ_ENABLED"]), + _ => GetIntegrationEnabledKeysFallback(integrationName) // we should never get here + }; + /// + /// Gets the analytics enabled configuration keys for the specified integration name. + /// Returns a KeyValuePair where Key is the canonical key and Value is an array of aliases. + /// + /// The integration name + /// KeyValuePair with canonical key and aliases + [System.Obsolete(ObsoleteMessage)] + public static System.Collections.Generic.KeyValuePair GetIntegrationAnalyticsEnabledKeys(string integrationName) => + integrationName switch + { + "MySql" => new("DD_TRACE_MYSQL_ANALYTICS_ENABLED", ["DD_TRACE_MySql_ANALYTICS_ENABLED", "DD_MySql_ANALYTICS_ENABLED"]), + "AwsS3" => new("DD_TRACE_AWSS3_ANALYTICS_ENABLED", ["DD_TRACE_AwsS3_ANALYTICS_ENABLED", "DD_AwsS3_ANALYTICS_ENABLED"]), + "RabbitMQ" => new("DD_TRACE_RABBITMQ_ANALYTICS_ENABLED", ["DD_TRACE_RabbitMQ_ANALYTICS_ENABLED", "DD_RabbitMQ_ANALYTICS_ENABLED"]), + _ => GetIntegrationAnalyticsEnabledKeysFallback(integrationName) // we should never get here + }; + /// + /// Gets the analytics sample rate configuration keys for the specified integration name. + /// Returns a KeyValuePair where Key is the canonical key and Value is an array of aliases. + /// + /// The integration name + /// KeyValuePair with canonical key and aliases + [System.Obsolete(ObsoleteMessage)] + public static System.Collections.Generic.KeyValuePair GetIntegrationAnalyticsSampleRateKeys(string integrationName) => + integrationName switch + { + "MySql" => new("DD_TRACE_MYSQL_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_MySql_ANALYTICS_SAMPLE_RATE", "DD_MySql_ANALYTICS_SAMPLE_RATE"]), + "AwsS3" => new("DD_TRACE_AWSS3_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_AwsS3_ANALYTICS_SAMPLE_RATE", "DD_AwsS3_ANALYTICS_SAMPLE_RATE"]), + "RabbitMQ" => new("DD_TRACE_RABBITMQ_ANALYTICS_SAMPLE_RATE", ["DD_TRACE_RabbitMQ_ANALYTICS_SAMPLE_RATE", "DD_RabbitMQ_ANALYTICS_SAMPLE_RATE"]), + _ => GetIntegrationAnalyticsSampleRateKeysFallback(integrationName) // we should never get here + }; + + private static System.Collections.Generic.KeyValuePair GetIntegrationEnabledKeysFallback(string integrationName) => + new(string.Format("DD_TRACE_{0}_ENABLED", integrationName.ToUpperInvariant()), + [ + string.Format("DD_TRACE_{0}_ENABLED", integrationName), + $"DD_{integrationName}_ENABLED" + ]); + + private static System.Collections.Generic.KeyValuePair GetIntegrationAnalyticsEnabledKeysFallback(string integrationName) => + new(string.Format("DD_TRACE_{0}_ANALYTICS_ENABLED", integrationName.ToUpperInvariant()), + [ + string.Format("DD_TRACE_{0}_ANALYTICS_ENABLED", integrationName), + $"DD_{integrationName}_ANALYTICS_ENABLED" + ]); + + private static System.Collections.Generic.KeyValuePair GetIntegrationAnalyticsSampleRateKeysFallback(string integrationName) => + new(string.Format("DD_TRACE_{0}_ANALYTICS_SAMPLE_RATE", integrationName.ToUpperInvariant()), + [ + string.Format("DD_TRACE_{0}_ANALYTICS_SAMPLE_RATE", integrationName), + $"DD_{integrationName}_ANALYTICS_SAMPLE_RATE" + ]); + } + } + + """; + + var (diagnostics, output) = TestHelpers.GetGeneratedTrees(input); + + using var s = new AssertionScope(); + diagnostics.Should().BeEmpty(); + output.Should().HaveCount(3); + + var integrationNameToKeys = output.FirstOrDefault(x => x.Contains("IntegrationNameToKeys")); + integrationNameToKeys.Should().NotBeNull(); + integrationNameToKeys.Should().Be(expected); + } } diff --git a/tracer/test/Datadog.Trace.SourceGenerators.Tests/SourceHelper.cs b/tracer/test/Datadog.Trace.SourceGenerators.Tests/SourceHelper.cs new file mode 100644 index 000000000000..34dd380db5a2 --- /dev/null +++ b/tracer/test/Datadog.Trace.SourceGenerators.Tests/SourceHelper.cs @@ -0,0 +1,580 @@ +// +// Unless explicitly stated otherwise all files in this repository are licensed under the Apache 2 License. +// This product includes software developed at Datadog (https://www.datadoghq.com/). Copyright 2017 Datadog, Inc. +// + +namespace Datadog.Trace.SourceGenerators.Tests; + +public static class SourceHelper +{ + public const string InstrumentMethodAttribute = @"using Datadog.Trace.ClrProfiler; +using System; +using System.ComponentModel; + +namespace Datadog.Trace.ClrProfiler; + +[AttributeUsage(AttributeTargets.Class | AttributeTargets.Assembly, AllowMultiple = true, Inherited = false)] +[Browsable(false)] +[EditorBrowsable(EditorBrowsableState.Never)] +internal class InstrumentMethodAttribute : Attribute +{ + public string AssemblyName + { + get + { + switch (AssemblyNames?.Length ?? 0) + { + case 0: + return null; + case 1: + return AssemblyNames[0]; + default: + throw new InvalidOperationException(""Multiple assemblies are not supported using this property. Use AssemblyNames property instead.""); + return null; + } + } + set => AssemblyNames = new[] { value }; + } + + public string[] AssemblyNames { get; set; } + public string TypeName + { + get + { + switch (TypeNames?.Length ?? 0) + { + case 0: + return null; + case 1: + return TypeNames[0]; + default: + ThrowHelper.ThrowNotSupportedException(""Multiple type names are not supported using this property. Use TypeNames property instead.""); + return null; + } + } + set => TypeNames = new[] { value }; + } + public string[] TypeNames { get; set; } + public string MethodName { get; set; } + public string ReturnTypeName { get; set; } + public string[] ParameterTypeNames { get; set; } + // public IntegrationVersionRange VersionRange { get; } = new IntegrationVersionRange(); + public string MinimumVersion { get; set; } + public string MaximumVersion { get; set; } + public string IntegrationName { get; set; } + public Type CallTargetType { get; set; } + public CallTargetKind CallTargetIntegrationKind { get; set; } = CallTargetKind.Default; + public InstrumentationCategory InstrumentationCategory { get; set; }; +} + +internal enum CallTargetKind +{ + /// + /// Default calltarget integration + /// + Default = 0, + + /// + /// Derived calltarget integration + /// + Derived = 1, + + /// + /// Interface calltarget integration + /// + Interface = 2, +} + +[Flags] +internal enum InstrumentationCategory : uint +{ + /// + /// Default calltarget integration + /// + Tracing = 1, + + /// + /// Derived calltarget integration + /// + AppSec = 2, + + /// + /// Derived calltarget integration + /// + Iast = 4 +} +"; + + public const string KafkaConstants = @" +using System; + +namespace Datadog.Trace.ClrProfiler.AutoInstrumentation.Kafka; + +internal static class KafkaConstants +{ + internal const string IntegrationName = ""Kafka""; + internal const string ConsumeOperationName = ""kafka.consume""; + internal const string ProduceOperationName = ""kafka.produce""; + internal const string TopicPartitionTypeName = ""Confluent.Kafka.TopicPartition""; + internal const string MessageTypeName = ""Confluent.Kafka.Message`2[!0,!1]""; + internal const string ConsumeResultTypeName = ""Confluent.Kafka.ConsumeResult`2[!0,!1]""; + internal const string ActionOfDeliveryReportTypeName = ""System.Action`1[Confluent.Kafka.DeliveryReport`2[!0,!1]]""; + internal const string TaskDeliveryReportTypeName = ""System.Threading.Tasks.Task`1[Confluent.Kafka.DeliveryReport`2[!0,!1]]""; + internal const string ServiceName = ""kafka""; +}"; + + public const string AspNetCoreConstants = @" +using System; + +namespace Datadog.Trace.ClrProfiler.AspNetCore; + +internal static class AspNetCoreConstants +{ + internal const string IntegrationName = ""AspNetCore""; +}"; + + public const string ClrNames = @" +namespace Datadog.Trace.ClrProfiler +{ + internal static class ClrNames + { + public const string Ignore = ""_""; + + public const string Void = ""System.Void""; + public const string Object = ""System.Object""; + public const string Bool = ""System.Boolean""; + public const string String = ""System.String""; + + public const string SByte = ""System.SByte""; + public const string Byte = ""System.Byte""; + + public const string Int16 = ""System.Int16""; + public const string Int32 = ""System.Int32""; + public const string Int64 = ""System.Int64""; + + public const string UInt16 = ""System.UInt16""; + public const string UInt32 = ""System.UInt32""; + public const string UInt64 = ""System.UInt64""; + + public const string TimeSpan = ""System.TimeSpan""; + + public const string Stream = ""System.IO.Stream""; + + public const string Task = ""System.Threading.Tasks.Task""; + public const string CancellationToken = ""System.Threading.CancellationToken""; + + // ReSharper disable once InconsistentNaming + public const string IAsyncResult = ""System.IAsyncResult""; + public const string AsyncCallback = ""System.AsyncCallback""; + + public const string HttpRequestMessage = ""System.Net.Http.HttpRequestMessage""; + public const string HttpResponseMessage = ""System.Net.Http.HttpResponseMessage""; + public const string HttpResponseMessageTask = ""System.Threading.Tasks.Task`1""; + + public const string GenericTask = ""System.Threading.Tasks.Task`1""; + public const string IgnoreGenericTask = ""System.Threading.Tasks.Task`1<_>""; + public const string GenericParameterTask = ""System.Threading.Tasks.Task`1""; + public const string ObjectTask = ""System.Threading.Tasks.Task`1""; + public const string Int32Task = ""System.Threading.Tasks.Task`1""; + + public const string Type = ""System.Type""; + public const string ByteArray = ""System.Byte[]""; + } +}"; + + public const string AdoNetConstants = """ + namespace Datadog.Trace.ClrProfiler.AutoInstrumentation.AdoNet + { + internal static class AdoNetConstants + { + public static class TypeNames + { + public const string CommandBehavior = "System.Data.CommandBehavior"; + + public const string DbDataReaderType = "System.Data.Common.DbDataReader"; + public const string DbDataReaderTaskType = "System.Threading.Tasks.Task`1"; + + public const string Int32TaskType = "System.Threading.Tasks.Task`1"; + public const string ObjectTaskType = "System.Threading.Tasks.Task`1"; + } + + public static class MethodNames + { + public const string ExecuteNonQuery = "ExecuteNonQuery"; + public const string ExecuteNonQueryAsync = "ExecuteNonQueryAsync"; + + public const string ExecuteScalar = "ExecuteScalar"; + public const string ExecuteScalarAsync = "ExecuteScalarAsync"; + + public const string ExecuteReader = "ExecuteReader"; + public const string ExecuteReaderAsync = "ExecuteReaderAsync"; + + public const string ExecuteDbDataReader = "ExecuteDbDataReader"; + public const string ExecuteDbDataReaderAsync = "ExecuteDbDataReaderAsync"; + } + } + } + """; + + public const string AdoNetInstrumentationAttribute = """ + using System; + using System.ComponentModel; + using System.Data; + using Datadog.Trace.ClrProfiler.CallTarget; + + namespace Datadog.Trace.ClrProfiler.AutoInstrumentation.AdoNet + { + /// + /// Attribute that indicates that the decorated class is meant to intercept a method + /// by modifying the method body with callbacks. Used to generate the integration definitions file. + /// + /// + /// Beware that the fullname of this class is being used for App Trimming support in the _build/Build.Steps.cs file + /// as string. Avoid changing the name and/or namespace of this class. + /// + [AttributeUsage(AttributeTargets.Assembly, AllowMultiple = true)] + internal sealed class AdoNetClientInstrumentMethodsAttribute : Attribute + { + /// + /// Gets or sets the name of the assembly that contains the target method to be intercepted. + /// Required. + /// + public string AssemblyName { get; set; } + + /// + /// Gets or sets the name of the type that contain the target method to be intercepted. + /// Required. + /// + public string TypeName { get; set; } + + /// + /// Gets or sets the target minimum version. + /// + public string MinimumVersion { get; set; } + + /// + /// Gets or sets the target maximum version. + /// + public string MaximumVersion { get; set; } + + /// + /// Gets or sets the integration name. Allows to group several integration with a single integration name. + /// + public string IntegrationName { get; set; } + + /// + /// Gets or sets the DataReader type to use with target signatures that require it + /// Required. + /// + public string DataReaderType { get; set; } + + /// + /// Gets or sets the DataReader type to use with target signatures that require it + /// Required. + /// + public string DataReaderTaskType { get; set; } + + /// + /// Gets or sets the names of attributes decorated with . + /// Describes all the signatures to instrument + /// Required. + /// + public Type[] TargetMethodAttributes { get; set; } + + [AttributeUsage(AttributeTargets.Class, AllowMultiple = true, Inherited = false)] + internal class AdoNetTargetSignatureAttribute : Attribute + { + internal enum AdoNetTargetSignatureReturnType + { + /// + /// Uses the fixed return type specified in + /// + Default, + + /// + /// Uses the return type specified in + /// + DataReaderType, + + /// + /// Uses the return type specified in + /// + DataReaderTaskType, + } + + /// + /// Gets or sets the name of the target method to be intercepted. + /// If null, default to the name of the decorated method. + /// + public string MethodName { get; set; } + + /// + /// Gets or sets the return type name + /// + public string ReturnTypeName { get; set; } + + /// + /// Gets or sets the parameters type array for the target method to be intercepted. + /// + public string[] ParameterTypeNames { get; set; } + + /// + /// Gets or sets the CallTarget Class used to instrument the method + /// + public Type CallTargetType { get; set; } + + /// + /// Gets or sets the CallTarget integration type + /// + public CallTargetKind CallTargetIntegrationKind { get; set; } = CallTargetKind.Default; + + /// + /// Gets or sets the return type to use with this signature + /// + public AdoNetTargetSignatureReturnType ReturnType { get; set; } = AdoNetTargetSignatureReturnType.Default; + } + + [AdoNetTargetSignature( + MethodName = AdoNetConstants.MethodNames.ExecuteNonQueryAsync, + ReturnTypeName = AdoNetConstants.TypeNames.Int32TaskType, + ParameterTypeNames = new[] { ClrNames.CancellationToken }, + CallTargetType = typeof(CommandExecuteNonQueryAsyncIntegration))] + [AttributeUsage(AttributeTargets.Class, AllowMultiple = true, Inherited = false)] + internal class CommandExecuteNonQueryAsyncAttribute : Attribute + { + } + + [AdoNetTargetSignature( + MethodName = AdoNetConstants.MethodNames.ExecuteNonQuery, + ReturnTypeName = ClrNames.Int32, + CallTargetType = typeof(CommandExecuteNonQueryIntegration), + CallTargetIntegrationKind = CallTargetKind.Default)] + [AttributeUsage(AttributeTargets.Class, AllowMultiple = true, Inherited = false)] + internal class CommandExecuteNonQueryAttribute : Attribute + { + } + + [AdoNetTargetSignature( + MethodName = AdoNetConstants.MethodNames.ExecuteNonQuery, + ReturnTypeName = ClrNames.Int32, + CallTargetType = typeof(CommandExecuteNonQueryIntegration), + CallTargetIntegrationKind = CallTargetKind.Derived)] + [AttributeUsage(AttributeTargets.Class, AllowMultiple = true, Inherited = false)] + internal class CommandExecuteNonQueryDerivedAttribute : Attribute + { + } + + [AdoNetTargetSignature( + MethodName = AdoNetConstants.MethodNames.ExecuteNonQuery, + ReturnTypeName = ClrNames.Int32, + ParameterTypeNames = new[] { AdoNetConstants.TypeNames.CommandBehavior }, + CallTargetType = typeof(CommandExecuteNonQueryWithBehaviorIntegration))] + [AttributeUsage(AttributeTargets.Class, AllowMultiple = true, Inherited = false)] + internal class CommandExecuteNonQueryWithBehaviorAttribute : Attribute + { + } + + [AdoNetTargetSignature( + MethodName = AdoNetConstants.MethodNames.ExecuteReaderAsync, + ReturnType = AdoNetTargetSignatureAttribute.AdoNetTargetSignatureReturnType.DataReaderTaskType, + CallTargetType = typeof(CommandExecuteReaderAsyncIntegration))] + [AttributeUsage(AttributeTargets.Class, AllowMultiple = true, Inherited = false)] + internal class CommandExecuteReaderAsyncAttribute : Attribute + { + } + + [AdoNetTargetSignature( + MethodName = AdoNetConstants.MethodNames.ExecuteReaderAsync, + ReturnType = AdoNetTargetSignatureAttribute.AdoNetTargetSignatureReturnType.DataReaderTaskType, + ParameterTypeNames = new[] { ClrNames.CancellationToken }, + CallTargetType = typeof(CommandExecuteReaderWithCancellationAsyncIntegration))] + [AttributeUsage(AttributeTargets.Class, AllowMultiple = true, Inherited = false)] + internal class CommandExecuteReaderWithCancellationAsyncAttribute : Attribute + { + } + + [AdoNetTargetSignature( + MethodName = AdoNetConstants.MethodNames.ExecuteReaderAsync, + ReturnType = AdoNetTargetSignatureAttribute.AdoNetTargetSignatureReturnType.DataReaderTaskType, + ParameterTypeNames = new[] { AdoNetConstants.TypeNames.CommandBehavior }, + CallTargetType = typeof(CommandExecuteReaderWithBehaviorAsyncIntegration))] + [AttributeUsage(AttributeTargets.Class, AllowMultiple = true, Inherited = false)] + internal class CommandExecuteReaderWithBehaviorAsyncAttribute : Attribute + { + } + + [AdoNetTargetSignature( + MethodName = AdoNetConstants.MethodNames.ExecuteReaderAsync, + ReturnType = AdoNetTargetSignatureAttribute.AdoNetTargetSignatureReturnType.DataReaderTaskType, + ParameterTypeNames = new[] { AdoNetConstants.TypeNames.CommandBehavior, ClrNames.CancellationToken }, + CallTargetType = typeof(CommandExecuteReaderWithBehaviorAndCancellationAsyncIntegration))] + [AttributeUsage(AttributeTargets.Class, AllowMultiple = true, Inherited = false)] + internal class CommandExecuteReaderWithBehaviorAndCancellationAsyncAttribute : Attribute + { + } + + [AdoNetTargetSignature( + MethodName = AdoNetConstants.MethodNames.ExecuteDbDataReaderAsync, + ReturnTypeName = AdoNetConstants.TypeNames.DbDataReaderTaskType, + ParameterTypeNames = new[] { AdoNetConstants.TypeNames.CommandBehavior, ClrNames.CancellationToken }, + CallTargetType = typeof(CommandExecuteReaderWithBehaviorAndCancellationAsyncIntegration))] + [AttributeUsage(AttributeTargets.Class, AllowMultiple = true, Inherited = false)] + internal class CommandExecuteDbDataReaderWithBehaviorAndCancellationAsyncAttribute : Attribute + { + } + + [AdoNetTargetSignature( + MethodName = AdoNetConstants.MethodNames.ExecuteReader, + ReturnType = AdoNetTargetSignatureAttribute.AdoNetTargetSignatureReturnType.DataReaderType, + CallTargetType = typeof(CommandExecuteReaderIntegration))] + [AttributeUsage(AttributeTargets.Class, AllowMultiple = true, Inherited = false)] + internal class CommandExecuteReaderAttribute : Attribute + { + } + + [AdoNetTargetSignature( + MethodName = AdoNetConstants.MethodNames.ExecuteReader, + ReturnType = AdoNetTargetSignatureAttribute.AdoNetTargetSignatureReturnType.DataReaderType, + ParameterTypeNames = new[] { AdoNetConstants.TypeNames.CommandBehavior }, + CallTargetType = typeof(CommandExecuteReaderWithBehaviorIntegration))] + [AttributeUsage(AttributeTargets.Class, AllowMultiple = true, Inherited = false)] + internal class CommandExecuteReaderWithBehaviorAttribute : Attribute + { + } + + [AdoNetTargetSignature( + MethodName = AdoNetConstants.MethodNames.ExecuteDbDataReader, + ReturnTypeName = AdoNetConstants.TypeNames.DbDataReaderType, + ParameterTypeNames = new[] { AdoNetConstants.TypeNames.CommandBehavior }, + CallTargetType = typeof(CommandExecuteReaderWithBehaviorIntegration))] + [AttributeUsage(AttributeTargets.Class, AllowMultiple = true, Inherited = false)] + internal class CommandExecuteDbDataReaderWithBehaviorAttribute : Attribute + { + } + + [AdoNetTargetSignature( + MethodName = AdoNetConstants.MethodNames.ExecuteDbDataReader, + ReturnTypeName = AdoNetConstants.TypeNames.DbDataReaderType, + ParameterTypeNames = new[] { AdoNetConstants.TypeNames.CommandBehavior }, + CallTargetIntegrationKind = CallTargetKind.Derived, + CallTargetType = typeof(CommandExecuteReaderWithBehaviorIntegration))] + [AttributeUsage(AttributeTargets.Class, AllowMultiple = true, Inherited = false)] + internal class CommandExecuteDbDataReaderWithBehaviorDerivedAttribute : Attribute + { + } + + [AdoNetTargetSignature( + MethodName = AdoNetConstants.MethodNames.ExecuteScalarAsync, + ReturnTypeName = AdoNetConstants.TypeNames.ObjectTaskType, + ParameterTypeNames = new[] { ClrNames.CancellationToken }, + CallTargetType = typeof(CommandExecuteScalarAsyncIntegration))] + [AttributeUsage(AttributeTargets.Class, AllowMultiple = true, Inherited = false)] + internal class CommandExecuteScalarAsyncAttribute : Attribute + { + } + + [AdoNetTargetSignature( + MethodName = AdoNetConstants.MethodNames.ExecuteScalar, + ReturnTypeName = ClrNames.Object, + CallTargetType = typeof(CommandExecuteScalarIntegration))] + [AttributeUsage(AttributeTargets.Class, AllowMultiple = true, Inherited = false)] + internal class CommandExecuteScalarAttribute : Attribute + { + } + + [AdoNetTargetSignature( + MethodName = AdoNetConstants.MethodNames.ExecuteScalar, + ReturnTypeName = ClrNames.Object, + CallTargetIntegrationKind = CallTargetKind.Derived, + CallTargetType = typeof(CommandExecuteScalarIntegration))] + [AttributeUsage(AttributeTargets.Class, AllowMultiple = true, Inherited = false)] + internal class CommandExecuteScalarDerivedAttribute : Attribute + { + } + + [AdoNetTargetSignature( + MethodName = AdoNetConstants.MethodNames.ExecuteScalar, + ReturnTypeName = ClrNames.Object, + ParameterTypeNames = new[] { AdoNetConstants.TypeNames.CommandBehavior }, + CallTargetType = typeof(CommandExecuteScalarWithBehaviorIntegration))] + [AttributeUsage(AttributeTargets.Class, AllowMultiple = true, Inherited = false)] + internal class CommandExecuteScalarWithBehaviorAttribute : Attribute + { + } + } + + /// + /// CallTarget instrumentation for: + /// int [Command].ExecuteNonQuery() + /// + [Browsable(false)] + [EditorBrowsable(EditorBrowsableState.Never)] + public class CommandExecuteNonQueryIntegration + { + /// + /// OnMethodBegin callback + /// + /// Type of the target + /// Instance value, aka `this` of the instrumented method. + /// Calltarget state value + internal static CallTargetState OnMethodBegin(TTarget instance) + { + return new CallTargetState(DbScopeFactory.Cache.CreateDbCommandScope(Tracer.Instance, (IDbCommand)instance)); + } + + /// + /// OnMethodEnd callback + /// + /// Type of the target + /// Type of the return value + /// Instance value, aka `this` of the instrumented method. + /// Task of HttpResponse message instance + /// Exception instance in case the original code threw an exception. + /// Calltarget state value + /// A response value, in an async scenario will be T of Task of T + internal static CallTargetReturn OnMethodEnd(TTarget instance, TReturn returnValue, Exception exception, in CallTargetState state) + { + state.Scope.DisposeWithException(exception); + return new CallTargetReturn(returnValue); + } + } + + /// + /// CallTarget instrumentation for: + /// [*]DataReader [Command].ExecuteReader() + /// + [Browsable(false)] + [EditorBrowsable(EditorBrowsableState.Never)] + public class CommandExecuteReaderIntegration + { + /// + /// OnMethodBegin callback + /// + /// Type of the target + /// Instance value, aka `this` of the instrumented method. + /// Calltarget state value + internal static CallTargetState OnMethodBegin(TTarget instance) + { + return new CallTargetState(DbScopeFactory.Cache.CreateDbCommandScope(Tracer.Instance, (IDbCommand)instance)); + } + + /// + /// OnMethodEnd callback + /// + /// Type of the target + /// Type of the return value + /// Instance value, aka `this` of the instrumented method. + /// Task of HttpResponse message instance + /// Exception instance in case the original code threw an exception. + /// Calltarget state value + /// A response value, in an async scenario will be T of Task of T + internal static CallTargetReturn OnMethodEnd(TTarget instance, TReturn returnValue, Exception exception, in CallTargetState state) + { + state.Scope.DisposeWithException(exception); + return new CallTargetReturn(returnValue); + } + } + + } + """; +} diff --git a/tracer/test/Datadog.Trace.SourceGenerators.Tests/TestHelpers.cs b/tracer/test/Datadog.Trace.SourceGenerators.Tests/TestHelpers.cs index b21cf2ead097..88c2566e6152 100644 --- a/tracer/test/Datadog.Trace.SourceGenerators.Tests/TestHelpers.cs +++ b/tracer/test/Datadog.Trace.SourceGenerators.Tests/TestHelpers.cs @@ -56,13 +56,13 @@ public static (ImmutableArray Diagnostics, string[] Output) GetGener public static (ImmutableArray Diagnostics, string[] Output) GetGeneratedTrees(string[] source, string[] stages, (string Path, string Content)[] additionalFiles = null, bool assertOutput = true) where T : IIncrementalGenerator, new() { - IEnumerable syntaxTrees = source.Select(static x => CSharpSyntaxTree.ParseText(x)); + var syntaxTrees = source.Select(static x => CSharpSyntaxTree.ParseText(x)); var references = AppDomain.CurrentDomain.GetAssemblies() .Where(_ => !_.IsDynamic && !string.IsNullOrWhiteSpace(_.Location)) .Select(_ => MetadataReference.CreateFromFile(_.Location)) .Concat(new[] { MetadataReference.CreateFromFile(typeof(T).Assembly.Location) }); - CSharpCompilation compilation = CSharpCompilation.Create( + var compilation = CSharpCompilation.Create( "Datadog.Trace.Generated", syntaxTrees, references, diff --git a/tracer/test/Datadog.Trace.Tests/Telemetry/ConfigurationTests.cs b/tracer/test/Datadog.Trace.Tests/Telemetry/ConfigurationTests.cs index 44362da34ba3..327cf0a275ce 100644 --- a/tracer/test/Datadog.Trace.Tests/Telemetry/ConfigurationTests.cs +++ b/tracer/test/Datadog.Trace.Tests/Telemetry/ConfigurationTests.cs @@ -19,59 +19,51 @@ namespace Datadog.Trace.Tests.Telemetry; public class ConfigurationTests { private static readonly string[] ExcludedKeys = - { - // Lambda handler extracts these directly from env var, and no reason to think that will change - "_DD_EXTENSION_ENDPOINT", - "_DD_EXTENSION_PATH", - // Internal variable just used to "pass" settings to the - "_DD_INTERNAL_IS_RUNNING_IN_CIVISIBILITY", - // mini agent uses this directly from env var, and no reason to think that will change - "DD_MINI_AGENT_PATH", - "DD_ENTITY_ID", // Datadog.Trace.Vendors.StatsdClient.StatsdConfig.EntityIdEnvVar (we don't use this, it was just vendored in) - // CIapp extracts directly from env var, and no reason to think that will change - "DD_CUSTOM_TRACE_ID", - "DD_GIT_BRANCH", - "DD_GIT_TAG", - "DD_GIT_REPOSITORY_URL", - "DD_GIT_COMMIT_SHA", - "DD_GIT_COMMIT_MESSAGE", - "DD_GIT_COMMIT_AUTHOR_NAME", - "DD_GIT_COMMIT_AUTHOR_EMAIL", - "DD_GIT_COMMIT_AUTHOR_DATE", - "DD_GIT_COMMIT_COMMITTER_NAME", - "DD_GIT_COMMIT_COMMITTER_EMAIL", - "DD_GIT_COMMIT_COMMITTER_DATE", - "DD_GIT_PULL_REQUEST_BASE_BRANCH", - "DD_GIT_PULL_REQUEST_BASE_BRANCH_SHA", - "DD_ACTION_EXECUTION_ID", - "DD_PIPELINE_EXECUTION_ID", - "DD_TESTSESSION_COMMAND", - "DD_TESTSESSION_WORKINGDIRECTORY", - "DD_CIVISIBILITY_CODE_COVERAGE_MODE", - "DD_CIVISIBILITY_AUTO_INSTRUMENTATION_PROVIDER", - // Internal env vars that we only ever read from environment - "DD_INTERNAL_TRACE_NATIVE_ENGINE_PATH", - "DD_INTERNAL_PROFILING_NATIVE_ENGINE_PATH", - "DD_DOTNET_TRACER_HOME", - "DD_INSTRUMENTATION_INSTALL_ID", - "DD_INSTRUMENTATION_INSTALL_TYPE", - "DD_INSTRUMENTATION_INSTALL_TIME", - "DD_INJECTION_ENABLED", - "DD_INJECT_FORCE", - // deprecated alias - "DATADOG_TRACE_AGENT_HOSTNAME_OPTIMIZED" - }; - - // These are the keys that are used in the integration registry which are _not_ sent to telemetry, so we can ignore them - private static readonly string[] IntegrationSettingKeys = - IntegrationRegistry.Names - .SelectMany(x => new[] - { - $"DD_TRACE_{x.ToUpperInvariant()}_ENABLED", - $"DD_TRACE_{x.ToUpperInvariant()}_ANALYTICS_ENABLED", - $"DD_TRACE_{x.ToUpperInvariant()}_ANALYTICS_SAMPLE_RATE" - }) - .ToArray(); + new[] + { + // Lambda handler extracts these directly from env var, and no reason to think that will change + "_DD_EXTENSION_ENDPOINT", + "_DD_EXTENSION_PATH", + // Internal variable just used to "pass" settings to the + "_DD_INTERNAL_IS_RUNNING_IN_CIVISIBILITY", + // mini agent uses this directly from env var, and no reason to think that will change + "DD_MINI_AGENT_PATH", + "DD_ENTITY_ID", // Datadog.Trace.Vendors.StatsdClient.StatsdConfig.EntityIdEnvVar (we don't use this, it was just vendored in) + // CIapp extracts directly from env var, and no reason to think that will change + "DD_CUSTOM_TRACE_ID", + "DD_GIT_BRANCH", + "DD_GIT_TAG", + "DD_GIT_REPOSITORY_URL", + "DD_GIT_COMMIT_SHA", + "DD_GIT_COMMIT_MESSAGE", + "DD_GIT_COMMIT_AUTHOR_NAME", + "DD_GIT_COMMIT_AUTHOR_EMAIL", + "DD_GIT_COMMIT_AUTHOR_DATE", + "DD_GIT_COMMIT_COMMITTER_NAME", + "DD_GIT_COMMIT_COMMITTER_EMAIL", + "DD_GIT_COMMIT_COMMITTER_DATE", + "DD_GIT_PULL_REQUEST_BASE_BRANCH", + "DD_GIT_PULL_REQUEST_BASE_BRANCH_SHA", + "DD_ACTION_EXECUTION_ID", + "DD_PIPELINE_EXECUTION_ID", + "DD_TESTSESSION_COMMAND", + "DD_TESTSESSION_WORKINGDIRECTORY", + "DD_CIVISIBILITY_CODE_COVERAGE_MODE", + "DD_CIVISIBILITY_AUTO_INSTRUMENTATION_PROVIDER", + // Internal env vars that we only ever read from environment + "DD_INTERNAL_TRACE_NATIVE_ENGINE_PATH", + "DD_INTERNAL_PROFILING_NATIVE_ENGINE_PATH", + "DD_DOTNET_TRACER_HOME", + "DD_INSTRUMENTATION_INSTALL_ID", + "DD_INSTRUMENTATION_INSTALL_TYPE", + "DD_INSTRUMENTATION_INSTALL_TIME", + "DD_INJECTION_ENABLED", + "DD_INJECT_FORCE", + // deprecated alias + "DATADOG_TRACE_AGENT_HOSTNAME_OPTIMIZED" + } + .Concat(IntegrationNameToKeys.GetAllIntegrationEnabledKeys()) + .ToArray(); [Fact] public void AllConfigurationValuesAreRegisteredWithIntake() @@ -100,7 +92,7 @@ public void AllConfigurationValuesAreRegisteredWithIntake() .Concat(configKeyStrings) .Where(x => !x.Contains("{0}") && x != "DD_" && x != "DD_TRACE_") // exclude the format string ones + the interpolated string ones .Distinct() - .Where(x => !ExcludedKeys.Contains(x) && !IntegrationSettingKeys.Contains(x)) + .Where(x => !ExcludedKeys.Contains(x)) .ToList(); var keysWithoutConfig = new List(); @@ -130,7 +122,8 @@ public void AllConfigurationValuesAreRegisteredWithIntake() keysWithoutConfig .OrderBy(x => x) .Should() - .BeEmpty($"Keys should be listed in config_norm_rules or block_prefixes"); + .BeEmpty( + $"Keys should be listed in config_norm_rules or block_prefixes: {string.Join(", ", keysWithoutConfig)}"); } private static List GetConfigurationKeyStrings()