1

我试图看看这些附加程序中的哪一个会表现得更好(时间越短越好)。

RollingFileAppender 还是 ADONetAppender?

选择 appender 时我应该考虑哪些其他参数?

我看到我的 WebServer “坚持”到滚动文件。我可以设置类似的东西吗

<lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> 

(参考: log4net 文档中的FileAppender 部分)在我的滚动文件追加器中,以便多个应用程序/服务器可以写入同一个文件?

我们的数据库服务器位于 SAN 驱动器中,但日志文件将本地写入硬盘驱动器(或者在不久的将来可能是 SAN 驱动器)

4

3 回答 3

3

如果您的 ADONetAppender 失去连接,它将停止记录,但可以选择

  <reconnectonerror value="true" />

它会尝试重新连接。

于 2010-08-28T17:42:32.177 回答
2

使用滚动文件附加程序我们有更好的运气。我们注意到,如果出现网络故障,ADO.NET appender 会停止记录。例如,每周安装服务包后重新启动会杀死您的记录器。

请记住,如果您使用文件附加程序,这也意味着将日志保存在同一台服务器上 - http://ferventcoder.com/archive/2009/07/16/log4net-note-always-keep-your-logs-on -相同的服务器.aspx

我从未见过最小的锁定机制。如果您确实使用它,看起来您会付出一些性能损失:http: //logging.apache.org/log4net/release/sdk/log4net.Appender.FileAppender.MinimalLock.html

于 2010-01-22T22:22:23.830 回答
0

我通常将 RollingFileAppender 用于本地磁盘 - 这是强大且快速的(如果您无法写入本地磁盘,您通常会遇到致命问题)。

写入 ADO.NET 可能会失败 - 例如,如果在应用程序运行时将日志记录数据库脱机以进行备份。

由于性能开销,我也会避免使用 MinimalLock - 相反,每个应用程序都有一个单独的日志文件。如果您偶尔需要查看合并的日志数据,您可以合并日志的相关部分,或者只需在查看器中并排打开相关部分。

于 2010-02-07T18:57:21.827 回答