public static IHummingbirdOpenTracingBuilder AddJaeger(this IHummingbirdOpenTracingBuilder builder, Action <TracingConfiguration> action, Action <IOpenTracingBuilder> openTracingBuilder = null) { var config = new TracingConfiguration() { Open = false }; action = action ?? throw new ArgumentNullException(nameof(action)); action(config); builder.Services.AddTransient <TracingConfiguration>(sp => { return(config); }); AddJaeger(builder.Services, openTracingBuilder); return(builder); }
public static IHummingbirdOpenTracingBuilder AddJaeger(this IHummingbirdOpenTracingBuilder builder, IConfigurationSection configurationSection, Action <IOpenTracingBuilder> openTracingBuilder = null) { builder.Services.AddTransient <TracingConfiguration>(sp => { var config = configurationSection.Get <TracingConfiguration>(); if (config == null) { config = new TracingConfiguration() { Open = false }; } return(config); }); AddJaeger(builder.Services, openTracingBuilder); return(builder); }