此代码在Log4net中按预期工作:<file type="log4net.Util.PatternString" value=".\\somefolder\\myLog.%property{logId}.log"/>
添加以下C#代码 logfile&#34; myLog.2.log&#34;已成功
log4net.GlobalContext.Properties["logId"] = 2;
log4net.Config.XmlConfigurator.ConfigureAndWatch(new FileInfo(log4NetConfigFilePath));
对于RollingFileAppender使用maxSizeRollBackups,maxFileSize或maximumFileSize等变量对我来说不起作用。 根据属性,会出现不同的错误:
1)maximumFileSize:
C#
log4net.GlobalContext.Properties["maxfilesize"] = 15;
log4net.config:
<maximumFileSize value="%property{maxfilesize}MB" />
我收到错误:
log4net:ERROR OptionConverter:[%PROPERTY {MAXFILESIZE}]不在 正确的文件大小语法。
2)maxSizeRollBackups:
C#:
log4net.GlobalContext.Properties["maxrollbackups"] = 5;
Log4net.config:
<maxSizeRollBackups value="%property{maxrollbackups}" />
我收到错误:
log4net:ERROR无法创建Appender [RollingLogFileAppender] 输入[dotnet.CustomFileAppender]。报告的错误如下。 System.Reflection.TargetInvocationException:抛出了异常 通过调用的目标。 ---&GT; System.FormatException:输入 字符串格式不正确。在 System.Number.StringToNumber(String str,NumberStyles选项, NumberBuffer&安培; number,NumberFormatInfo info,Boolean parseDecimal)
在System.Number.ParseInt32(String s,NumberStyles样式, NumberFormatInfo info)---内部异常堆栈跟踪结束---
在System.RuntimeMethodHandle.InvokeMethod(对象目标,对象[] 参数,签名sig,布尔构造函数)at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object []参数,Object []参数)at System.Reflection.RuntimeMethodInfo.Invoke(Object obj,BindingFlags invokeAttr,Binder binder,Object []参数,CultureInfo文化)
at log4net.Util.OptionConverter.ConvertStringTo(Type target,String txt)at log4net.Repository.Hierarchy.XmlHierarchyConfigurator.ConvertStringTo(类型 type,String value)at log4net.Repository.Hierarchy.XmlHierarchyConfigurator.SetParameter(XmlElement的 元素,对象目标)at log4net.Repository.Hierarchy.XmlHierarchyConfigurator.ParseAppender(XmlElement的 appenderElement)log4net:ERROR Appender命名为[RollingLogFileAppender] 没找到。
其他信息: