我有两个不同的表,我也在记录信息。我正在使用用于 log4net 的 Common.Logging 库包装器,并且几乎已正确配置了所有内容,但我遇到了一个问题,即日志表中记录了很多内容...我知道,违反直觉...我有两张桌子
日志表审计表
以下是我的配置
<log4net>
<!-- This will force both loggers to write to both tables-->
<root>
<level value="INFO" />
<appender-ref ref="LogAppender" />
<!--<appender-ref name="Audit" ref="AuditAppender" />-->
</root>
<logger name="Log">
<level value="INFO" />
<appender-ref ref="LogAppender" />
</logger>
<logger name="Audit">
<level value="INFO" />
<appender-ref ref="AuditAppender" />
</logger>
<!--SQL LOG TABLE Appender-->
<appender name="LogAppender" type="log4net.Appender.AdoNetAppender"> .... This writes to Log Table correctly
</appender>
<appender name="AuditAppender" type="log4net.Appender.AdoNetAppender"> .... This logs to the Audit Table correctly
</appender>
</log4net>
调用代码:我们有三种方法来创建记录器
readonly ILog _default = LogManager.GetCurrentClassLogger();
readonly ILog _logger = LogManager.GetLogger("Log");
readonly ILog _auditer = LogManager.GetLogger("Audit");
现在,如果我把这三个人都叫回来
_default.Info("Default Logger");
_logger.Info("Test get products logging");
_auditer.Info("Test get products audit");
我试图让_default或_logger都写入日志表,实际上他们这样做并且_auditer记录器写入审计表......
但问题是……按照我的配置方式,审计表也写入 LOG 表,这是我不想要的。现在,如果我摆脱了 log4net 配置中的根节点,那么我只有命名的记录器一切正常,因为 _logger 日志写入日志表,_auditer 写入审计表,但 _default 日志不写入到任何东西......所以我在这里想念什么???