Example #1
0
 private TypeRegistration CreateLogWriterStructureHolderRegistration()
 {
     return
         (new TypeRegistration <LogWriterStructureHolder>(() =>
                                                          new LogWriterStructureHolder(
                                                              Container.ResolvedEnumerable <ILogFilter>(LogFilters.Select(lfd => lfd.Name)),
                                                              TraceSources.Select(tsd => tsd.Name).ToArray(),
                                                              Container.ResolvedEnumerable <LogSource>(TraceSources.Select(tsd => tsd.Name)),
                                                              Container.Resolved <LogSource>(AllTraceSourceKey),
                                                              Container.Resolved <LogSource>(NoMatchesTraceSourceKey),
                                                              Container.Resolved <LogSource>(ErrorsTraceSourceKey),
                                                              DefaultCategory,
                                                              TracingEnabled,
                                                              LogWarningWhenNoCategoriesMatch,
                                                              RevertImpersonation))
     {
         Lifetime = TypeRegistrationLifetime.Transient,
         IsDefault = true
     });
 }
Example #2
0
        private IEnumerable <TypeRegistration> GetRegistrationsCore(IConfigurationSource configurationSource)
        {
            var registrations = new List <TypeRegistration>();

            registrations.Add(CreateLoggingInstrumentationProviderRegistration(configurationSource));
            registrations.Add(CreateLoggingUpdateCoordinatorRegistration());
            registrations.Add(CreateLogWriterRegistration());
            registrations.Add(CreateDefaultLoggingEventLoggerRegistration(configurationSource));
            registrations.AddRange(TraceListeners.SelectMany(tld => tld.GetRegistrations()));
            registrations.AddRange(LogFilters.SelectMany(lfd => lfd.GetRegistrations()));
            registrations.AddRange(Formatters.SelectMany(fd => fd.GetRegistrations()));
            registrations.AddRange(TraceSources.Select(tsd => tsd.GetRegistrations()));
            registrations.Add(
                CreateLogSourceRegistration(SpecialTraceSources.AllEventsTraceSource, AllTraceSourceKey));
            registrations.Add(
                CreateLogSourceRegistration(SpecialTraceSources.NotProcessedTraceSource, NoMatchesTraceSourceKey));
            registrations.Add(
                CreateLogSourceRegistration(SpecialTraceSources.ErrorsTraceSource, ErrorsTraceSourceKey));
            registrations.Add(CreateLogWriterStructureHolderRegistration());
            registrations.Add(CreateTraceManagerRegistration());
            registrations.Add(CreateTracerInstrumentationProviderRegistration(configurationSource));

            return(registrations);
        }