From 716d75a0725595d720d268ac891d6dae34593c15 Mon Sep 17 00:00:00 2001 From: csimonapastore Date: Sun, 7 Apr 2024 17:50:11 +0200 Subject: [PATCH] Added base NLog configuration --- MainProject/MainProject.csproj | 1 + MainProject/NLog.config | 2 +- MainProject/Program.cs | 20 ++++++++++++++++++++ 3 files changed, 22 insertions(+), 1 deletion(-) diff --git a/MainProject/MainProject.csproj b/MainProject/MainProject.csproj index 85de4cc..74e83bf 100644 --- a/MainProject/MainProject.csproj +++ b/MainProject/MainProject.csproj @@ -11,6 +11,7 @@ + diff --git a/MainProject/NLog.config b/MainProject/NLog.config index 75181c3..79944f2 100644 --- a/MainProject/NLog.config +++ b/MainProject/NLog.config @@ -3,7 +3,7 @@ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> - + diff --git a/MainProject/Program.cs b/MainProject/Program.cs index f00ce17..5016994 100644 --- a/MainProject/Program.cs +++ b/MainProject/Program.cs @@ -1,15 +1,22 @@ using System; using Microsoft.OpenApi.Models; +using NLog; using BasicDotnetTemplate.MainProject.Models.Settings; using BasicDotnetTemplate.MainProject.Utils; namespace BasicDotnetTemplate.MainProject; internal static class Program { + private static readonly NLog.Logger Logger = NLog.LogManager.GetCurrentClassLogger(); + + public static void Main(string[] args) { + Logger.Info("[Program][Main] Start building"); var builder = WebApplication.CreateBuilder(args); + Logger.Info("[Program][Main] Creating configuration"); + var _configuration = new ConfigurationBuilder() .SetBasePath(System.AppDomain.CurrentDomain.BaseDirectory) .AddJsonFile("appsettings.json", optional: false, reloadOnChange: true) @@ -23,9 +30,14 @@ internal static class Program PrivateSettings privateSettings = new PrivateSettings(); _configuration.GetSection("PrivateSettings").Bind(privateSettings); + + Logger.Info("[Program][Main] Building settings"); + builder.Services.Configure(_configuration.GetSection("AppSettings")); builder.Services.Configure(_configuration.GetSection("PrivateSettings")); + Logger.Info("[Program][Main] Adding services"); + builder.Services.AddAuthentication(); builder.Services.AddAuthorization(); @@ -37,6 +49,8 @@ internal static class Program appSettings.PrivateSettings = privateSettings; _configuration.GetSection("AppSettings").Bind(appSettings); + Logger.Info("[Program][Main] Initializing swagger doc"); + OpenApiInfo openApiInfo = new() { Version = appSettings.Settings?.Version, @@ -99,7 +113,13 @@ internal static class Program }); } + Logger.Info("[Program][Main] Launching app"); + app.Run(); + + Logger.Info("[Program][Main] Shutting down logger"); + + NLog.LogManager.Shutdown(); // Flush and close down internal threads and timers } } \ No newline at end of file