我的log4net配置如下:
<appender name="SmtpAppender" type="log4net.Appender.SmtpAppender">
<to value="xxx" />
<from value="xxx" />
...
<evaluator type="log4net.Core.LevelEvaluator">
<threshold value="ERROR"/>
</evaluator>
<filter type="MyApp.Logging.EmailLogThrottler">
</filter>
</appender>
如果我在
MyApp.Logging.EmailLogThrottler
类中设置断点,我可以看到它正在接收INFO消息进行过滤。由于EmailLogThrottler相当昂贵,因此我只希望它接收ERROR消息,根据评估器阈值。这可行吗?其次,似乎先应用过滤器,然后再应用评估器阈值(这对我来说是违反直觉的)。这个假设是正确的吗?