Loglevel 中的 Verbose 不存在

Verbose in Loglevel doesn't exist

我尝试使用 EF7 编写我的第一个演示。

我已经安装了Microsoft.Extensions.Logging.Console 1.0.0-rc2-final

登录。

但是当我尝试使用以下代码时:

public static void LogToConsole(this DbContext context)
        {
            var contextServices = ((IInfrastructure<IServiceProvider>) context).Instance;
            var loggerFactory = contextServices.GetRequiredService<ILoggerFactory>();
            loggerFactory.AddConsole(LogLevel.Verbose);
        }

我找不到 Verbose 枚举!


相反,我得到以下信息:

谁能帮我解释一下发生了什么,我应该用哪个来记录?

使用LogLevel.Debug。关卡在 RC2 中被重新命名和改组。有关详细信息,请参阅 the announcement

早在 12 月,原始日志级别 were changed a bit 将与其他日志系统更加一致。作为此更改的一部分,Verbose 已重命名为 Trace 并在严重性 下方 Debug.

下移动

至于你应该使用什么日志级别,这在很大程度上取决于你想要记录什么以及你希望看到什么。请参阅 documentation 中的建议;引用前三个要点:

  1. Log using the correct LogLevel. This will allow you to consume and route logging output appropriately based on the importance of the messages.
  2. Log information that will enable errors to be identified quickly. Avoid logging irrelevant or redundant information.
  3. Keep log messages concise without sacrificing important information.

要选择正确的日志级别,您应该首先熟悉它们的含义。从最低严重性到最高严重性排序:

  • Trace – 对于最详细的消息,可能包含敏感信息。永远不应在生产中启用。
  • 调试——用于开发过程中可能的交互调查;对调试有用,但没有真正的长期价值。
  • 信息 – 用于跟踪应用程序的流程。
  • 警告 - 对于应用程序中的异常(但预期的)事件,包括错误和异常,这些事件已得到妥善处理并且不会影响应用程序的执行(但仍可能是潜在问题的迹象)。
  • 错误 – 对于导致当前 activity 失败的真正故障,但使应用程序处于可恢复状态,因此其他活动不会受到影响。
  • 严重 – 对于使应用程序处于不可恢复状态并影响进一步执行的应用程序级别的故障。​​

您可以在 offical documentation and in the project’s logging guidelines.

中找到类似的解释