Используйте NLOG в приложении ASP.NET CoreC#

Место общения программистов C#
Ответить
Anonymous
 Используйте NLOG в приложении ASP.NET Core

Сообщение Anonymous »

Я нашел кодепроект с примером того, как заставить это работать, но это не работает. Основная проблема, по-видимому, заключается в том, что пакет "microsoft.framework.logging.nlog": "1.0.0-*" , похоже, не существует в Nuget. Я посмотрел на этот вопрос StackOverflow и посмотрел на пример GitHub, который он ссылается, но он, кажется, содержит ту же проблему.public class NLogLogger : ILogger
{
public NLogLogger()
{
new WebLoggerConfigurer().ConfigureDefault();
}

public void Log(LogLevel logLevel, int eventId, object state, Exception exception, Func formatter)
{
// currently need the global:: for LogLevels because our namespace contains NLog in it. Is there a better naming convention we could use instead?
var ll = logLevel == LogLevel.Debug ? global::NLog.LogLevel.Debug
: logLevel == LogLevel.Verbose ? global::NLog.LogLevel.Trace
: logLevel == LogLevel.Critical ? global::NLog.LogLevel.Fatal
: logLevel == LogLevel.Error ? global::NLog.LogLevel.Error
: logLevel == LogLevel.Information ? global::NLog.LogLevel.Info
: logLevel == LogLevel.Warning ? global::NLog.LogLevel.Warn
: global::NLog.LogLevel.Off;

LogManager.GetCurrentClassLogger().Log(ll, formatter(state, exception));
}

public bool IsEnabled(LogLevel logLevel)
{
return true;
}

public IDisposable BeginScopeImpl(object state)
{
return new Disposable(() => { });
}
}

public class NLogLoggerProvider : ILoggerProvider
{
public void Dispose()
{
}

public ILogger CreateLogger(string categoryName)
{
return new NLogLogger();
}
}

public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{
loggerFactory.AddProvider(new NLogLoggerProvider());
..
}
< /code>

Реализация BeginScopeImpl, кажется, является взломом, но я не был уверен, как лучше ее реализовать. < /p>
  • Это похоже на действительный вариант реализации? Nlog для работы с Asp.net Core?


Подробнее здесь: https://stackoverflow.com/questions/346 ... pplication
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»