private void ConfigureLogging(IServiceCollection services) { services.AddLykkeLogging(); var serilogConfigurator = new SerilogConfigurator(); #if DEBUG var configBuilder = new ConfigurationBuilder(); configBuilder.AddJsonFile("serilogsettings.json", optional: false); serilogConfigurator.AddFromConfiguration(configBuilder.Build()); #else if (!string.IsNullOrWhiteSpace(_appSettings.Db.ConnectionString)) { serilogConfigurator.AddAzureTable( _appSettings.Db.ConnectionString, "SettingsServiceLog"); } if (!string.IsNullOrWhiteSpace(_appSettings.SlackNotificationsConnString) && !string.IsNullOrWhiteSpace(_appSettings.SlackNotificationsQueueName)) { serilogConfigurator.AddAzureQueue( _appSettings.SlackNotificationsConnString, _appSettings.SlackNotificationsQueueName); } #endif serilogConfigurator.Configure(); }
public HoustonSettingsConfigurator(ServiceApiHoustonProperties properties) { this.properties = properties; Settings = ApplicationSettings.LoadDefault("serviceApi.csf"); Logger = new SerilogLog(SerilogConfigurator.ConfigureLogger(Settings.GetString("LogDirectory")).WithConsole().CreateLogger()); ConfigureContainer(); }
public override void SetUp(string suiteName, Assembly testAssembly, IEditableGroboTestContext suiteContext) { var settings = new BaseServiceSettings(suiteContext.Container.Get <IApplicationSettings>()); SerilogConfigurator.ConfigureDefault(settings.LogDirectory); suiteContext.Container.Configurator.ForAbstraction <ILogger>().UseInstances(Log.Logger); }
public static HostConfigurator UseLogging(this HostConfigurator hostConfigurator, IApplicationSettings applicationSettings) { var settings = new BaseServiceSettings(applicationSettings); SerilogConfigurator.ConfigureDefault(settings.LogDirectory); hostConfigurator.UseSerilog(); return(hostConfigurator); }
public static IHostBuilder UseDefaultNetDaemonLogging(this IHostBuilder hostBuilder) { return(hostBuilder .ConfigureWebHostDefaults(webbuilder => { Log.Logger = SerilogConfigurator.Configure().CreateLogger(); webbuilder.UseSerilog(Log.Logger); })); }
public HoustonSettingsConfigurator(FrontApiHoustonProperties properties) { this.properties = properties; Settings = new ApplicationSettingsBuilder() .LoadFromLocalSettings("frontApi.csf") .Build(); Logger = new SerilogLog(SerilogConfigurator.ConfigureLogger(Settings.GetString("LogDirectory")).WithConsole().CreateLogger()); ConfigureContainer(); }
public void UsingCode() { var sink = new MySink(); Log.Logger = new LoggerConfiguration() .WriteTo.Sink(sink) .CreateLogger(); SerilogConfigurator.Configure(); Configure.With() .DefaultBuilder(); Assert.IsNotEmpty(sink.LogEvents); }
public static void Configure(this IContainer container) { var applicationSettings = ApplicationSettings.LoadDefault("actualizer.csf"); var settings = new BaseServiceSettings(applicationSettings); Log.Logger = SerilogConfigurator .ConfigureLogger(settings.LogDirectory) .WithConsole() .CreateLogger(); container.Configurator.ForAbstraction <IApplicationSettings>().UseInstances(applicationSettings); Log.Logger.Information("Start actualizing cassandra"); container.ConfigureRepositories(); }
public static void Main(string[] args) { Log.Logger = SerilogConfigurator.CreateLogger(); try { Log.Logger.Information("Starting up"); using var webHost = CreateWebHostBuilder(args).Build(); webHost.Run(); } catch (Exception ex) { Log.Logger.Fatal(ex, "Application start-up failed"); Log.CloseAndFlush(); throw; } }
public static void Main(string[] args) { var container = new Container(new ContainerConfiguration(AssembliesLoader.Load())); var settings = ApplicationSettings.LoadDefault("godLikeTools.csf"); container.Configurator.ForAbstraction <IApplicationSettings>().UseInstances(settings); container.ConfigureRepositories(); var logger = new SerilogLog(SerilogConfigurator.ConfigureLogger(settings.GetString("LogDirectory")).WithConsole().CreateLogger()); container.Configurator.ForAbstraction <ILog>().UseInstances(logger); var commandLine = new CommandLine(args); var command = commandLine.GetCommandLineSetting("-mode"); var processorTypes = Assembly.GetExecutingAssembly() .GetTypes() .Where(x => typeof(ICommandProcessor).IsAssignableFrom(x)) .ToArray(); var processorsGroup = processorTypes.GroupBy(x => x.Name).FirstOrDefault(group => group.Count() > 1); if (processorsGroup != null) { throw new Exception("Some processors have same command descriptions: " + processorsGroup.First().Name); } var processorType = processorTypes.SingleOrDefault(x => x.Name == command); if (processorType == null) { throw new BadCommandLineException("The list of available commands: " + string.Join(", ", processorTypes.Select(p => p.Name))); } var processor = (ICommandProcessor)container.Get(processorType); processor.Run(commandLine); container.Dispose(); logger.Info($"GodLikeTool Processor in mode '{command}' completed"); }
private static void ReadHassioConfig() { try { var hassAddOnSettings = JsonSerializer.Deserialize <HassioConfig>(File.ReadAllBytes(HassioConfigPath)); if (hassAddOnSettings?.LogLevel is not null) { Environment.SetEnvironmentVariable("LOGGING__MINIMUMLEVEL", hassAddOnSettings.LogLevel); SerilogConfigurator.SetMinimumLogLevel(hassAddOnSettings.LogLevel); } if (hassAddOnSettings?.GenerateEntitiesOnStart is not null) { Environment.SetEnvironmentVariable("NETDAEMON__GENERATEENTITIES", hassAddOnSettings.GenerateEntitiesOnStart.ToString()); } if (hassAddOnSettings?.LogMessages is not null && hassAddOnSettings.LogMessages == true) { Environment.SetEnvironmentVariable("HASSCLIENT_MSGLOGLEVEL", "Default"); } _ = hassAddOnSettings?.AppSource ?? throw new NetDaemonNullReferenceException("AppSource cannot be null"); if (hassAddOnSettings.AppSource.StartsWith("/", true, CultureInfo.InvariantCulture) || hassAddOnSettings.AppSource[1] == ':') { // Hard codede path Environment.SetEnvironmentVariable("NETDAEMON__APPSOURCE", hassAddOnSettings.AppSource); } else { // We are in Hassio so hard code the path Environment.SetEnvironmentVariable("NETDAEMON__APPSOURCE", Path.Combine("/config/netdaemon", hassAddOnSettings.AppSource)); } } catch (Exception e) { Log.Fatal(e, "Failed to read the Home Assistant Add-on config"); } }
public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory) { SerilogConfigurator.Configure(env); loggerFactory.AddSerilog(Log.Logger); app.UseCors("default"); //app.UseIdentityServerAuthentication(new IdentityServerAuthenticationOptions //{ // Authority = corsSettings.authorityUrl, // RequireHttpsMetadata = false, // ApiName = "LeasingWebApi" //}); app.UseMvc(); // Enable middleware to serve generated Swagger as a JSON endpoint app.UseSwagger(); // Enable middleware to serve swagger-ui assets (HTML, JS, CSS etc.) app.UseSwaggerUi(c => c.SwaggerEndpoint("/swagger/v1/swagger.json", "Demo WebApi") ); }
public static ILoggingBuilder AddSerilogJsonConsole(this ILoggingBuilder builder) { builder.Services.AddSingleton <ILoggerProvider, SerilogLoggerProvider>(services => new SerilogLoggerProvider(SerilogConfigurator.Config(), true)); return(builder); }
public static IHostBuilder UseDefaultNetDaemonLogging(this IHostBuilder hostBuilder) { return(hostBuilder.UseSerilog((context, loggerConfiguration) => SerilogConfigurator.Configure(loggerConfiguration, context.HostingEnvironment))); }