Thanks Ross, that's it logging now. Unfortunately it's only using the appenders as specified in the root element, even though I'm trying to access it by "MyLogger" name. So I presume MyLogger isn't registered with the default repository? Should I therefore create a new repository with MyLogger name in order to use that Logger?
Also is there some documentation that shows all the configuration elements? I looked at the SDK but I couldn't find it. Thanks again for all your help. Regards, Sidharth From: Ross Hinkley [mailto:[email protected]] Sent: 19 August 2009 13:06 To: Log4NET User Subject: Re: No appenders found Sidharth, I think it depends on the log4net section handler you're using. That overload of configure has specifies that the configuration must use the Log4NetConfigurationSectionHandler. See: http://logging.apache.org/log4net/release/sdk/log4net.Config.XmlConfigurator.Configure_overload_2.html for more information. Alternatively, you could try the following in your code: log4net.Config.XmlConfigurator.Configure(new FileInfo(AppDomain.CurrentDomain.SetupInformation.ConfigurationFile)); -Ross On Wed, Aug 19, 2009 at 5:11 AM, Sidharth Nayyar <[email protected]<mailto:[email protected]>> wrote: Hi Wolfgang, Thanks for your quick response. I've added this to the code now: if (!_defaultLog.Logger.Repository.Configured) { log4net.Config.XmlConfigurator.Configure(_defaultLog.Logger.Repository); } But the repository is still appearing as unconfigured and still no appenders. I've even tried doing a default XmlConfigurator.Configure(); before GetLogger() call. Is that the right way of calling the Configure() method? Sidharth From: Wolfgang Trog [mailto:[email protected]<mailto:[email protected]>] Sent: 19 August 2009 10:49 To: 'Log4NET User' Subject: RE: No appenders found Do you have a XmlConfigurator.Configure(); Or one of the other possibilities to configure log4net somewhere in your code ? -- Wolfgang From: Sidharth Nayyar [mailto:[email protected]<mailto:[email protected]>] Sent: Mittwoch, 19. August 2009 11:43 To: [email protected]<mailto:[email protected]> Subject: No appenders found Hello all, I'm new to log4net, so sorry for the really basic question! I've added this to the web.config of my site: <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" /> ... <log4net> <appender name="EventLogAppender" type="log4net.Appender.EventLogAppender" > <applicationName value="LoggingTest" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" /> </layout> </appender> <appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender"> <file value="logfile" /> <appendToFile value="true" /> <rollingStyle value="Composite" /> <datePattern value="yyyyMMdd" /> <maxSizeRollBackups value="10" /> <maximumFileSize value="1MB" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" /> </layout> </appender> <appender name="SmtpAppender" type="log4net.Appender.SmtpAppender,log4net"> <to value="[email protected]<mailto:[email protected]>" /> <from value="[email protected]<mailto:[email protected]>" /> <subject value=" Warning" /> <smtpHost value="mail-relay.company.co.uk<http://mail-relay.company.co.uk>" /> <bufferSize value="512" /> <lossy value="false" /> <evaluator type="log4net.Core.LevelEvaluator,log4net"> <threshold value="WARN" /> </evaluator> <layout type="log4net.Layout.PatternLayout,log4net"> <conversionPattern value="%property{log4net:HostName} :: %level :: %message %newlineLogger: %logger%newlineThread: %thread%newlineDate: %date%newlineNDC: %property{NDC}%newline%newline" /> </layout> </appender> <!-- Set root logger level to DEBUG and its only appender to A1 --> <root> <level value="DEBUG" /> <appender-ref ref="RollingFileAppender" /> </root> <logger name="MyLogger"> <level value="WARN" /> <appender-ref ref="EventLogAppender" /> <appender-ref ref="SmtpAppender" /> <appender-ref ref="RollingFileAppender" /> </logger> </log4net> And in my code I have this: private static ILog _defaultLog; ... _defaultLog = log4net.LogManager.GetLogger("MyLogger"); _defaultLog.Error("test"); However nothing gets written to event log, file or smtp. While debugging there doesn't seem to be any appenders to the repository. So I'm presuming I haven't set up my configuration properly. Unfortunately I can't see where I'm going wrong - can you see where I'm going wrong? Thanks in advance. Regards Sidharth
