/// <summary>
        /// Adds the Activity Consumer Observer to a MassTransit Consumer.
        /// </summary>
        /// <param name="consumeObserverConnector">The <see cref="IConsumeObserverConnector"/> to which the <see cref="IConsumeObserver"/> will be added.</param>
        /// <returns>The<see cref="IConsumeObserverConnector"/>. </returns>
        public static IConsumeObserverConnector AddActivityConsumerObserver([NotNull] this IConsumeObserverConnector consumeObserverConnector)
        {
            if (consumeObserverConnector == null)
            {
                throw new ArgumentNullException(nameof(consumeObserverConnector));
            }

            return(consumeObserverConnector.AddActivityConsumerObserver(null));
        }
        /// <summary>
        /// Adds the Activity Consumer Observer with Tracing to a MassTransit Consumer.
        /// </summary>
        /// <param name="consumeObserverConnector">The <see cref="IConsumeObserverConnector"/> to which the <see cref="IConsumeObserver"/> will be added.</param>
        /// <param name="serviceProvider">The <see cref="IServiceProvider"/>.</param>
        /// <returns>The<see cref="IConsumeObserverConnector"/>. </returns>
        public static IConsumeObserverConnector AddActivityConsumerObserverWithTracing([NotNull] this IConsumeObserverConnector consumeObserverConnector, [NotNull] IServiceProvider serviceProvider)
        {
            if (consumeObserverConnector == null)
            {
                throw new ArgumentNullException(nameof(consumeObserverConnector));
            }
            if (serviceProvider == null)
            {
                throw new ArgumentNullException(nameof(serviceProvider));
            }

            var tracerFactory = serviceProvider.GetService <TracerFactory>();

            return(consumeObserverConnector.AddActivityConsumerObserver(tracerFactory));
        }