log4net使用的一点心得

关于使用log4net的文章很多,把自己在使用中查到的文章列一下。

log4net 可以存在很多地方 比如console,数据库、邮箱、文本等等。我要实现的是 所有的日志都记录到html文件中,可以按时间存到不同的文件,对于error级别的错误除了保存到文件外还要发送到邮箱。

为什么保存为html而不是txt等其他文件呢?

因为可把html的文件夹建成一个站点,在浏览器打开之后,会建立一个文件的索引,可以方便的在不同文件间打开,如果是远程的话也方便查看。

普通错误记录到文本,严重错误发送到邮箱的想法来自这篇文章

http://www.cnblogs.com/aehyok/archive/2013/05/07/3066010.html

日志文件可以建成文件夹目录样式,方法来自这篇

注意文件的后缀写在什么位置

http://www.cnblogs.com/shadan/archive/2013/03/05/2943941.html

%m(message):输出的日志消息,如ILog.Debug(…)输出的一条消息

%n(new line):换行

%d(datetime):输出当前语句运行的时刻

%r(run time):输出程序从运行到执行到当前语句时消耗的毫秒数

%t(thread id):当前语句所在的线程ID

%p(priority): 日志的当前优先级别,即DEBUG、INFO、WARN…等

%c(class):当前日志对象的名称,例如:

       模式字符串为:%-10c -%m%n

       代码为:

ILog log=LogManager.GetLogger(“Exam.Log”);

log.Debug(“Hello”);

    则输出为下面的形式:

Exam.Log       - Hello

%L:输出语句所在的行号

%F:输出语句所在的文件名

%-数字:表示该项的最小长度,如果不够,则用空格填充

例如,转换模式为%r [%t]%-5p %c - %m%n 的 PatternLayout 将生成类似于以下内容的输出:

176 [main] INFO  org.foo.Bar - Located nearest gas station.