public void ParseLogDirectory()

in src/Elastic.OpenTelemetry.Core/Configuration/Parsers/ConfigurationParser.cs [53:90]


	public void ParseLogDirectory(ConfigCell<string?> logDirectory) =>
		SetFromConfiguration(_configuration, logDirectory, StringParser);

	public void ParseLogTargets(ConfigCell<LogTargets?> logTargets) =>
		SetFromConfiguration(_configuration, logTargets, LogTargetsParser);

	public void ParseLogLevel(ConfigCell<LogLevel?> logLevel, ref EventLevel eventLevel)
	{
		SetFromConfiguration(_configuration, logLevel, LogLevelParser);

		if (!string.IsNullOrEmpty(LoggingSectionLogLevel) && logLevel.Source == ConfigSource.Default)
		{
			var level = LogLevelHelpers.ToLogLevel(LoggingSectionLogLevel!);
			logLevel.Assign(level, ConfigSource.IConfiguration);
		}

		// this is used to ensure LoggingEventListener matches our log level by using the lowest
		// of our configured loglevel or the default logging section's level.
		var eventLogLevel = logLevel.Value;
		if (!string.IsNullOrEmpty(LoggingSectionLogLevel))
		{
			var sectionLogLevel = LogLevelHelpers.ToLogLevel(LoggingSectionLogLevel!) ?? LogLevel.None;

			if (sectionLogLevel < eventLogLevel)
				eventLogLevel = sectionLogLevel;
		}

		eventLevel = eventLogLevel switch
		{
			LogLevel.Trace => EventLevel.Verbose,
			LogLevel.Information => EventLevel.Informational,
			LogLevel.Warning => EventLevel.Warning,
			LogLevel.Error => EventLevel.Error,
			LogLevel.Critical => EventLevel.Critical,

			_ => EventLevel.Informational // fallback to info level
		};
	}