Files
SteamWare/SteamWare.Logger/Logging.cs
T
2020-09-26 16:27:21 +02:00

97 lines
2.0 KiB
C#

using NLog;
using NLog.Config;
using NLog.Targets;
using System;
using static SteamWare.Logger.Constants;
namespace SteamWare.Logger
{
/// <summary>
/// Classe helper x LOG basata su NLog
/// </summary>
public static class Logging
{
/// <summary>
/// S
/// </summary>
public static NLog.Logger Instance { get; private set; }
static Logging()
{
#if DEBUG
// Setup the logging view for Sentinel - http://sentinel.codeplex.com
var sentinalTarget = new NLogViewerTarget()
{
Name = "sentinal",
Address = "udp://127.0.0.1:9999",
IncludeNLogData = false
};
var sentinalRule = new LoggingRule("*", LogLevel.Trace, sentinalTarget);
LogManager.Configuration.AddTarget("sentinal", sentinalTarget);
LogManager.Configuration.LoggingRules.Add(sentinalRule);
#endif
LogManager.ReconfigExistingLoggers();
Instance = LogManager.GetCurrentClassLogger();
}
private static NLog.Logger Log = LogManager.GetCurrentClassLogger();
public static void LogException(Exception ex, ERROR_LEVEL errorLevel)
{
LogMessage(ex.Message, errorLevel);
}
public static void LogMessage(string message, ERROR_LEVEL errorLevel)
{
switch (errorLevel)
{
case ERROR_LEVEL.INFO:
{
Log.Info(message);
}
break;
case ERROR_LEVEL.WARNING:
{
Log.Warn(message);
}
break;
case ERROR_LEVEL.ERROR:
{
Log.Error(message);
}
break;
case ERROR_LEVEL.FATAL:
{
Log.Fatal(message);
}
break;
}
}
public static void LogInfo(string message)
{
Log.Info(message);
}
public static void LogWarning(string message)
{
Log.Warn(message);
}
public static void LogError(string message)
{
Log.Error(message);
}
public static void LogFatal(string message)
{
Log.Fatal(message);
}
}
}