以与我一直相同的方式配置log4net。我在Application_Start(ASP.NET Web窗体)中设置了一个名为svr的全局属性,并设置了appender但它不起作用。
appender如下:
<appender name="RollingFileAppender_Inf" type="log4net.Appender.RollingFileAppender">
<file type="log4net.Util.PatternString" value="C:\Logs\icomply_%property{svr}_info.log" />
<appendToFile value="true" />
<rollingStyle value="Size" />
<maxSizeRollBackups value="-1" />
<maximumFileSize value="50GB" />
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%date [%thread] %-5p %message%n" />
</layout>
<threshold value="INFO"/>
</appender>
在我的Global.asax.cs中我有
private void Application_Start(object sender, EventArgs e)
{
GlobalContext.Properties["svr"] = MyEnvironment.Server;
}
但是文件名是icomply_(null)_info.log,而log4net跟踪说明了这一点(在很多其他事情中)
log4net: Loading Appender [RollingFileAppender_Inf] type: [log4net.Appender.RollingFileAppender]
log4net: Parameter [file] specified subtype [log4net.Util.PatternString]
log4net: Converter [literal] Option [C:\Logs\icomply_] Format [min=-1,max=2147483647,leftAlign=False]
log4net: Converter [property] Option [svr] Format [min=-1,max=2147483647,leftAlign=False]
log4net: Converter [literal] Option [_info.log] Format [min=-1,max=2147483647,leftAlign=False]
log4net: Performing additional conversion of value from [PatternString] to [String]
log4net: Setting Property [File] to String value [C:\Logs\icomply_(null)_info.log]
我无法看到我做错了什么 - 这或多或少都是我经常做的,尽管这可能是我第一次在ASP.NET Web Forms中配置它。
有什么想法吗?
答案 0 :(得分:0)
我必须添加
log4net.Config.XmlConfigurator.Configure();
在
之后开始工作GlobalContext.Properties["svr"] = MyEnvironment.Server;
线。
谢谢NK; - )