| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- using System;
- using System.IO;
- using Microsoft.AspNetCore.Hosting;
- using Microsoft.Extensions.Configuration;
- using Microsoft.Extensions.Hosting;
- using Serilog;
- using Serilog.Events;
- namespace Procurement
- {
- public class Program
- {
- public static int Main(string[] args)
- {
- var configuration = new ConfigurationBuilder()
- .SetBasePath(Directory.GetCurrentDirectory())
- .AddJsonFile("appsettings.json")
- .AddEnvironmentVariables()
- .Build();
- Log.Logger = new LoggerConfiguration()
- #if DEBUG
- .MinimumLevel.Debug()
- #else
- .MinimumLevel.Information()
- #endif
- .MinimumLevel.Override("Microsoft", LogEventLevel.Information)
- .Enrich.FromLogContext()
- .WriteTo.Async(c => c.File("Logs/logs.txt"))
- .WriteTo.Console()
- .CreateLogger();
- try
- {
- Log.Information("Starting Procurement.Host");
- CreateHostBuilder(args).Build().Run();
- return 0;
- }
- catch (Exception ex)
- {
- Log.Fatal(ex, "Host terminated unexpectedly!");
- return 1;
- }
- finally
- {
- Log.CloseAndFlush();
- }
- }
- internal static IHostBuilder CreateHostBuilder(string[] args) =>
- Host.CreateDefaultBuilder(args)
- .ConfigureWebHostDefaults(webBuilder =>
- {
- webBuilder.UseStartup<Startup>();
- })
- .UseAutofac()
- .UseSerilog();
- }
- }
|