使用其他log4net日志记录级别比通常的

vto*_*ola 9 .net log4net log4net-configuration

我意识到有更多的级别,调试,信息,警告,错误和致命,它们列在log4net.Core.Level课堂上.

但我怎么能用呢?我的意思是,在ILog界面中你有使用常用方法的方法,但如果你想使用"精细"或"紧急"等怎么办?

干杯.

Joã*_*elo 20

在以下示例中Log是类型ILog.

Log.Logger.Log(null, log4net.Core.Level.Emergency, "Help!", null);
Run Code Online (Sandbox Code Playgroud)

对于每个级别,您需要检查它们Value以了解它们何时被禁用.

对于log4net 1.2.10.0版,您具有以下级别和关联的截止值:

OFF: 2147483647
EMERGENCY: 120000
FATAL: 110000
ALERT: 100000
CRITICAL: 90000
SEVERE: 80000
ERROR: 70000
WARN: 60000
NOTICE: 50000
INFO: 40000
DEBUG: 30000
FINE: 30000
TRACE: 20000
FINER: 20000
VERBOSE: 10000
FINEST: 10000
ALL: -2147483648
Run Code Online (Sandbox Code Playgroud)

请注意,某些级别共享相同的值,因此禁用其中一个级别也会禁用另一个级别,例如TRACE和FINER.

  • @vtortola,是的,您可以在配置中使用这些级别. (2认同)

aca*_*lon 5

扩展已经提供的好答案:

您还可以添加以下扩展方法:

 static public void Notice( this ILog log, object message )
 { 
     log.Logger.Log( null, log4net.Core.Level.Notice, message, null);
 }
Run Code Online (Sandbox Code Playgroud)

然后用作:

Log.Notice("Take note!");
Run Code Online (Sandbox Code Playgroud)

其中 Log 的类型为 ILog