If you want to configure log4net programmatically rather than using a
config file you should get hold of the logger repository implementation
object (which will be a Hierarchy type) and configure the loggers on
that.
The following example configures the root logger with a ConsoleAppender
and the "foo" logger with a FileAppender:
using log4net;
using log4net.Appender;
using log4net.Layout;
using log4net.Repository.Hierarchy;
public class ConfigEx
{
private static void Configure()
{
// Lookup the hierarchy
Hierarchy hierarchy =
(Hierarchy)log4net.LogManager.GetLoggerRepository();
// Create a console appender
ConsoleAppender consoleAppender = new ConsoleAppender();
PatternLayout patternLayout = new PatternLayout();
patternLayout.ConversionPattern = "%d [%t] %-5p %c [%x] - %m%n";
patternLayout.ActivateOptions();
consoleAppender.Layout = patternLayout;
consoleAppender.ActivateOptions();
// Attach console appender to root logger
hierarchy.Root.AddAppender(consoleAppender);
// Create file appender
FileAppender fileAppender = new FileAppender();
patternLayout = new PatternLayout();
patternLayout.ConversionPattern = "%d [%t] %-5p %c [%x] - %m%n";
patternLayout.ActivateOptions();
fileAppender.Layout = patternLayout;
fileAppender.AppendToFile = true;
fileAppender.File = "C:\\logfile.txt";
fileAppender.ActivateOptions();
// Attach file appender to logger named 'foo'
log4net.Repository.Hierarchy.Logger logger =
(Logger)hierarchy.GetLogger("foo");
logger.AddAppender(fileAppender);
// Inform the hierarchy that it is now configured
hierarchy.Configured = true;
}
}
Nicko
> -----Original Message-----
> From: Williams, Damon [mailto:[EMAIL PROTECTED]
> Sent: 19 February 2005 00:25
> To: [email protected]
> Subject: very simple question
>
> I'm a Java guy trying to get the hang of C#
>
>
>
> Extremely basic question I'm sure:
>
> LogManager.GetLogger() returns ILog
>
>
>
> How do I access the underlying Logger object so that I can
> call SetLevel, AddAppender, etc?
>
>
>
>
>
> Thanks,
>
> - Damon Williams
>
> PayPal Developer Technical Support
>
> [EMAIL PROTECTED]
>
>
>
>