You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

41 lines
1.3 KiB

  1. using System.IO;
  2. using System.Threading.Tasks;
  3. using Microsoft.Extensions.Configuration;
  4. using Microsoft.Extensions.DependencyInjection;
  5. using Microsoft.Extensions.Hosting;
  6. using Microsoft.Extensions.Logging;
  7. using Serilog;
  8. using Serilog.Events;
  9. namespace Shentun.Peis.DbMigrator;
  10. class Program
  11. {
  12. static async Task Main(string[] args)
  13. {
  14. Log.Logger = new LoggerConfiguration()
  15. .MinimumLevel.Information()
  16. .MinimumLevel.Override("Microsoft", LogEventLevel.Warning)
  17. .MinimumLevel.Override("Volo.Abp", LogEventLevel.Warning)
  18. #if DEBUG
  19. .MinimumLevel.Override("Shentun.Peis", LogEventLevel.Debug)
  20. #else
  21. .MinimumLevel.Override("Shentun.Peis", LogEventLevel.Information)
  22. #endif
  23. .Enrich.FromLogContext()
  24. .WriteTo.Async(c => c.File("Logs/logs.txt"))
  25. .WriteTo.Async(c => c.Console())
  26. .CreateLogger();
  27. await CreateHostBuilder(args).RunConsoleAsync();
  28. }
  29. public static IHostBuilder CreateHostBuilder(string[] args) =>
  30. Host.CreateDefaultBuilder(args)
  31. .AddAppSettingsSecretsJson()
  32. .ConfigureLogging((context, logging) => logging.ClearProviders())
  33. .ConfigureServices((hostContext, services) =>
  34. {
  35. services.AddHostedService<DbMigratorHostedService>();
  36. });
  37. }