2010-03-10 4 views
18

J'utilise log4net pour la journalisation (duh!). En utilisant EventLogAppender, je peux configurer mon nom d'application, de sorte que mes événements apparaîtront dans le journal des événements Application/"My Application Name". Cependant, j'aimerais enregistrer les événements dans "Un autre journal d'événements"/"Mon nom d'application". Comment est-ce que je configure cela?Configuration d'un journal des événements personnalisé pour log4net

config actuelle:

<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> 

Pour un EventLogInstaller, le code ressemblerait à ceci:

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

Répondre

24

que vous contrôlez avec le LogName property.

Par exemple:

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

Je l'ai fait et il a fait créer le nouveau journal sous 'des applications et des services noeud Logs' de l'Observateur d'événements, mais les messages sont toujours en cours connecté à la' Application' log pour certains raison au lieu du nouveau. – deadlydog

+3

Nevermind, s'avère que j'ai dû redémarrer mon ordinateur pour que la modification prenne effet, comme mentionné à http://stackoverflow.com/a/6457005/602585 et http://stackoverflow.com/questions/7607441/log4net-eventlogappender -is-ignoring-mon-nom-de-log – deadlydog

Questions connexes