Details
-
Task
-
Status: Closed
-
Minor
-
Resolution: Won't Fix
-
1.2.10
-
None
-
OS: Windows XP
Programming Environment: VB.NET
.NET Framework 3.5
Appender Type: RollingFileAppender
Description
I have 3 appenders in my config file for creating 3 different types of logs. I am using dynamic naming of file in each of the 3 appenders by setting the global context properties. In some cases, i need to set the log file name dynamically for just 1 appender. When i set the file name for just 1 appender, it creates another file named "null" with no data in addition to the actual logfile whose name has been set dynamically.
<appender name="RollingFileAppenderV1" type="log4net.Appender.RollingFileAppender">
<file type="log4net.Util.PatternString" value="Logs%property
" />
.
.
.
<appender name="RollingFileAppenderV2" type="log4net.Appender.RollingFileAppender">
<file type="log4net.Util.PatternString" value="Logs%property
" />
.
.
<logger name="Logger1">
<level value="DEBUG" />
<appender-ref ref="RollingFileAppenderV1" />
</logger>
<logger name="Logger2">
<level value="DEBUG" />
<appender-ref ref="RollingFileAppenderV2" />
</logger>
In the VB.NET code i set the filename as :
log4net.GlobalContext.Properties("applog") = "file1.log"
Dim logobj as log4net.Ilog = LogManager.GetLogger("Logger1")
logobj.debug("test")
In this case it creates "file1.log" and also another empty file with name as "null". This happens only when i am setting either of the appenders filename at runtime.
Could you please check and let me know the issue behind this.