. Uno dei migliori posti per mettere i log NET è nel registro eventi di Windows che esiste su ogni computer che utilizza Windows . . Logging , secondo Microsoft , evento che offre la possibilità di memorizzare le informazioni importanti sulle attività dell'applicazione in una posizione centralizzata . Quando è necessario rivedere tali informazioni, è possibile farlo manualmente oppure scrivendo poche righe di codice che consentono di recuperare i dati dal registro eventi di Windows . Visualizzatore eventi di Windows
di Windows e le applicazioni di terze parti scrivere nel registro eventi di Windows in modo continuo. Guarda le voci di registro digitando "Strumenti di amministrazione " nel menu Start e selezionando "Visualizzatore eventi" per aprire il programma Visualizzatore eventi . La cartella dell'applicazione nel Visualizzatore eventi contiene le voci di log dell'applicazione. Alcuni sviluppatori possono utilizzare i registri delle applicazioni per acquisire informazioni sugli errori che si verificano come un programma viene eseguito . Altri potrebbero registrare le voci che registrano eventi critici , quali aggiornamenti del database . Uno dei vantaggi di utilizzare il registro eventi di Windows è la flessibilità che ti dà quando catalogazione informazioni sull'evento. Ogni record di log ha campi come EventType , EventID , Messaggio e TimeWritten . Dopo aver impostato questi valori nella propria applicazione , appaiono nel Visualizzatore eventi immediatamente .
Registrazione Eventi
Non dovete scrivere molto codice. NET per creare una voce nel registro eventi di Windows . . NET di Microsoft , come C # hanno una speciale classe EventLog che gestisce la lettura , la scrittura e anche la cancellazione per voi . Il codice seguente crea una nuova istanza della classe EventLog e scrive la parola "Attenzione" di essa :
se EventLog ( ( EventLog.SourceExists ( " EventSource1 " , System.Environment.MachineName ) ) ! ) . CreateEventSource ( " EventSource1 " , " applicazione" , System.Environment.MachineName ) ;
EventLog log1 = new EventLog ( "Applicazione" , System.Environment.MachineName , " EventSource1 "); < br
log1.WriteEntry > ( " Warning1 " , EventLogEntryType.Warning , 10001 ) ; log1.Close ();
EventLogEntryType.Warning dice a Windows che si desidera registrare un messaggio di avvertimento il cui valore è 10001 . Se si desidera registrare un messaggio informativo , invece , cambiare EventLogEntryType.Warning a EventLogEntryType.Information . Inserire l'istruzione WriteEntry in posizioni in cui si desidera registrare gli eventi , e . NET invia le informazioni al registro eventi di Windows .
Lettura Application Log
può anche leggere le informazioni di programmazione utilizzando codice simile a quello mostrato nel seguente esempio C # :
EventLog log1 = new EventLog ( "Applicazione" , System.Environment.MachineName ) ;
for (int i = log1.Entries.Count - 1 , i < log1.Entries.Count , i -) { entry EventLogEntry = log1.Entries [ i] ; Console.WriteLine ( entry.EventID + " " + entry.Message + "\\ n" );} log1.Close ();
la prima linea ottiene un riferimento al registro applicazione , ed i cicli codice rimanente attraverso il registro e visualizza gli ID di eventi e messaggi . È inoltre possibile visualizzare le proprietà dell'evento , quali entry.TimeWritten e entry.EntryType . Se si utilizza Visual Studio per testare le applicazioni . NET , avviare il programma in modalità amministrativa prima di eseguire qualsiasi codice . Questo assicura che l'applicazione ha i privilegi di sicurezza necessari per accedere al registro eventi di Windows .
File di testo
Se si preferisce non utilizzare il registro eventi di Windows , creare i propri file di log privati e scrivere tutto ciò che ti piace di loro utilizzando la classe StreamWriter . NET . Se si utilizza questo metodo , è necessario scrivere il codice necessario per recuperare i dati pure. Si perde anche la possibilità di visualizzare le informazioni del registro in modo rapido utilizzando il Visualizzatore eventi . Indipendentemente dal metodo utilizzato, ricordate che non c'è bisogno di registrare gli eventi di applicazioni a meno che non si ha realmente bisogno di registrare errori o catturare le informazioni che si possono trovare utili in seguito.