使用 log4net 版本 2.0.3 执行登录数据库
using log4net version 2.0.3 to perform logging into a database
我们需要一个解决方案来使用 log4net 的特定版本 2.0.3 进行数据库日志记录。因为这是 log4net 的旧版本,所以我想知道如何解决让这个版本与 sql server 2012 很好地配合使用的问题。
- 经历了this tutorial,我想知道是否有必要使用nhibernate来做这个?
- 对于 2.0.3,是否有任何其他需要进行数据库日志记录的依赖项?
不...NHibernate 太过分了,会减慢您的日志记录速度。您希望日志记录速度快。使用 log4net,您应该能够直接登录数据库 table。无需在其间放置 ORM。
作为您对 SQL 2012 的规范,除了 .NET 框架和 log4net 之外,您不需要任何其他程序集。
注意 log4net 文档有一个所需配置的示例和 table 模式:https://logging.apache.org/log4net/release/config-examples.html
您可以使用 AdoNetAppender
which already comes with log4net. You do not need anything else. You can refer to THIS 教程来了解如何实现它。
您还需要记住,log4net appender 是同步的,一些对一批日志事件进行操作以提高性能,但是如果生成太多日志事件,它们都会阻塞调用线程,因此我也强烈建议使用异步转发器。解释了一个很好的实现HERE。
我们需要一个解决方案来使用 log4net 的特定版本 2.0.3 进行数据库日志记录。因为这是 log4net 的旧版本,所以我想知道如何解决让这个版本与 sql server 2012 很好地配合使用的问题。
- 经历了this tutorial,我想知道是否有必要使用nhibernate来做这个?
- 对于 2.0.3,是否有任何其他需要进行数据库日志记录的依赖项?
不...NHibernate 太过分了,会减慢您的日志记录速度。您希望日志记录速度快。使用 log4net,您应该能够直接登录数据库 table。无需在其间放置 ORM。
作为您对 SQL 2012 的规范,除了 .NET 框架和 log4net 之外,您不需要任何其他程序集。
注意 log4net 文档有一个所需配置的示例和 table 模式:https://logging.apache.org/log4net/release/config-examples.html
您可以使用 AdoNetAppender
which already comes with log4net. You do not need anything else. You can refer to THIS 教程来了解如何实现它。
您还需要记住,log4net appender 是同步的,一些对一批日志事件进行操作以提高性能,但是如果生成太多日志事件,它们都会阻塞调用线程,因此我也强烈建议使用异步转发器。解释了一个很好的实现HERE。