Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
GetEventLogs Method (String)
Collapse the table of content
Expand the table of content

EventLog.GetEventLogs Method (String)

Searches for all event logs on the given computer and creates an array of EventLog objects that contain the list.

Namespace:  System.Diagnostics
Assembly:  System (in System.dll)

public static EventLog[] GetEventLogs(
	string machineName
)

Parameters

machineName
Type: System.String

The computer on which to search for event logs.

Return Value

Type: System.Diagnostics.EventLog[]
An array of type EventLog that represents the logs on the given computer.

ExceptionCondition
ArgumentException

The machineName parameter is an invalid computer name.

InvalidOperationException

You do not have read access to the registry.

-or-

There is no event log service on the computer.

The array of EventLog objects is a snapshot of all event logs on the computer specified by the machineName parameter when the call to GetEventLogs is made. This is not a dynamic collection, so it does not reflect the deletion or creation of logs in real time. You should verify that a log in the array exists before you read or write to it. The array usually includes at least three logs: Application, System, and Security. If you created custom logs on the specified computer, they will appear in the array as well.

GetEventLogs is a static method, so it can be called on the EventLog class itself. It is not necessary to create an instance of an EventLog object to make a call to the method.

To retrieve the list of event logs, you must have the appropriate registry permissions. These permissions are identical to those required to call Exists and SourceExists.

The following example gets a list of logs on the computer "myServer". It then outputs the name of each log.

using System;
using System.Diagnostics;
using System.Threading;

class MySample{

    public static void Main(){

        EventLog[] remoteEventLogs;

        remoteEventLogs = EventLog.GetEventLogs("myServer");

        Console.WriteLine("Number of logs on computer: " + remoteEventLogs.Length);

        foreach(EventLog log in remoteEventLogs){
            Console.WriteLine("Log: " + log.Log);
        }                                                                      
    }       
}

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0, 1.1, 1.0

Community Additions

ADD
Show:
© 2015 Microsoft