public static ILoggerFactory AddRethinkDb(this ILoggerFactory factory, IRethinkDbLoggerService service, Func <string, LogLevel, bool> filter = null) { factory.AddProvider(new RethinkDbLoggerProvider(filter, service)); return(factory); }
// 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)); }
// 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(); }
public RethinkDbLoggerProvider(Func <string, LogLevel, bool> filter, IRethinkDbLoggerService service) { _service = service; _filter = filter; }
public RethinkDbLogger(string categoryName, Func <string, LogLevel, bool> filter, IRethinkDbLoggerService service) { _categoryName = categoryName; _filter = filter; _service = service; }