MaximumKilobytes Property

EventLog.MaximumKilobytes Property


Gets or sets the maximum event log size in kilobytes.

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

public long MaximumKilobytes { get; set; }

Property Value

Type: System.Int64

The maximum event log size in kilobytes. The default is 512, indicating a maximum file size of 512 kilobytes.

Exception Condition

The specified value is less than 64, or greater than 4194240, or not an even multiple of 64.


The Log value is not a valid log name.

- or -

The registry key for the event log could not be opened on the target computer.

The MaximumKilobytes property represents the size limit of the event log file. When the event log reaches the size limit, the configured OverflowAction value determines whether new entries are discarded, or whether new entries overwrite older entries.


This property represents a configuration setting for the event log represented by this instance. When the event log reaches its maximum size, this property specifies how the operating system handles new entries written by all event sources registered for the event log.

The following example enumerates the event logs defined on the local computer, and displays configuration details for each event log.

static void DisplayEventLogProperties()
    // Iterate through the current set of event log files,
    // displaying the property settings for each file.

    EventLog[] eventLogs = EventLog.GetEventLogs();
    foreach (EventLog e in eventLogs)
        Int64 sizeKB = 0;

        Console.WriteLine("{0}:", e.LogDisplayName);
        Console.WriteLine("  Log name = \t\t {0}", e.Log); 

        Console.WriteLine("  Number of event log entries = {0}", e.Entries.Count.ToString());

        // Determine if there is an event log file for this event log.
        RegistryKey regEventLog = Registry.LocalMachine.OpenSubKey("System\\CurrentControlSet\\Services\\EventLog\\" + e.Log);
        if (regEventLog != null)
            Object temp = regEventLog.GetValue("File");
            if (temp != null)
                Console.WriteLine("  Log file path = \t {0}", temp.ToString());
                FileInfo file = new FileInfo(temp.ToString());

                // Get the current size of the event log file.
                if (file.Exists)
                    sizeKB = file.Length / 1024;
                    if ((file.Length % 1024) != 0)
                    Console.WriteLine("  Current size = \t {0} kilobytes", sizeKB.ToString());
                Console.WriteLine("  Log file path = \t <not set>");

        // Display the maximum size and overflow settings.

        sizeKB = e.MaximumKilobytes;
        Console.WriteLine("  Maximum size = \t {0} kilobytes", sizeKB.ToString());
        Console.WriteLine("  Overflow setting = \t {0}", e.OverflowAction.ToString());

        switch (e.OverflowAction)
            case OverflowAction.OverwriteOlder:
                Console.WriteLine("\t Entries are retained a minimum of {0} days.", 
            case OverflowAction.DoNotOverwrite:
                Console.WriteLine("\t Older entries are not overwritten.");
            case OverflowAction.OverwriteAsNeeded:
                Console.WriteLine("\t If number of entries equals max size limit, a new event log entry overwrites the oldest entry.");


for administering event log information on the computer. Associated enumeration: EventLogPermissionAccess.Administer

.NET Framework
Available since 2.0
Return to top
© 2015 Microsoft