gpt4 book ai didi

c# - ASP.Net Core LogLevel 不工作

转载 作者:太空狗 更新时间:2023-10-29 22:25:23 26 4
gpt4 key购买 nike

我无法让记录器按我希望的方式工作。我已将日志级别设置为警告,但控制台窗口仍然充斥着信息日志。

我在下面提供了一些示例,在 Startup.cs 或 Program.cs 中没有额外配置。

如果需要,我很乐意提供更多信息。

应用设置.json

{
"ConnectionStrings": {
"DefaultConnection": "ConnectionString"
},
"Logging": {
"IncludeScopes": false,
"LogLevel": {
"Default": "Warning",
"Microsoft": "Warning"
}
}
}

记录示例:

public class DishRepository : IDishRepository
{
private readonly ApplicationDbContext _context;
private readonly ILogger<DishRepository> _logger;

public DishRepository(ApplicationDbContext context, ILogger<DishRepository> logger)
{
_context = context;
_logger = logger;
}

public IEnumerable<Dish> GetAll()
{
try
{
_logger.LogInformation("GetAll was called");

return _context.Dishes
.Include(d => d.Category)
.Include(d => d.DishIngredients)
.ThenInclude(di => di.Ingredient)
.Include(d => d.PizzaType).ToList();
}
catch (Exception e)
{
_logger.LogError($"Failed to get all dishes: {e}");
return Enumerable.Empty<Dish>();
}

}
}

当我通过 VisualStudio 运行我的程序时,我得到了这个:

dotnet console

--------这有效--------

我在 https://learn.microsoft.com/en-us/aspnet/core/fundamentals/logging/?tabs=aspnetcore2x 找到了下面的示例它有效,但我不明白为什么它有效,而不是上面的 appsettings.json 示例。

应用设置.json

  "Logging": {
"IncludeScopes": false,
"Debug": {
"LogLevel": {
"Default": "Warning"
}
},
"Console": {
"LogLevel": {
"PizzeriaAngular": "Warning",
"Microsoft": "Warning",
"Microsoft.AspNetCore": "Warning",
"Microsoft.EntityFrameworkCore": "Information"
}
},
"LogLevel": {
"Default": "Debug"
}

Program.cs 仍然是这样的:

public class Program
{
public static void Main(string[] args)
{
BuildWebHost(args).Run();
}

public static IWebHost BuildWebHost(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>()
.Build();
}

最佳答案

有两个配置文件 appsettings.json 和 appsettings.Development.json。系统在开发模式下使用它。

关于c# - ASP.Net Core LogLevel 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47622544/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com