2016-04-12 119 views
2

我目前有一個應用程序可以使用Castle Windsor作爲Ioc。我現在想要將log4net的日誌記錄框架更改爲Serilog。它最終)如何UseLog4Net(實現調用與Castle Windsor一起使用Serilog日誌功能

IocManager.Instance.IocContainer.AddFacility<LoggingFacility>(f => f.UseLog4Net().WithConfig("log4net.config")); 

但是沒有UseSerilog()和尋找:

以下配置事情log4net的

LogUsing(LoggerImplementation.Log4net) 

但是LoggerImplementation枚舉不沒有Seri​​log成員。那麼,我如何告訴Castle將Serilog作爲我的首選日誌框架?

回答

0

我們沒有在枚舉中發佈一個Serilog成員的新版本的Windsor,但是如果您查看LoggingFacility的實現,您會看到枚舉成員(例如log4net)只是通過反射來加載。

您可以輕鬆地使用LogUsing<>()提供由城堡核心提供的SerilogFactory

var container = new WindsorContainer(); 
container.AddFacility<LoggingFacility>(f => f.LogUsing<SerilogFactory>());