サーチ…
NLog Loggerの使用
NLog.Extensions.Loggingは、.NETコアとASP.NETコアのMicrosoftの公式NLogプロバイダです。 こことここにそれぞれ命令と例があります。
コントローラにロガーを追加する
ILoggerFactoryを要求してILoggerのインスタンスを明示的に作成する代わりに、ILoggerを要求できます(Tはロガーを要求するクラスです)。
public class TodoController : Controller
{
private readonly ILogger _logger;
public TodoController(ILogger<TodoController> logger)
{
_logger = logger;
}
}
ASP.NETコア1.0アプリケーションでのSerilogの使用
1)project.jsonに以下の依存関係を追加します。
"Serilog": "2.2.0",
"Serilog.Extensions.Logging": "1.2.0",
"Serilog.Sinks.RollingFile": "2.0.0",
"Serilog.Sinks.File": "3.0.0"
2)Startup.csに以下の行をコンストラクタで追加します。
Log.Logger = new LoggerConfiguration()
.MinimumLevel.Debug()
.WriteTo.RollingFile(Path.Combine(env.ContentRootPath, "Serilog-{Date}.txt"))
.CreateLogger();
3)StartupクラスのConfigureメソッドで、
loggerFactory.AddSerilog();
4)コントローラで、このようなILoggerのインスタンスを作成します。
public class HomeController : Controller
{
ILogger<HomeController> _logger = null;
public HomeController(ILogger<HomeController> logger)
{
_logger = logger;
}
5)サンプルロギング
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
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow