log4net:比较AdoneAppender和rollingfileappender

log4net:比较AdoneAppender和rollingfileappender,log4net,appender,rollingfileappender,adonetappender,Log4net,Appender,Rollingfileappender,Adonetappender,我正在试着看看这些附加器中哪一个性能更好(时间越短越好) 滚动FileAppender还是AdoneAppender < >选择附件时我应该考虑的其他参数是什么? 我看到我的Web服务器“保留”了滚动文件。我可以设定一个类似的值吗 <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> (参考:中的FileAppender部分)以使多个应用程序/服务器可以写入同一文件 我们的DB服务器位于SAN驱动器

我正在试着看看这些附加器中哪一个性能更好(时间越短越好)

滚动FileAppender还是AdoneAppender

< >选择附件时我应该考虑的其他参数是什么?

我看到我的Web服务器“保留”了滚动文件。我可以设定一个类似的值吗

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

(参考:中的FileAppender部分)以使多个应用程序/服务器可以写入同一文件


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

我们使用滚动文件追加器的运气更好。我们注意到,如果出现网络故障,ADO.NET appender将停止日志记录。例如,每周在安装service pack后重新启动会导致记录器停止运行

请记住,如果使用文件附加器,也意味着将日志保存在同一台服务器上-


我从未见过最小的锁定机制。如果您确实使用它,看起来您将支付一些性能罚款:

我们使用滚动文件附加器的运气更好。我们注意到,如果出现网络故障,ADO.NET appender将停止日志记录。例如,每周在安装service pack后重新启动会导致记录器停止运行

请记住,如果使用文件附加器,也意味着将日志保存在同一台服务器上-


我从未见过最小的锁定机制。如果您确实使用它,看起来您将支付一些性能损失:

我通常使用RollingFileAppender到本地磁盘-这既健壮又快速(如果您无法写入本地磁盘,您通常会遇到致命问题)

写入ADO.NET可能会失败—例如,当应用程序运行时,日志数据库出于备份目的脱机


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

我通常使用RollingFileAppender到本地磁盘-这既健壮又快速(如果无法写入本地磁盘,通常会出现致命问题)

写入ADO.NET可能会失败—例如,当应用程序运行时,日志数据库出于备份目的脱机


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

如果AdonNetAppender失去连接,它将停止日志记录,但选择

  <reconnectonerror value="true" />


它将尝试重新连接。

如果您的AdonNetAppender失去连接,它将停止日志记录,但使用该选项

  <reconnectonerror value="true" />


它将尝试重新连接。

有趣的视角。我认为登录到DB会更快更容易(考虑到多个应用程序将登录到同一个接收器),我们的想法是一样的。如果您可以将数据库保持在同一台服务器上,这可能是一条可行的道路。不过,我们并没有将数据库和应用程序放在同一台服务器上,所以这不是我们的选择。我认为登录到DB会更快更容易(考虑到多个应用程序将登录到同一个接收器),我们的想法是一样的。如果您可以将数据库保持在同一台服务器上,这可能是一条可行的道路。不过,我们并没有将数据库和应用程序放在同一台服务器上,所以我们不可以选择。