У меня есть класс, который обертывает NLog (называется NLogger). Мои журналы сохраняются в моей базе данных. У меня возникла проблема с тем, как показать, где произошло ведение журнала. У меня есть это
<parameter name="@Logger" layout="${callsite}"/>
но это только показывает Core.Logging.Loggers.NLogLogger.Log, который является моим NlogWrapper, а не классом, который вызывает мою обертку.
Это мой метод оболочки
public void Log(LogType messageType, Type context, string message, Exception exception)
{
NLog.Logger logger = NLog.LogManager.GetLogger(context.Name);
LogLevel logLevel = LogLevel.Info; // Default level to info
switch (messageType)
{
case LogType.Debug:
logLevel = LogLevel.Debug;
break;
case LogType.Info:
logLevel = LogLevel.Info;
break;
case LogType.Warning:
logLevel = LogLevel.Warn;
break;
case LogType.Error:
logLevel = LogLevel.Error;
break;
case LogType.Fatal:
logLevel = LogLevel.Fatal;
break;
default:
throw new ArgumentException("Log message type is not supported");
}
logger.Log(logLevel, message, exception);
}