2010-03-10 89 views
18

我正在使用log4net進行日誌記錄(duh!)。使用EventLogAppender,我可以配置我的應用程序名稱,以便我的事件顯示在應用程序/「我的應用程序名稱」事件日誌中。但是,我想將事件記錄到「其他事件日誌」/「我的應用程序名稱」。我該如何配置?配置log4net的自定義事件日誌

當前配置:

<appender name="EventLogAppender" type="log4net.Appender.EventLogAppender" > 
    <applicationName value="My application Name" /> 
    <layout type="log4net.Layout.PatternLayout"> 
     <conversionPattern value="%date [%thread] %-5level %logger - %message%newline" /> 
    </layout> 
</appender> 

對於EventLogInstaller,代碼應該是這樣的:

eventLogInstaller.Log = "Some other event log"; // Default "Application" 
eventLogInstaller.Source = "My application name"; 

回答

24

您與LogName property控制這一點。

如:

<appender name="EventLogAppender" type="log4net.Appender.EventLogAppender" > 
     <logName value="System" /> 
     <applicationName value="My application Name" /> 
     ... 
</appender> 
+1

我已經做到了這一點,它確實創造了在事件查看器的'應用程序和服務Logs'節點的新記錄,但消息仍然被記錄到'Application'日誌一些原因而不是新的。 – deadlydog 2015-03-03 21:59:38

+3

沒關係,事實證明,我必須重新啓動計算機才能使更改生效,如http://stackoverflow.com/a/6457005/602585和http://stackoverflow.com/questions/7607441/log4net-eventlogappender中所述-is-忽略-MY-LOGNAME – deadlydog 2015-03-03 22:42:45