log4net是一个开源的日志工具,它是从java的log4j中移植过来的,支持将日志放入不同的输出。
sqlite是一个彻底开源数据库,可以任意使用它的源代码和程序(包括自行销售它)。我觉得用它来记录日志非常好。它是一个基于文件的数据库,有点像Access但高效多了。有些股票软件的数据分析就是在sqlite里面做的,Firefox的本地数据就是保存在一个sqlite数据库中的。
普通日志一般要写到文本文件中,缺点是不利于日后分析和统计;log4net还支持把日志写到sqlite等数据库,sqlite数据库也是一个文件但不是一个普通的文件,里面采用了B树结构来存储数据。
首先创建一个sqlite数据库并其中创建数据表,我使用sqliteadmin来管理数据库和表。
这是创建表的脚本:
这是应用程序的配置。这里演示的一个简单的控制台程序,如果是Web应用把配置复制到Web.Config中相应的位置就可。
这是简单地写一个警告级别的日志。如果是Web应用应该把XmlConfigurator.Configure()放在应用程序启动时调用。
当然,还得记得把sqlite的sqlite.Designer.dll、System.Data.sqlite.dll、System.Data.sqlite.Linq.dll引入到项目中。