Leggere 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.

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.

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