Exemple #1
0
        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));
        }
Exemple #2
0
 public SeqHostedService(
     HostedServiceContext context,
     ILogger <DockerHostedService> logger)
     : base(logger)
 {
     _context = context;
     SinkUri  = new Uri($"http://localhost:{Port}");
 }
Exemple #3
0
 public MySqlHostedService(HostedServiceContext context, ILogger <DockerHostedService> logger, bool leaveRunning = false)
     : base(logger, leaveRunning)
 {
     _context = context;
 }
Exemple #4
0
 public MainWebAppHostedService(HostedServiceContext context)
 {
     _context = context;
 }