Home Page Home Page Tips & Tricks Come creare un Log eventi personalizzato in .NET

Come creare un Log eventi personalizzato in .NET


In un tips precedente abbiamo visto che cos'è l'Event Viewer.

.NET ci ha dà la possibilità di poter scrivere nell’Event Viewer e personalizzarlo a nostro piacimento, potendo tener traccia degli eventi (informazioni,errori,warning) delle nostre applicazioni.
Di solito un log eventi trova la sua maggior utilità nelle applicazioni dei servizi windows che girano in background e che sono senza interfaccia(quindi difficili da controllare) ma nessuno ci vieta di tener traccia degli eventi anche degli altri tipi di applicazione.

La classe che si occupa di fare questo è la EventLog che è inserita nel namespace System.Diagnostics

Quindi per creare il nostro log personalizzato dobbiamo fare così:

VB
Codice .NET n°1
Dim myLog as New EventLog


C#
Codice .NET n°2
EventLog mylog = new EventLog();


L'Event Log ha una proprietà Source che è l'origine da registrare e utilizzare quando si scrive nell'Event Viewer e di solito a questa proprietà viene assegnato il nome dell’applicazione.

Controllo che il source non esista e quindi lo creo:

VB
Codice .NET n°3
If Not myLog.SourceExists("ApplicationLog") Then
myLog.CreateEventSource("ApplicationLog", "Log.dotnethell")
End If


C#
Codice .NET n°4
if(!mylog.SourceExists("ApplicationLog"){
myLog.CreateEventSource("ApplicationLog", "Log.dotnethell");
}


Log.dotnethell è il nome del log che comparirà nell'Event Viewer.

Assegno il source per non riscriverlo ogni volta:

Mylog.source = "ApplicationLog"

Poi per scrivere richiamo il metodo WriteEntry

Mylog.WriteEntry("Applicazione Partita", EventLogEntryType.Information)

Il secondo parametro EventLogEntryType è molto importante perchè definisce il tipo di messaggio se un informazione, un errore, un warning e fa comparire la relativa iconcina nel log.

Copyright © dotNetHell.it 2002-2018
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5