public void Run()

in src/Library/Library.cs [124:158]


        public void Run()
        {
            if (this.IsRunning)
            {
                throw new InvalidOperationException(
                    FormattableString.Invariant($"Can't Run the library, it's already running"));
            }

            try
            {
                try
                {
                    this.istioMixerInput?.Start();
                }
                catch (Exception e)
                {
                    Diagnostics.LogError(
                        FormattableString.Invariant($"Could not start the gRPC Istio's Mixer channel. {e.ToString()}"));

                    throw new InvalidOperationException(
                        FormattableString.Invariant($"Could not start the gRPC Istio's Mixer channel. {e.ToString()}"), e);
                }
            }
            catch (Exception)
            {
                // something went wrong, so stop both inputs to ensure consistent state
                this.EmergencyShutdownAllInputs();

                throw;
            }

            this.IsRunning = true;

            Task.Run(async () => await this.TraceStatsWorker().ConfigureAwait(false));
        }