public static ILoggerFactory AddRethinkDb(this ILoggerFactory factory,
                                           IRethinkDbLoggerService service,
                                           Func <string, LogLevel, bool> filter = null)
 {
     factory.AddProvider(new RethinkDbLoggerProvider(filter, service));
     return(factory);
 }
Пример #2
0
        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory,
                              IRethinkDbLoggerService rethinkDbLoggerService,
                              IRethinkDbStore store)
        {
            loggerFactory.AddConsole(Configuration.GetSection("Logging"));
            loggerFactory.AddDebug();

            // create log database, tables and indexes if not exists
            rethinkDbLoggerService.InitializeDatabase();

            // enable RethinkDb logging
            loggerFactory.AddRethinkDb(rethinkDbLoggerService, LogLevel.Information);

            app.UseMvc();

            // create TokenStore database, tables and indexes if not exists
            store.InitializeDatabase();

            // register issuer
            store.InsertOrUpdateIssuer(new Issuer
            {
                Name      = Environment.MachineName,
                Version   = PlatformServices.Default.Application.ApplicationVersion,
                Timestamp = DateTime.UtcNow
            });
        }
 public static ILoggerFactory AddRethinkDb(this ILoggerFactory factory,
                                           IRethinkDbLoggerService service,
                                           LogLevel minLevel)
 {
     return(AddRethinkDb(
                factory,
                service,
                (_, logLevel) => logLevel >= minLevel));
 }
Пример #4
0
        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app, IHostingEnvironment env,
                              ILoggerFactory loggerFactory,
                              IRethinkDbLoggerService rethinkDbLoggerService,
                              BackgroundTaskManager backgroundTaskManager)
        {
            loggerFactory.AddConsole(Configuration.GetSection("Logging"));
            loggerFactory.AddDebug();

            if (env.IsDevelopment())
            {
                // enable RethinkDb driver logging
                loggerFactory.EnableRethinkDbLogging();
            }

            // enable RethinkDb log provider
            loggerFactory.AddRethinkDb(rethinkDbLoggerService, LogLevel.Warning);

            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
                app.UseBrowserLink();
            }
            else
            {
                app.UseExceptionHandler("/Home/Error");
            }

            app.UseStaticFiles();

            app.UseMvc(routes =>
            {
                routes.MapRoute(
                    name: "default",
                    template: "{controller=Home}/{action=Index}/{id?}");
            });

            // try to avoid connection being dropped due to inactivity
            backgroundTaskManager.StartKeepAlive();

            // run log watcher on a background thread
            backgroundTaskManager.StartLogChangeFeed();

            app.UseWebSockets();
            app.UseSignalR();
        }
Пример #5
0
 public RethinkDbLoggerProvider(Func <string, LogLevel, bool> filter, IRethinkDbLoggerService service)
 {
     _service = service;
     _filter  = filter;
 }
Пример #6
0
 public RethinkDbLogger(string categoryName, Func <string, LogLevel, bool> filter, IRethinkDbLoggerService service)
 {
     _categoryName = categoryName;
     _filter       = filter;
     _service      = service;
 }