public virtual Dictionary <string, object> DoInvoke(IDynamicLoggerProvider provider, LoggersChangeRequest request) { Dictionary <string, object> result = new Dictionary <string, object>(); if (request != null) { SetLogLevel(provider, request.Name, request.Level); } else { AddLevels(result); var configuration = GetLoggerConfigurations(provider); Dictionary <string, LoggerLevels> loggers = new Dictionary <string, LoggerLevels>(); foreach (var c in configuration.OrderBy(entry => entry.Name)) { _logger.LogTrace("Adding " + c.ToString()); LoggerLevels lv = new LoggerLevels(c.ConfiguredLevel, c.EffectiveLevel); loggers.Add(c.Name, lv); } result.Add("loggers", loggers); } return(result); }
private ILoggerFactory GetLoggerFactory(IConfiguration configuration) { var loggerFactory = DependencyContainer.GetService <ILoggerFactory>(false); if (loggerFactory == null) { var serviceProvider = new ServiceCollection() .AddLogging(builder => builder .AddDynamicConsole()) .BuildServiceProvider(); dynamicLoggerProvider = serviceProvider.GetRequiredService <IDynamicLoggerProvider>(); return(serviceProvider.GetRequiredService <ILoggerFactory>()); } dynamicLoggerProvider = DependencyContainer.GetService <IDynamicLoggerProvider>(false); if (dynamicLoggerProvider == null) { dynamicLoggerProvider = GetDynamicLoggerProvider(configuration); loggerFactory.AddProvider(dynamicLoggerProvider); } return(loggerFactory); }
public virtual ICollection <ILoggerConfiguration> GetLoggerConfigurations(IDynamicLoggerProvider provider) { if (provider == null) { _logger?.LogInformation("Unable to access Cloud Foundry Logging provider, log configuration unavailable"); return(new List <ILoggerConfiguration>()); } return(provider.GetLoggerConfigurations()); }
public virtual void SetLogLevel(IDynamicLoggerProvider provider, string name, string level) { if (provider == null) { _logger?.LogInformation("Unable to access Cloud Foundry Logging provider, log level not changed"); return; } if (string.IsNullOrEmpty(name)) { throw new ArgumentException(nameof(name)); } provider.SetLogLevel(name, LoggerLevels.MapLogLevel(level)); }
public void Configuration(IAppBuilder app) { var builder = new ConfigurationBuilder(); var appSettings = new Dictionary <string, string>(OwinTestHelpers.Appsettings) { }; builder.AddInMemoryCollection(appSettings); builder.AddEnvironmentVariables(); var config = builder.Build(); LoggerProvider = new DynamicLoggerProvider(new ConsoleLoggerSettings().FromConfiguration(config)); LoggerFactory = new LoggerFactory(); LoggerFactory.AddProvider(LoggerProvider); app.UseLoggersActuator(config, LoggerProvider, LoggerFactory); }
public TestLoggersEndpoint(ILoggersOptions options, IDynamicLoggerProvider loggerProvider = null, ILogger <LoggersEndpoint> logger = null) : base(options, loggerProvider, logger) { }
public LoggersEndpoint(ILoggersOptions options, IDynamicLoggerProvider cloudFoundryLoggerProvider, ILogger <LoggersEndpoint> logger = null) : base(options) { _cloudFoundryLoggerProvider = cloudFoundryLoggerProvider; _logger = logger; }
public SerilogDynamicLoggerFactory(IDynamicLoggerProvider provider) { _provider = provider; }