void IObserver <DiagnosticListener> .OnNext(DiagnosticListener listener) { foreach (var subscriber in _diagnosticObservers) { IDisposable subscription = subscriber.SubscribeIfMatch(listener); if (subscription != null) { if (Log.IsEnabled(LogEventLevel.Verbose)) { Log.Verbose( "Subscriber '{0}' returned subscription for '{1}'", subscriber.GetType().Name, listener.Name); } _subscriptions.Add(subscription); } } }