Leggi in inglese

Condividi tramite


OverflowAction Enumerazione

Definizione

Specifica come devono essere gestite le voci del log eventi quando quest'ultimo raggiunge la dimensione massima di file consentita.

C#
public enum OverflowAction
Ereditarietà
OverflowAction

Campi

Nome Valore Descrizione
DoNotOverwrite -1

Indica che, in caso di log eventi pieno, le voci esistenti verranno conservate, mentre quelle nuove verranno scartate.

OverwriteAsNeeded 0

Indica che, in caso di log eventi pieno, ogni nuova voce sovrascriverà la voce meno recente.

OverwriteOlder 1

Indica che, in caso di log eventi pieno, i nuovi eventi sovrascriveranno gli eventi inseriti da un numero di giorni superiore a quanto specificato dal valore della proprietà MinimumRetentionDays. In caso di log eventi pieno, i nuovi eventi verranno scartati e non vi saranno eventi inseriti da un numero di giorni superiore a quanto specificato dal valore della proprietà MinimumRetentionDays.

Esempio

Nell'esempio seguente vengono enumerati i log eventi definiti nel computer locale e vengono visualizzati i dettagli di configurazione per ogni registro eventi.

C#
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();
        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)
                    {
                        sizeKB++;
                    }
                    Console.WriteLine("  Current size = \t {0} kilobytes", sizeKB.ToString());
                }
            }
            else
            {
                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.",
                    e.MinimumRetentionDays);
                break;
            case OverflowAction.DoNotOverwrite:
                Console.WriteLine("\t Older entries are not overwritten.");
                break;
            case OverflowAction.OverwriteAsNeeded:
                Console.WriteLine("\t If number of entries equals max size limit, a new event log entry overwrites the oldest entry.");
                break;
            default:
                break;
        }
    }
}

Commenti

Ogni log eventi ha un limite massimo di dimensioni e un'impostazione configurabile che fornisce la regola per la scrittura di nuove voci al limite. Quando il registro eventi ha raggiunto le dimensioni massime, è possibile specificare una delle regole seguenti:

  • Le nuove voci verranno rimosse.

  • Le nuove voci sovrascriveranno le voci meno recenti.

  • Le nuove voci verranno rimosse o sovrascriveranno le voci esistenti a seconda dell'età delle voci esistenti.

Utilizzare il metodo per impostare il ModifyOverflowPolicy comportamento di overflow per un EventLogoggetto . Controllare il comportamento configurato corrente di un oggetto EventLog tramite la relativa OverflowAction proprietà.

Si applica a

Prodotto Versioni
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9