是否可以根據配置設置記錄器。我有一個網絡應用程序 使用框架。該框架是可擴展的並具有記錄器。 當我登錄時,當前記錄器被設置爲框架類。log4net記錄器配置
是否有可能,我可以配置我的web應用程序,並設置記錄器的web應用程序 loggerForWebApp
和一個控制檯應用程序(它是使用 相同的框架),以loggerForConsoleApp
記錄器?
是否可以根據配置設置記錄器。我有一個網絡應用程序 使用框架。該框架是可擴展的並具有記錄器。 當我登錄時,當前記錄器被設置爲框架類。log4net記錄器配置
是否有可能,我可以配置我的web應用程序,並設置記錄器的web應用程序 loggerForWebApp
和一個控制檯應用程序(它是使用 相同的框架),以loggerForConsoleApp
記錄器?
除了根記錄器(它必須始終在那裏),您可以命名自己的appender,裁判和水平記錄器。
例如,你可以有這樣的事情:
<root>
....
</root>
<logger name="loggerForWebApp">
<level value="WARN" />
<appender-ref ... />
</logger>
<logger name="loggerForConsoleApp">
<level value="WARN" />
<appender-ref ... />
</logger>
在代碼中,你會被他們的名字召喚這些記錄器:
var log = LogManager.GetLogger("loggerForWebApp");
這是可能的,因爲我在我的答案描述。但爲什麼你會在這兩個應用程序之間共享log4net配置?你可以從你的網絡應用程序中分離出控制檯應用程序,並且仍然能夠利用你的框架,或者它被綁定到web應用程序中嗎? – 2009-12-23 08:36:54
不,我不會在2個應用程序之間分享它。我想在運行時從2個不同的app/web.configs中選擇它們,它們會有不同的值。 – ram 2009-12-23 11:30:16
沒錯。那麼爲什麼你需要在控制檯app.config中的webapp記錄器或web.config中的consoleapp記錄器?猜猜我沒有看到你的問題的整個背景... – 2009-12-23 12:54:07