【发布时间】:2019-10-30 21:15:07
【问题描述】:
我已经创建了我的第一个 asp.net core 3.0 应用程序。以及带有 serilog 文件扩展名的 setup.cs 文件,如下所示:
public class Startup
{
public Startup(IConfiguration configuration)
{
Configuration = configuration;
}
public IConfiguration Configuration { get; }
public void ConfigureServices(IServiceCollection services)
{
services.AddControllers();
}
public void Configure(IApplicationBuilder app, IWebHostEnvironment env, ILoggerFactory loggerFactory)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
loggerFactory.AddFile("logs/ts-{Date}.txt");
....
而 appsettings.json 是:
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft": "Warning",
"Microsoft.Hosting.Lifetime": "Information"
}
},
"AllowedHosts": "*"
}
但这会在应用程序运行时记录很多信息。但我只想将我的日志调用保存在控制器操作或其他任何地方:
public class WeatherForecastController : ControllerBase
{
private readonly ILogger<WeatherForecastController> _logger;
public WeatherForecastController(ILogger<WeatherForecastController> logger)
{
_logger = logger;
}
[HttpGet]
public IEnumerable<WeatherForecast> Get()
{
_logger.LogInformation("oops");
....
}
}
【问题讨论】:
标签: c# asp.net-core logging serilog