Recherche…


Utiliser NLog Logger

NLog.Extensions.Logging est le fournisseur officiel NLog pour Microsoft dans .NET Core et ASP.NET Core. Ici et ici sont des instructions et des exemples respectivement.

Ajouter un enregistreur au contrôleur

Au lieu de demander un ILoggerFactory et de créer explicitement une instance d'ILogger, vous pouvez demander un ILogger (où T est la classe qui demande le consignateur).

public class TodoController : Controller
{
    private readonly ILogger _logger;

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

Utilisation de Serilog dans l'application ASP.NET core 1.0

1) Dans project.json, ajoutez ci-dessous les dépendances-

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

2) Dans Startup.cs, ajoutez les lignes ci-dessous dans constructor

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

3) Dans la méthode Configure de la classe Startup

loggerFactory.AddSerilog();

4) Dans Controller, créez une instance de ILogger comme ceci-

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

5) Enregistrement des échantillons ci-dessous

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
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow