我第一次看到log4net,因为我在网上发现它比微软提供的企业库更快。我正在尝试将其配置为登录
是开箱即用还是我们需要编写代码?在Enterprise Library中,我没有为此编写任何代码。
我知道appender并且做了poc分别登录sql,滚动文件和事件日志但是无法识别回退机制。有没有办法解决这个问题,例如,如果sql日志失败,它应该写入滚动文件,如果失败则应该写入事件日志。
答案 0 :(得分:1)
要将日志发送到目标,您需要log4net调用appender。在您的情况下,您的所有需求都由开箱即用的库完成
RollingFileAppender
是一种变体,可让您在某些触发器上滚动文件(日期或/和开箱即用的尺寸)现在剩下的就是调整配置,以便找到符合您需要的内容。有关如何配置所讨论的appender的详细信息,请参阅these examples
关于回退机制,如果不编写代码,就没有办法做到这一点。 log4net不允许您挂钩潜在的appender错误,因为它的立场是,如果日志框架失败,它应该永远不会导致其客户端中的行为发生任何变化。如果您需要条件记录分支,那么它将落在客户端上以实现它。