Innovenergy_trunk/csharp/App/GrowattCommunication/DataLogging/Logger.cs

40 lines
1.2 KiB
C#

using Microsoft.Extensions.Logging;
namespace InnovEnergy.App.GrowattCommunication.DataLogging;
public static class Logger
{
// Specify the maximum log file size in bytes (e.g., 1 MB)
//private const Int32 MaxFileSizeBytes = 2024 * 30; // TODO: move to settings
private const Int32 MaxLogFileCount = 5000; // TODO: move to settings
private const String LogFilePath = "JsonLogDirectory/log.json"; // TODO: move to settings
// ReSharper disable once InconsistentNaming
private static readonly ILogger _logger = new CustomLogger(LogFilePath, MaxLogFileCount);
public static T LogInfo<T>(this T t) where T : notnull
{
_logger.LogInformation(t.ToString()); // TODO: check warning
return t;
}
public static T LogDebug<T>(this T t) where T : notnull
{
// _logger.LogDebug(t.ToString()); // TODO: check warning
return t;
}
public static T LogError<T>(this T t) where T : notnull
{
// _logger.LogError(t.ToString()); // TODO: check warning
return t;
}
public static T LogWarning<T>(this T t) where T : notnull
{
// _logger.LogWarning(t.ToString()); // TODO: check warning
return t;
}
}