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

本文关键字:服务 WCF log4net windows | 更新日期: 2023-09-27 18:10:44

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

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

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

我可以把这个放在我的windows服务的OnStart()方法吗?然后我能从我的WCF服务实例化日志记录器吗?

我是这样实例化我的记录器的:

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

这是我的windows service

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

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

把这段代码放到AssemblyInfo.cs文件中:

[assembly: log4net.Config.XmlConfigurator(Watch=true)]
http://logging.apache.org/log4net/release/manual/configuration.html