哈。。,看过前两篇,大家基本上使用log4net组件在项目中记录日志,但正如第二篇结尾所说,若不想所有的Appenderf(日志输出方式)都记录日志。比如说一般的可以用数据库写日志,但当数据库连接失败时,只将日志输出到文件中,以便管理员查看日志,查明原因。(胡乱设想,别扔砖头啊),好了,言归正传,说是高级应用,有点过了,哈。。,请大家谅解了。
若想实现上的设想,其实也很简单的,在每个Appenderf方式中加入filter属性,如下:
文件日志中有当级在fatal 和Off之间才记录
1
<appender name="LogFileAppender" type="log4net.Appender.FileAppender">
2
3
<filter type="log4net.Filter.LevelRangeFilter">
4
<levelMin value=" fatal " />
5
<levelMax value=”Off" />
6
</filter>
7
8
<file value="D:\log-file1.txt" />
9
<!-- Example using environment variables in params -->
10
<!-- <file value="${TMP}\log-file.txt" /> -->
11
<!--<sppendToFile value="true" />-->
12
<!-- An alternate output encoding can be specified -->
13
<!-- <encoding value="unicodeFFFE" /> -->
14
<layout type="log4net.Layout.PatternLayout">
15
<!--<footer value="[Footer] Test By Ring1981 " />-->
16
<conversionPattern value="%date [%thread] %-5level %logger [%ndc] <%property{auth}> - %message%newline" />
17
</layout>
18
<!-- Alternate layout using XML
19
<layout type="log4net.Layout.XMLLayout" /> -->
20
</appender>
21

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

我把上次的实例又修改了,源码请下载
写这三篇关于log4net的文章,只希望能为初学者更好的入门,因为log4net是开源组件,大家在基本应用不能满足自己的项目要求时,可以对log4net进行扩展。其实所有的介绍,在log4net官方文档中都有更加详细的讲解,若在大家想进一步学习log4net, 请到官方网站上down最新版本。哈。。,本系列文章到此就结束了。