Пример #1
0
        public static ILoggerFactory AddZooLogger(this ILoggerFactory loggerFactory, IOperationScopeProvider operationScopeProvider, IConfiguration config)
        {
            var settings = new ConfigurationConsoleLoggerSettings(config);

            loggerFactory.AddProvider(new ZooLoggerProvider(operationScopeProvider, (s, level) => true));

            return(loggerFactory);
        }
Пример #2
0
        public void Timestamp_ReadFromFile_IsTrue()
        {
            var configuration = CreateConfiguration("appsettings-timestamp.json");

            var settings = new ConfigurationConsoleLoggerSettings(
                configuration.GetSection("Logging"));

            Assert.NotNull(settings.TimestampPolicy);
            Assert.Equal("UTC", settings.TimestampPolicy.TimeZone);
            Assert.Equal("foo", settings.TimestampPolicy.Format);
        }
Пример #3
0
        protected void Application_Start()
        {
            ILoggerFactory factory = new LoggerFactory();

            AreaRegistration.RegisterAllAreas();
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            BundleConfig.RegisterBundles(BundleTable.Bundles);

            ServerConfig.RegisterConfig("development");

            // Add Console logging provider
            var settings = new ConfigurationConsoleLoggerSettings(ServerConfig.Configuration.GetSection("Logging"));

            factory.AddProvider(new ConsoleLoggerProvider(settings));

            ILogger <MvcApplication> logger = factory.CreateLogger <MvcApplication>();

            logger.LogInformation("Starting to build container");

            var builder = new ContainerBuilder();

            // Register all the controllers with Autofac
            builder.RegisterControllers(typeof(MvcApplication).Assembly);

            // Register logger factory
            builder.RegisterLoggingFactory(factory);

            // Register IDiscoveryClient, etc.
            builder.RegisterDiscoveryClient(ServerConfig.Configuration, factory);

            // Register FortuneService Hystrix command
            builder.RegisterHystrixCommand <IFortuneService, FortuneService>("fortuneService", ServerConfig.Configuration);

            // Register Hystrix Metrics/Monitoring stream
            builder.RegisterHystrixMetricsStream(ServerConfig.Configuration);

            // Create the Autofac container
            var container = builder.Build();

            DependencyResolver.SetResolver(new AutofacDependencyResolver(container));

            logger.LogInformation("Finished container build, starting background services");

            // Start the Discovery client background thread
            _client = container.Resolve <IDiscoveryClient>();

            // Start the Hystrix Metrics stream
            _publisher = container.Resolve <HystrixMetricsStreamPublisher>();

            logger.LogInformation("Finished starting background services");
        }
Пример #4
0
        public void BooleanSetting_ReadFromFile_IsTrue()
        {
            var configuration = CreateConfiguration("appsettings-booleans.json");

            var settings = new ConfigurationConsoleLoggerSettings(
                configuration.GetSection("Logging"));

            Assert.True(settings.IncludeScopes);
            Assert.True(settings.IncludeLineBreak);
            Assert.True(settings.IncludeLogNamespace);
            Assert.True(settings.IncludeTimestamp);
            Assert.True(settings.IncludeZeroEventId);
        }
Пример #5
0
        protected void Application_Start()
        {
            LoggerFactory factory = new LoggerFactory();

            GlobalConfiguration.Configure(WebApiConfig.Register);

            var config = GlobalConfiguration.Configuration;

            // Build application configuration
            ServerConfig.RegisterConfig("development");

            // Add Console logging provider
            var settings = new ConfigurationConsoleLoggerSettings(ServerConfig.Configuration.GetSection("Logging"));

            factory.AddProvider(new ConsoleLoggerProvider(settings));

            ILogger <WebApiApplication> logger = factory.CreateLogger <WebApiApplication>();

            logger.LogInformation("Starting to build container");

            // Create IOC container builder
            var builder = new ContainerBuilder();

            // Register logger factory
            builder.RegisterLoggingFactory(factory);

            // Register your Web API controllers.
            builder.RegisterApiControllers(Assembly.GetExecutingAssembly());

            // Register IDiscoveryClient, etc.
            builder.RegisterDiscoveryClient(ServerConfig.Configuration, factory);

            // Initialize and Register FortuneContext
            builder.RegisterInstance(SampleData.InitializeFortunes()).SingleInstance();

            // Register FortuneRepository
            builder.RegisterType <FortuneRepository>().As <IFortuneRepository>().SingleInstance();

            var container = builder.Build();

            config.DependencyResolver = new AutofacWebApiDependencyResolver(container);

            logger.LogInformation("Finished container build, starting background services");

            // Start the Discovery client background thread
            _client = container.Resolve <IDiscoveryClient>();

            logger.LogInformation("Finished starting background services");
        }
Пример #6
0
        public void ConsoleLogger_Settings_LogLevelIgnoreCase()
        {
            var section = new Mock <IConfigurationSection>();

            section.SetupGet(x => x["MyTest"])
            .Returns("INFOrmAtiOn");

            var configuration = new Mock <IConfiguration>();

            configuration.Setup(x => x.GetSection("LogLevel"))
            .Returns(section.Object);

            var settings = new ConfigurationConsoleLoggerSettings(configuration.Object);

            LogLevel logLevel = LogLevel.None;

            settings.TryGetSwitch("MyTest", out logLevel);

            Assert.Equal(LogLevel.Information, logLevel);
        }
        /// <summary>
        /// </summary>
        /// <param name="factory">The <see cref="ILoggerFactory"/> to use.</param>
        /// <param name="configuration">The <see cref="IConfiguration"/> to use for <see cref="IConsoleLoggerSettings"/>.</param>
        /// <returns></returns>
        public static ILoggerFactory AddConsole(this ILoggerFactory factory, IConfiguration configuration)
        {
            var settings = new ConfigurationConsoleLoggerSettings(configuration);

            return(factory.AddConsole(settings));
        }