post icon

Leer log del registro de eventos de Windows con C#.Net

Como lo prometido es deuda, según lo que les decía aquí, quedaba pendiente en mostrar como leer las entradas del log que creamos y mostrarlo en alguna aplicación. A modo de ejemplo lo haremos en una página web Asp.net, sencilla que contiene solo un botón y un label.

Siguiendo la temática esto puede resultarnos muy útil, para no tener que acceder físicamente al equipo en donde se están guardando los logs, además que lo integramos con nuestra aplicación.

En la clase personalizada que ya teniamos en el post anterior agregamos el siguiente método:

1
2
3
4
5
6
7
8
9
10
11
12
public EventLog Cargar(string str)
    {
        if (EventLog.SourceExists(str))
        {
            EventLog log = new EventLog(str);
            return log;
        }
        else
        {
            return null;
        }
    }

Y el modo de utilizarlo, puede ser así, espero que ustedes se encarguen de darle una mejor apariencia a esto 😀

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
protected void btnListar_Click(object sender, EventArgs e)
    {
        EventLogger ev = new EventLogger();
        EventLog logs = ev.Cargar("DevTroce");
        if (logs == null)
        {
            lblLogs.Text = "No hay logs registrados";
        }
        else
        {
            foreach (EventLogEntry log in logs.Entries)
                lblLogs.Text += log.Message + "
";
        }
    }

Nota: recuerden hacer uso del espacio de nombres System.Diagnostics

Comentarios desde Facebook:

  1. avatar
    DebianZeus PARAGUAY Mozilla Firefox Windows
    18 Junio 2010 at 12:34 #

    Como siempre interesante 🙂

    Otra forma de ver los logs remotamente eventvwr /auxsource=nombrecompu

    Donde nombrecompu es el nombre de la pc que queres vichear, solo si esta en la red jejeje 😛

    Saludos!

Responder