diff options
| author | ivarlovlie <git@ivarlovlie.no> | 2020-08-01 20:14:34 +0200 |
|---|---|---|
| committer | ivarlovlie <git@ivarlovlie.no> | 2020-08-01 20:14:34 +0200 |
| commit | a800b3b9f18ae3e8ab030c30c5d7b6504f2a5ebb (patch) | |
| tree | 68ffcdb7a2b42418ff1c4818d0b2cd5af41d5fa2 /src/server/Program.cs | |
| download | dough-a800b3b9f18ae3e8ab030c30c5d7b6504f2a5ebb.tar.xz dough-a800b3b9f18ae3e8ab030c30c5d7b6504f2a5ebb.zip | |
Initial commit
Diffstat (limited to 'src/server/Program.cs')
| -rw-r--r-- | src/server/Program.cs | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/src/server/Program.cs b/src/server/Program.cs new file mode 100644 index 0000000..04a9447 --- /dev/null +++ b/src/server/Program.cs @@ -0,0 +1,55 @@ +using System;
+using Microsoft.AspNetCore.Hosting;
+using Microsoft.Extensions.Hosting;
+using Serilog;
+using Serilog.Events;
+using Serilog.Sinks.SystemConsole.Themes;
+
+namespace Dough
+{
+ public class Program
+ {
+ public static int Main(string[] args)
+ {
+ Log.Logger = new LoggerConfiguration()
+ .MinimumLevel.Debug()
+ .MinimumLevel.Override("Microsoft", LogEventLevel.Warning)
+ .MinimumLevel.Override("Microsoft.Hosting.Lifetime", LogEventLevel.Information)
+ .MinimumLevel.Override("System", LogEventLevel.Warning)
+ .MinimumLevel.Override("Microsoft.AspNetCore.Authentication", LogEventLevel.Information)
+ .Enrich.FromLogContext()
+ .WriteTo.File(
+ @"/var/log/money-manager.txt",
+ fileSizeLimitBytes: 4_000_000,
+ rollOnFileSizeLimit: true,
+ shared: true,
+ flushToDiskInterval: TimeSpan.FromSeconds(1))
+ .WriteTo.Console(outputTemplate: "[{Timestamp:HH:mm:ss} {Level}] {SourceContext}{NewLine}{Message:lj}{NewLine}{Exception}{NewLine}", theme: AnsiConsoleTheme.Code)
+ .CreateLogger();
+
+ try
+ {
+ Log.Information("Starting host...");
+ CreateHostBuilder(args).Build().Run();
+ return 0;
+ }
+ catch (Exception ex)
+ {
+ Log.Fatal(ex, "Host terminated unexpectedly.");
+ return 1;
+ }
+ finally
+ {
+ Log.CloseAndFlush();
+ }
+ }
+
+ public static IHostBuilder CreateHostBuilder(string[] args) =>
+ Host.CreateDefaultBuilder(args)
+ .UseSerilog()
+ .ConfigureWebHostDefaults(webBuilder =>
+ {
+ webBuilder.UseStartup<Startup>();
+ });
+ }
+}
|
