private static IHostBuilder CreateHostBuilder(string[] args) { var loggerConfiguration = new LoggerConfiguration() .MinimumLevel.Debug() .MinimumLevel.Override("Microsoft", LogEventLevel.Error) .Enrich.FromLogContext() .WriteTo.Logger(l => { l.WriteHostedServiceMessagesToConsole(); }); var logger = loggerConfiguration.CreateLogger(); var context = new HostedServiceContext(); return(new HostBuilder() .UseConsoleLifetime() .ConfigureServices(services => { services.AddSingleton(context); services.AddTransient <SeqHostedService>(); services.AddSequentialHostedServices("root", r => r .Host <SeqHostedService>() .Host <MySqlHostedService>() .HostParallel("web-apps", p => p .Host <MainWebAppHostedService>() .Host <AdminWebAppHostedService>())); }) .UseSerilog(logger)); }
public SeqHostedService( HostedServiceContext context, ILogger <DockerHostedService> logger) : base(logger) { _context = context; SinkUri = new Uri($"http://localhost:{Port}"); }
public MySqlHostedService(HostedServiceContext context, ILogger <DockerHostedService> logger, bool leaveRunning = false) : base(logger, leaveRunning) { _context = context; }
public MainWebAppHostedService(HostedServiceContext context) { _context = context; }