I migliori posti per mettere Logs .NET

February 11

I migliori posti per mettere Logs .NET


Uno dei posti migliori per mettere registri delle applicazioni .NET è nel registro eventi di Windows che esiste su ogni computer che utilizza Windows. La registrazione degli eventi, secondo Microsoft, ti dà la possibilità di memorizzare le informazioni importanti sulle attività della vostra applicazione in una posizione centralizzata. Quando è necessario rivedere tali informazioni, è possibile farlo manualmente o scrivendo poche righe di codice che recuperano i dati del registro eventi di Windows.

Visualizzatore eventi di Windows

Windows e applicazioni di terze parti scrivere nel registro eventi di Windows in modo continuo. Visualizza 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 voci del registro di 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 come ad esempio gli aggiornamenti del database. Uno dei vantaggi di utilizzare il registro eventi di Windows è la flessibilità ti dà quando catalogare le informazioni sull'evento. Ogni record di registro ha campi come EventType, EventID, Messaggio e TimeWritten. Dopo aver impostato questi valori nella propria applicazione, appaiono nel Visualizzatore eventi immediatamente.

la registrazione di eventi

Non è necessario scrivere codice .NET molto per creare una voce nel registro eventi di Windows. lingue Microsoft .NET, come C # hanno una speciale classe EventLog che gestisce la lettura, la scrittura e la cancellazione anche per voi. Il codice seguente crea una nuova istanza della classe EventLog e scrive la parola "Attenzione" ad esso:

if (! (EventLog.SourceExists ( "EventSource1", System.Environment.MachineName)))
EventLog.CreateEventSource ( "EventSource1", "applicazione", System.Environment.MachineName);

EventLog log1 = new EventLog ( "Applicazione", System.Environment.MachineName, "EventSource1");

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 nei luoghi in cui si desidera registrare gli eventi, e .NET invia le informazioni al registro eventi di Windows.

Lettura Registro applicazione

È inoltre possibile leggere le informazioni di programmazione utilizzando il 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--)
{
EventLogEntry ingresso = log1.Entries [i];
Console.WriteLine (entry.EventID + "" + entry.Message + "\ n");
}
log1.Close ();

La prima linea ottiene un riferimento al registro applicazione, e il codice rimanente loop attraverso gli ID ei messaggi di log ed eventi display. È inoltre possibile visualizzare altre proprietà degli eventi quali entry.TimeWritten e entry.EntryType. Se si utilizza Visual Studio per testare le vostre applicazioni .NET, avviare il programma in modalità amministrativa prima di eseguire alcun codice. Questo assicura che l'applicazione ha i privilegi di protezione 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 privato e scrivere qualcosa che ti piace di loro utilizzando la classe .NET StreamWriter. 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, ricordare che non c'è bisogno di registrare gli eventi di applicazioni a meno che non si ha realmente bisogno per registrare gli errori o catturare le informazioni che si possono trovare utili in seguito.