请参阅下面的GetLogger实施。名称是具体的记录器。
public sealed class LogManager
{
...
public static ILoggerFactoryAdapter Adapter { get; set; }
public static ILog GetLogger(string name)
{
return Adapter.GetLogger(name); // Adapter is ILoggerFactoryAdapter
}
}
public interface ILoggerFactoryAdapter
{
// Methods
ILog GetLogger(string name);
ILog GetLogger(Type type);
}
对于log4net的适配器实现看起来像这样
public class Log4NetLoggerFactoryAdapter : ILoggerFactoryAdapter
{
...
public ILog GetLogger(string name)
{
return new Log4NetLogger(LogManager.GetLogger(name)); // LogManager - is log4net.Logmanager
}
}
感谢乔恩。但是我没有找到一种通过配置来改变特定日志名称的日志级别的方法。如何做到这一点? – HuBeZa 2011-01-12 09:20:03