Zoeken…


NLog Logger gebruiken

NLog.Extensions.Logging is de officiële NLog- provider voor Microsoft's in .NET Core en ASP.NET Core. Hier en hier zijn respectievelijk instructies en voorbeelden.

Logger toevoegen aan controller

In plaats van een ILoggerFactory aan te vragen en expliciet een instantie van ILogger te maken, kunt u een ILogger aanvragen (waarbij T de klasse is die de logger aanvraagt).

public class TodoController : Controller
{
    private readonly ILogger _logger;

    public TodoController(ILogger<TodoController> logger)
    {
     _logger = logger;
    }
}

Serilog gebruiken in ASP.NET Core 1.0-toepassing

1) Voeg in project.json onderstaande afhankelijkheden toe-

"Serilog": "2.2.0",
"Serilog.Extensions.Logging": "1.2.0",
"Serilog.Sinks.RollingFile": "2.0.0",
"Serilog.Sinks.File": "3.0.0"

2) Voeg in Startup.cs onderstaande regels toe in constructor-

Log.Logger = new LoggerConfiguration()
    .MinimumLevel.Debug()
    .WriteTo.RollingFile(Path.Combine(env.ContentRootPath, "Serilog-{Date}.txt"))
    .CreateLogger();

3) In Configureer methode van Startup class-

loggerFactory.AddSerilog();

4) Maak in Controller een instantie van ILogger zoals deze-

public class HomeController : Controller
{
    ILogger<HomeController> _logger = null;
    public HomeController(ILogger<HomeController> logger)
    {
        _logger = logger;
    }

5) Voorbeeldregistratie hieronder-

try
{
    throw new Exception("Serilog Testing");
}
catch (System.Exception ex)
{
    this._logger.LogError(ex.Message);
}


Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow