Integracion_DGA/SHARED/Helper/FileLoggerHelper.cs
bcastrogallardo f62bb133c5 prueba logs
2025-09-11 13:05:43 -03:00

44 lines
1.4 KiB
C#

using Microsoft.Extensions.Configuration;
using Serilog;
using Shared.DTO.VariablesEntorno;
namespace Shared.Helper
{
public class FileLoggerHelper
{
public static void ConfigureLogger(IConfiguration configuration)
{
var logFilePath = configuration.GetSection("Logging:LogFile:Path").Value ?? "logs/log-.txt";
var exePath = AppContext.BaseDirectory;
var logFileFullPath = Path.Combine(exePath, logFilePath);
var logDirectory = Path.GetDirectoryName(logFileFullPath);
if (!string.IsNullOrEmpty(logDirectory))
{
Directory.CreateDirectory(logDirectory);
}
Log.Logger = new LoggerConfiguration()
.ReadFrom.Configuration(configuration)
.WriteTo.File(
path: logFileFullPath,
rollingInterval: RollingInterval.Day,
shared: true,
retainedFileCountLimit: 30,
outputTemplate: "{Timestamp:yyyy-MM-dd HH:mm:ss} [{Level:u3}] {Message:lj}{NewLine}{Exception}"
)
.CreateLogger();
}
public static void LogInformation(string message)
{
Log.Information($"{message}");
}
public static void LogError(string message, Exception ex)
{
Log.Error(ex, message);
}
}
}