chore(Finalizer.Program): enhance configuration and environment-specific JSON loading

- Changed Serilog configuration file from `appsettings.json` to `appsettings.Logging.json`.
- Added logging for application startup.
- Dynamically load environment-specific appsettings JSON files, excluding `Development` and `migration` files.
This commit is contained in:
2025-11-03 11:41:55 +01:00
parent 02937360ea
commit b303b7be06
5 changed files with 122 additions and 91 deletions

View File

@@ -7,12 +7,14 @@ using Serilog;
// Load Serilog from appsettings.json
Log.Logger = new LoggerConfiguration()
.ReadFrom.Configuration(new ConfigurationBuilder()
.AddJsonFile("appsettings.json", optional: false, reloadOnChange: true)
.AddJsonFile("appsettings.Logging.json", optional: false, reloadOnChange: true)
.Build())
.CreateLogger();
try
{
Log.Information("Application is starting...");
var builder = Host.CreateApplicationBuilder(args);
// add serilog
@@ -20,6 +22,14 @@ try
builder.Logging.AddSerilog();
var config = builder.Configuration;
Directory
.GetFiles(builder.Environment.ContentRootPath, "appsettings.*.json", SearchOption.TopDirectoryOnly)
.Where(file => Path.GetFileName(file) != $"appsettings.Development.json")
.Where(file => Path.GetFileName(file) != $"appsettings.migration.json")
.ToList()
.ForEach(file => config.AddJsonFile(file, true, true));
builder.Services.AddHostedService<Worker>();
#region Add DB Context, EG Inf. and Services