我需要在运行时动态配置阈值,我可能在.net变量中有级别的整数或字符串表示。 log4net没有得到其中一个表示形式,而是希望在构造函数中指定它们,这对我来说似乎很奇怪:
public Level(int level, string levelName);
log4net团队甚至没有解释原因,我发现的全是:
http://logging.apache.org/log4net/release/sdk/log4net.Core.LevelConstructor1.html
他们甚至没有解释这个int level
意味着什么,我在哪里可以找到它的映射?他们只是说“更高的价值代表更严重的水平”,这是不够的。
我希望有类似的东西:
appender.Threshold = new Level(level);
此处level
可能是字符串或int类型
答案 0 :(得分:1)
Level
类具有预定义级别的公共静态成员,例如Off,Error,Warning:
您可能希望将Threshold
属性设置为这些预定义级别之一,例如:
myAppender.Threshold = Level.Warn;
或者,as described in the documentation,您可以将级别设置为存储库LevelMap中的一个条目。
<强>更新强>
你的意思是我必须从他们的订单中解决这个问题吗?比如Off映射到0(或1?),
完全没有:关闭地图到Level.Off.Value
;和其他人一样。