Como assinar os registros de eventos do Windows?
Ao escrever aplicativos ou serviços do Windows, o Windows tem uma boa ferramenta incorporada chamada Event Viewer ou Event Logs que pode ser usada para fins de registro e ajuda muito na depuração e rastreamento dos registros críticos dos aplicativos.
Pode-se registrar os eventos críticos e principais que estão acontecendo dentro do seu código de aplicativo, como, quando o aplicativo começou, quando o aplicativo atingiu algum limite, e quando o aplicativo teve algum erro e pode registrar detalhes de erro no visualizador de eventos.
O próprio Windows armazena os eventos que acontecem nos serviços internos do Windows.
O visualizador de eventos do Windows é uma ótima maneira de registrar registros críticos de informações, avisos e erros.
Às vezes, a necessidade é ler do espectador do evento, essas situações podem incluir monitorar eventos de janelas, monitorar alguns eventos de aplicativos personalizados.
Podemos aproveitar o EventLogWatcher.EventLogWritten para assinar os registros do espectador do evento.
A seguir está o trecho de código mostrando seu uso.
void Main(string[] args)
{
var logQuery = new EventLogQuery("Application", PathType.LogName);
EventLogWatcher watcher = new EventLogWatcher(logQuery);
watcher.EventRecordWritten += NewEventEntryWritten;
watcher.Enabled = true;
//just to make the app wait to see the event hit
System.Threading.Thread.Sleep(10000);
}
private void NewEventEntryWritten(object sender, EventRecordWrittenEventArgs e)
{
String message = e.EventRecord.FormatDescription();
//here it is...
//make decision based on the contents of the message
}