log4net:日志记录仅在Mainclass中有效

时间:2012-03-20 08:10:19

标签: log4net log4net-configuration

我有一个Windows服务,通过使用System.Threads和Timers每x分钟创建一个类的实例。在servicecall所在的mainclass中的日志记录有效,但被调用的类无法登录,i只是没有得到任何输出。

这是我的主要类框架:

    /// <summary>
    /// Create an Instance of the Log
    /// </summary>
    private static readonly ILog logger = LogManager.GetLogger("Test");

    /// <summary>
    /// Get the Instance of the Log
    /// </summary>
    internal static ILog log
    {
        get { return logger; }
    }

如果我现在调出任何其他类的Service.log引用并尝试写日志,例如Service.log.Info(“test”);什么都没有出现。

如果我尝试使用

在第二类中创建新的日志实例
/// <summary>
/// Create an Instance of the Log
/// </summary>
private static readonly ILog logsomething = LogManager.GetLogger("Test");

我也没有得到任何输出,它只适用于mainclass。我不能让它在任何其他线程类中工作。我的配置基于RollingFileAppender。

1 个答案:

答案 0 :(得分:0)

可能是log4net犯了错误。启用跟踪并检查日志以获取其他详细信息。

<system.diagnostics>
<trace autoflush="true">
  <listeners>
    <add
      name="textWriterTraceListener"
      type="System.Diagnostics.TextWriterTraceListener"
      initializeData="C:\temp\log4net.txt" />
  </listeners>
</trace>