因为需要扩展log4net,使其可以调用webservice记录日志,初步想法是自定义一个WebServiceAppender,但不知道如何从配置文件中获取自定义配置。如下,如何获取ParamTest的值,log4net中哪个类提供此功能(不想自己写代码读配置文件,想使用Log4net提供的方法)?
<appender name="WebServiceAppender" type="Log4netTest.WebServiceAppender">
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%d [%t] %-5p %c %m%n"/>
<param name="ParamTest" value="ParamTest"/>
</layout>
</appender>
搞定了 位置写错了原来 配置文件中如下:
<appender name="WebServiceAppender" type="Log4netTest.WebServiceAppender">
<param name="ParamTest" value="ParamTest"/>
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%d [%t] %-5p %c %m%n"/>
</layout>
</appender>
WebServiceAppender类中添加如下属性即可:
private string _paramtest;
public string ParamTest
{
get { return this._paramtest; }
set { _paramtest = value; }
}