为 Log4Net 中的特定异常设置日志记录级别(对于 Episerver)

Set logging level for specific exception in Log4Net (for Episerver)

如何为 Log4Net 中的特定异常配置日志记录级别?

我们的应用程序当前正在生成多个 WebSocketException,处于警告日志记录级别。但是,我们希望将 if 从 WARNING 更改为 INFO 以使我们的日志更具可读性。

应用程序正在使用 EPiServer Log4Net 包,但配置应该相同。

这是否可以从 Log4Net 配置为从 .config 文件执行,或者必须在代码中处理它?

使用 Log4Net 这应该与使用信息而不是警告调用 ILog 一样简单。

Logger.Info("message");

而不是

Logger.warn("message");

根据您的设置,可能值得在 xml

中进行更改
<log4net> 
  <appender name="appenders_name">
  ... other settings
   <root>
       <level value="INFO" />
   </root>
  </appender>
</log4net>

只需过滤掉任何您不想要的条目,因为 WebSocketExceptions 不是很有趣:

<filter type="log4net.Filter.StringMatchFilter">
  <stringToMatch value="WebSocketException" />
  <acceptOnMatch value="false" />
</filter>

注意:Log4Net在使用StringMatchFilter时使用了indexof,所以可以查找部分字符串。请记住它区分大小写。