2013-08-11 15 views
6

Come posso evitare di finestre-lamentarsi descrizioni mancante per ID evento quando si accede utilizzando NLog. Quando uso:Il modo giusto per accedere al EventLog utilizzando NLog

<target xsi:type="EventLog" 
     name="eventLog" 
     layout="${message}" 
     machineName="."  
     source="MyApp" 
     log="Application" /> 

e

<rules> 
    <logger name="*" minlevel="Debug" writeTo="eventLog" /> 
</rules> 

la voce apparirà nel registro. Ma Windows si lamenta della descrizione mancante per l'ID evento "0", che è giusto.

Devo fare cose come pointed out here per ottenere una registrazione pulita?

+1

Hai visto questa domanda SO: http://stackoverflow.com/questions/17320933/set-event-id-per-log-when-writing-to-windows-event-log? – nemesv

+0

@nemesv Sì, ma dove devo impostare l'ID allora? – sprinter252

+1

Dipende cosa si desidera avere nel vostro ID, è possibile utilizzare alcuni valori personalizzati come descirbed nella questione legata oppure è possibile utilizzare uno qualsiasi dei costruita nel renderer: https://github.com/nlog/NLog/wiki/ Renderizzatori di layout – nemesv

risposta

3

so che è un vecchio post, ma il configuaration dovrebbe essere

<target xsi:type="EventLog" 
     name="asyncFile" 
     layout="${message}" 
     machineName="."  
     source="MyApp" 
     log="Application" /> 

e

<rules> 
    <logger name="*" minlevel="Debug" writeTo="asyncFile" /> 
</rules> 
+0

Grazie. Questo non era il problema. Ho appena corretto la mia domanda qui sopra. Si tratta di accedere a EventLog di Windows. Come posso dire a NLog di utilizzare un determinato ID evento. Gli ID dinamici sarebbero ancora meglio. – sprinter252

0

Secondo la documentazione NLog c'è un tag eventId che può essere impostato. https://github.com/nlog/NLog/wiki/EventLog-target

<targets> 
    <target xsi:type="EventLog" 
      name="String" 
      layout="Layout" 
      machineName="String" 
      source="Layout" 
      category="Layout" 
      eventId="Layout" 
      log="String" /> 
<!-- note: source is a string in NLog before 4.0 --> 

</targets> 
Problemi correlati