• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 423
  • Last Modified:

How do I read events in event viewer from vb.net or have events automatically sent to a database for parsing?

Hello.  So what I need to do is for a project i'm developing I need to be able to parse new events in the security log from event viewer.  One option is to manually export the log to a csv format and that is all nice but I need something automated.  I'd rather not have to export into csv and be able to parse through the events in realtime on an as needed basis but I don't know if that is possible.

is it possible to query the security log in event viewer and parse individual log entries?  the server with event viewer is a 2008 R2 machine.  my application can sit and run on that server and retrieve the data locally.  

thanks for any assistance.
0
linuxrox
Asked:
linuxrox
2 Solutions
 
athomsfereCommented:
If you can convert this from C# to VB.net here is something I wrote a while back.

        private void getSystemErrors()
        {
            String computerName = txtComputer.Text;

            EventLog eventEntry = new EventLog("System", computerName);

            foreach (EventLogEntry entry in eventEntry.Entries)
            {
                if (entry.EntryType == EventLogEntryType.Error)
                {
                    lstEvents.Items.Add(entry.TimeGenerated + " " + entry.Source
                       + " " + entry.Category );
                }
            }
        }

Open in new window


Changs "System" to "Security", and then what that does is add each Error level event on a remote machine to a listbox. You can remove the computername overload and it will run locally.
0
 
nepaluzCommented:
here' a literal VB conversion
Sub GetSystemErrors()
    Dim eRrorEvents As New List(Of String)
    Dim ComputerName As String = My.Computer.Name
    Dim eVententry As EventLog = New EventLog("System", ComputerName)
    For Each entry As EventLogEntry In eVententry.Entries
        If entry.EntryType = EventLogEntryType.Error Then
            eRrorEvents.Add(String.Join(", ", {entry.TimeGenerated, entry.Source, entry.Category}))
        End If
    Next
End Sub

Open in new window

0
 
linuxroxAuthor Commented:
very much appreciated guys!
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Keep up with what's happening at Experts Exchange!

Sign up to receive Decoded, a new monthly digest with product updates, feature release info, continuing education opportunities, and more.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now