mirror of
https://github.com/Stone-Red-Code/EchoHub.git
synced 2026-09-04 23:40:34 +02:00
Enhance configuration and logging setup
- Added Microsoft.Extensions.Configuration.Json and Serilog.Settings.Configuration packages. - Configured Serilog to read settings from appsettings.json. - Updated .gitignore to exclude database and upload files. - Refactored MainWindow to improve key handling and menu structure. - Introduced appsettings.example.json for logging configuration.
This commit is contained in:
@@ -6,6 +6,7 @@ using EchoHub.Client.UI;
|
||||
using EchoHub.Core.Constants;
|
||||
using EchoHub.Core.DTOs;
|
||||
using EchoHub.Core.Models;
|
||||
using Microsoft.Extensions.Configuration;
|
||||
using Serilog;
|
||||
using Terminal.Gui.App;
|
||||
using Terminal.Gui.Views;
|
||||
@@ -26,16 +27,14 @@ public static class Program
|
||||
|
||||
public static void Main()
|
||||
{
|
||||
// Configure Serilog file logger
|
||||
var logDir = Path.Combine(
|
||||
Environment.GetFolderPath(Environment.SpecialFolder.UserProfile), ".echohub", "logs");
|
||||
// Configure Serilog from appsettings.json
|
||||
var configuration = new ConfigurationBuilder()
|
||||
.SetBasePath(AppContext.BaseDirectory)
|
||||
.AddJsonFile("appsettings.json", optional: false, reloadOnChange: false)
|
||||
.Build();
|
||||
|
||||
Log.Logger = new LoggerConfiguration()
|
||||
.MinimumLevel.Debug()
|
||||
.WriteTo.File(
|
||||
Path.Combine(logDir, "echohub-.log"),
|
||||
rollingInterval: RollingInterval.Day,
|
||||
retainedFileCountLimit: 7,
|
||||
outputTemplate: "{Timestamp:yyyy-MM-dd HH:mm:ss.fff} [{Level:u3}] {Message:lj}{NewLine}{Exception}")
|
||||
.ReadFrom.Configuration(configuration)
|
||||
.CreateLogger();
|
||||
|
||||
Log.Information("EchoHub client starting");
|
||||
|
||||
Reference in New Issue
Block a user