/// <summary>
            /// Attempts to create a new <see cref="CodecConfiguration"/> based on an IConfiguration.
            /// </summary>
            public static CodecConfiguration FromIConfiguration(ILoggerFactory loggerFactory, IConfiguration configuration)
            {
                ILogger logger = loggerFactory.CreateLogger <Configuration>();

                CodecConfiguration codecConfiguration = new CodecConfiguration(loggerFactory);
                string             propagation        = GetProperty(JaegerPropagation, logger, configuration);

                if (propagation != null)
                {
                    foreach (string format in propagation.Split(','))
                    {
                        if (Enum.TryParse <Propagation>(format, true, out var propagationEnum))
                        {
                            codecConfiguration.WithPropagation(propagationEnum);
                        }
                        else
                        {
                            logger.LogError("Unknown propagation format {format}", format);
                        }
                    }
                }
                return(codecConfiguration);
            }