WorksOnMyMachine
class Program
{
static void Main(string[] args)
{
LogLog.InternalDebugging = true;
LogLog.EmitInternalMessages = true;
XmlDocument log4netConfig = new XmlDocument();
log4netConfig.LoadXml(@"
<log4net>
<appender name='LogServiceAppender'
type='log4net.Appender.RollingFileAppender'>
<file value='c:\\LogServiceAppender.log' />
<appendToFile value='true'/>
<maxSizeRollBackups value='10'/>
<maximumFileSize value='1MB'/>
<rollingStyle value='Size'/>
<staticLogFileName value='true'/>
<layout type='log4net.Layout.PatternLayout'>
<conversionPattern value='%d{yyyy MMM dd HH:mm:ss} [%t] %-5p
- %m%n' />
</layout>
</appender>
<root>
<level value='ALL' />
<appender-ref ref='LogServiceAppender' />
</root>
</log4net>");
ILoggerRepository rep =
LogManager.CreateRepository(Guid.NewGuid().ToString());
XmlConfigurator.Configure(rep, log4netConfig["log4net"]);
ILog log = LogManager.GetLogger(rep.Name, "Program");
log.Debug("Hello World");
}
}
________________________________
From: Eric Chamberlain <[email protected]>
To: [email protected]
Sent: Thursday, June 18, 2009 6:41:51 PM
Subject: Mystery concerning configuration
Greetings all,
I have an appender which works fine if specified with
generic XML but not when specified with conventional log4net terms in the
configuration.
Examples should help:
The following works:
<appendername="LogServiceAppender"
type="log4net.Appender.RollingFileAppender">
<paramname="File"
value="myfile.log"/>
<paramname="AppendToFile"
value="true"/>
<paramname="MaxSizeRollBackups"
value="10"/>
<paramname="MaximumFileSize"
value="1MB"/>
<paramname="RollingStyle"
value="Size"/>
<paramname="StaticLogFileName"
value="true"/>
<layouttype="log4net.Layout.PatternLayout">
<paramname="ConversionPattern"
value="%d{yyyy MMM dd HH:mm:ss} [%t] %-5p - %m%n"/>
</layout>
</appender>
But the following does *not*
work. It fails to initialize (I turned on the log4net debugging to see
it).
<appendername="LogServiceAppender"
type="log4net.Appender.RollingFileAppender">
<filevalue="myfile.log"/>
<appendToFilevalue="true"/>
<maxSizeRollBackupsvalue="10"/>
<maximumFileSizevalue="1MB"/>
<rollingStylevalue="Size"/>
<staticLogFileNamevalue="true"/>
<layouttype="log4net.Layout.PatternLayout">
<conversionPatternvalue="%d{yyyy MMM dd HH:mm:ss} [%t] %-5p - %m%n"/>
</layout>
</appender>
It appears that log4net initialization does not recognized
its own XML schema. How is that possible?
______________________________________________________________________
Eric Chamberlain