在Windows服务上托管的WCF服务中的log4net

时间:2013-04-25 07:56:05

标签: c# .net wcf service log4net

我有一个托管在Windows服务上的WCF服务。

我应该在哪里放置XmlConfigurator.Configure();

在其他应用程序中,我可以将其放在Application_Start()

我可以将它放在我的Windows服务的OnStart()方法中吗?那么我是否能够从我的WCF服务实例化记录器?

这是我实例化记录器的方式:

private readonly ILog _log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);

这就是我在Windows服务中的内容

    protected override void OnStart(string[] args)
    {
        if (AgentServiceHost != null)
        {
            AgentServiceHost.Close();
        }

        AgentServiceHost = new ServiceHost(typeof(CustoemrService));
        AgentServiceHost.Open();
    }

1 个答案:

答案 0 :(得分:3)

将这段代码放在AssemblyInfo.cs文件中:

[assembly: log4net.Config.XmlConfigurator(Watch=true)]

http://logging.apache.org/log4net/release/manual/configuration.html