我正在开发一个MVC6 web应用程序,并且我是ASP.NET 5的新手。我可以看到在ASP.NET 5默认web应用程序模板中的许多地方(例如: AccountController.cs)都使用了日志记录(Microsoft.Extensions.Logging),但是我不知道在哪里配置创建的日志文件的路径。在appsettings.json文件中可以找到以下设置。
"Logging": {
"IncludeScopes": false,
"LogLevel": {
"Default": "Verbose",
"System": "Information",
"Microsoft": "Information"
} }
在这一部分中添加一个参数是否足够?如果是,参数名称是什么?如果没有,该怎么做?
之前我使用Log4Net,配置是在logger.config文件中完成的。
发布于 2016-05-02 15:59:44
ILogger只是一个抽象,你必须实现一个具体的日志记录器(log4net,serilog,...)登录到一个文件中。
public Startup(IHostingEnvironment env)
{
// Some other code
Log.Logger = new LoggerConfiguration()
.MinimumLevel.Debug().WriteTo.File("YOUR FILE PATH HERE")
.CreateLogger();
}
在configure的方法中(这里使用serilog ):
public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{
loggerFactory.AddSerilog();
// Some other code
}
发布于 2016-05-02 15:02:47
ASP.NET Core
中没有内置的文件记录器。记录Github repository
发布于 2020-05-09 09:15:39
使用Serilog,只需一行代码即可将文件记录添加到ASP.NET核心应用程序中。
安装Serilog.Extensions.Logging.File
Host.CreateDefaultBuilder(args)
.ConfigureLogging((hostingContext, builder) =>
{
builder.AddFile("Logs/myapp-{Date}.txt");
})
https://stackoverflow.com/questions/36976546
复制相似问题