in src/Elastic.OpenTelemetry.Core/SignalBuilder.cs [31:54]
public static ILogger GetLogger(
ElasticOpenTelemetryComponents? components,
CompositeElasticOpenTelemetryOptions? options) =>
components?.Logger ?? options?.AdditionalLogger ?? NullLogger.Instance;
/// <summary>
/// Returns the most relevant <see cref="ILogger"/> for builder extension methods to use.
/// </summary>
public static ILogger GetLogger<T>(
T builder,
ElasticOpenTelemetryComponents? components,
CompositeElasticOpenTelemetryOptions? options,
BuilderState? builderState) where T : class
{
if (builderState is not null)
return builderState.Components.Logger;
var logger = components?.Logger ?? options?.AdditionalLogger ?? NullLogger.Instance;
if (BuilderStateTable.TryGetValue(builder, out builderState))
logger = builderState.Components.Logger;
return logger;
}