gpt4 book ai didi

c# - 强制 log4net 日志级别

转载 作者:太空宇宙 更新时间:2023-11-03 23:28:15 24 4
gpt4 key购买 nike

原来我的一位同事在源代码中禁用了日志记录级别检查:

private static void Log(string source, EnumLogType logType, string msg)
{
....

switch (logType)
{
case EnumLogType.ERROR:
//if (log.IsErrorEnabled) { log.Error(logMsg); }
log.Error(logMsg);
break;
case EnumLogType.WARNING:
//if (log.IsWarnEnabled) { log.Warn(logMsg); }
log.Warn(logMsg);
break;
case EnumLogType.INFO:
//if (log.IsInfoEnabled) { log.Info(logMsg); }
log.Info(logMsg);
break;
case EnumLogType.VERBOSE:
//if (log.IsDebugEnabled) { log.Debug(logMsg); }
log.Debug(logMsg);
break;
default:
log.Debug(logMsg);
break;
}
}

因此,即使配置文件中的级别设置为 ERROR,我们的产品现在仍在写入调试日志。

有没有办法强制 log4net 只记录错误消息?换句话说,我是否可以通过配置而不编辑和重新编译源代码来强制 log4net 检查日志记录级别?

最佳答案

您的同事只禁用了您自己的 EnumLogType 级别设置。
log4net 日志级别应该仍然有效。

在您的 AppName.Exe.config 或 Web.Config 中,使用如下内容:

<log4net>
...
<logger name="...">
...
<level value="Error" />
</logger>
</log4net>

关于c# - 强制 log4net 日志级别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33097494/

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