diff --git a/src/Tools/dotnet-monitor/ServiceCollectionExtensions.cs b/src/Tools/dotnet-monitor/ServiceCollectionExtensions.cs index b544d9960e4..095771a04c5 100644 --- a/src/Tools/dotnet-monitor/ServiceCollectionExtensions.cs +++ b/src/Tools/dotnet-monitor/ServiceCollectionExtensions.cs @@ -33,6 +33,7 @@ using Microsoft.Diagnostics.Tools.Monitor.Stacks; using Microsoft.Diagnostics.Tools.Monitor.StartupHook; using Microsoft.Extensions.Configuration; +using Microsoft.Extensions.Configuration.Binder.SourceGeneration; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection.Extensions; using Microsoft.Extensions.FileProviders; @@ -49,43 +50,43 @@ internal static class ServiceCollectionExtensions { public static IServiceCollection ConfigureCors(this IServiceCollection services, IConfiguration configuration) { - return services.Configure(configuration.GetSection(ConfigurationKeys.CorsConfiguration)); + return BindingExtensions.Configure(services, configuration.GetSection(ConfigurationKeys.CorsConfiguration)); } public static IServiceCollection ConfigureDotnetMonitorDebug(this IServiceCollection services, IConfiguration configuration) { - return services.Configure(configuration.GetSection(ConfigurationKeys.DotnetMonitorDebug)); + return BindingExtensions.Configure(services, configuration.GetSection(ConfigurationKeys.DotnetMonitorDebug)); } public static IServiceCollection ConfigureGlobalCounter(this IServiceCollection services, IConfiguration configuration) { - return services.Configure(configuration.GetSection(ConfigurationKeys.GlobalCounter)) + return BindingExtensions.Configure(services, configuration.GetSection(ConfigurationKeys.GlobalCounter)) .AddSingleton, DataAnnotationValidateOptions>(); } public static IServiceCollection ConfigureCollectionRuleDefaults(this IServiceCollection services, IConfiguration configuration) { - return services.Configure(configuration.GetSection(ConfigurationKeys.CollectionRuleDefaults)); + return BindingExtensions.Configure(services, configuration.GetSection(ConfigurationKeys.CollectionRuleDefaults)); } public static IServiceCollection ConfigureTemplates(this IServiceCollection services, IConfiguration configuration) { - return services.Configure(configuration.GetSection(ConfigurationKeys.Templates)); + return BindingExtensions.Configure(services, configuration.GetSection(ConfigurationKeys.Templates)); } public static IServiceCollection ConfigureInProcessFeatures(this IServiceCollection services, IConfiguration configuration) { - services.Configure(configuration.GetSection(ConfigurationKeys.InProcessFeatures_CallStacks)) + BindingExtensions.Configure(services, configuration.GetSection(ConfigurationKeys.InProcessFeatures_CallStacks)) .AddSingleton, CallStacksPostConfigureOptions>(); - services.Configure(configuration.GetSection(ConfigurationKeys.InProcessFeatures_Exceptions)) + BindingExtensions.Configure(services, configuration.GetSection(ConfigurationKeys.InProcessFeatures_Exceptions)) .AddSingleton, ExceptionsPostConfigureOptions>(); - services.Configure(configuration.GetSection(ConfigurationKeys.InProcessFeatures_ParameterCapturing)) + BindingExtensions.Configure(services, configuration.GetSection(ConfigurationKeys.InProcessFeatures_ParameterCapturing)) .AddSingleton, ParameterCapturingPostConfigureOptions>(); - services.Configure(configuration.GetSection(ConfigurationKeys.InProcessFeatures)) + BindingExtensions.Configure(services, configuration.GetSection(ConfigurationKeys.InProcessFeatures)) .AddSingleton() .AddSingleton(); @@ -94,7 +95,7 @@ public static IServiceCollection ConfigureInProcessFeatures(this IServiceCollect public static IServiceCollection ConfigureMetrics(this IServiceCollection services, IConfiguration configuration) { - return services.Configure(configuration.GetSection(ConfigurationKeys.Metrics)) + return BindingExtensions.Configure(services, configuration.GetSection(ConfigurationKeys.Metrics)) .AddSingleton, DataAnnotationValidateOptions>() .AddSingleton() .AddHostedService() @@ -103,7 +104,7 @@ public static IServiceCollection ConfigureMetrics(this IServiceCollection servic public static IServiceCollection ConfigureMonitorApiKeyOptions(this IServiceCollection services, IConfiguration configuration, bool allowConfigurationUpdates) { - services.Configure(configuration.GetSection(ConfigurationKeys.MonitorApiKey)); + BindingExtensions.Configure(services, configuration.GetSection(ConfigurationKeys.MonitorApiKey)); // Loads and validates MonitorApiKeyOptions into MonitorApiKeyConfiguration services.AddSingleton, MonitorApiKeyPostConfigure>(); @@ -237,7 +238,7 @@ public static IServiceCollection RegisterCollectionRuleTrigger(configuration.GetSection(ConfigurationKeys.Storage)); + BindingExtensions.Configure(services, configuration.GetSection(ConfigurationKeys.Storage)); services.AddSingleton, StoragePostConfigureOptions>(); return services; } @@ -255,7 +256,7 @@ public static IServiceCollection ConfigureCapabilities(this IServiceCollection s public static IServiceCollection ConfigureDefaultProcess(this IServiceCollection services, IConfiguration configuration) { - return services.Configure(configuration.GetSection(ConfigurationKeys.DefaultProcess)); + return BindingExtensions.Configure(services, configuration.GetSection(ConfigurationKeys.DefaultProcess)); } public static IServiceCollection ConfigureExtensions(this IServiceCollection services) @@ -333,7 +334,7 @@ public static IServiceCollection ConfigureEgress(this IServiceCollection service public static IServiceCollection ConfigureDiagnosticPort(this IServiceCollection services, IConfiguration configuration) { - services.Configure(configuration.GetSection(ConfigurationKeys.DiagnosticPort)); + BindingExtensions.Configure(services, configuration.GetSection(ConfigurationKeys.DiagnosticPort)); services.AddSingleton, DiagnosticPortPostConfigureOptions>(); services.AddSingleton, DiagnosticPortValidateOptions>();