EventLog.ModifyOverflowPolicy(OverflowAction, Int32) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Změní nakonfigurované chování při zápisu nových položek, když protokol událostí dosáhne maximální velikosti souboru.
public:
void ModifyOverflowPolicy(System::Diagnostics::OverflowAction action, int retentionDays);
public void ModifyOverflowPolicy(System.Diagnostics.OverflowAction action, int retentionDays);
[System.Runtime.InteropServices.ComVisible(false)]
public void ModifyOverflowPolicy(System.Diagnostics.OverflowAction action, int retentionDays);
member this.ModifyOverflowPolicy : System.Diagnostics.OverflowAction * int -> unit
[<System.Runtime.InteropServices.ComVisible(false)>]
member this.ModifyOverflowPolicy : System.Diagnostics.OverflowAction * int -> unit
Public Sub ModifyOverflowPolicy (action As OverflowAction, retentionDays As Integer)
Parametry
- action
- OverflowAction
Chování přetečení pro zápis nových položek do protokolu událostí. Nesmí být OverwriteOlder.
- retentionDays
- Int32
Deprecated. Musí být 0.
- Atributy
Výjimky
action není platná OverflowAction hodnota.
retentionDays je menší než jedna nebo větší než 365.
Hodnota Log není platný název protokolu.
nebo
Klíč registru pro protokol událostí nelze otevřít v cílovém počítači.
Příklady
Následující příklad zobrazí nakonfigurované zásady přetečení pro zadaný protokol událostí a umožní uživateli vybrat nové nastavení zásad přetečení pro protokol událostí.
// Display the current event log overflow settings, and
// prompt the user to input a new overflow setting.
public static void ChangeEventLogOverflowAction(String logName)
{
if (EventLog.Exists(logName))
{
// Display the current overflow setting of the
// specified event log.
EventLog inputLog = new EventLog(logName);
Console.WriteLine(" Event log {0}", inputLog.Log);
OverflowAction logOverflow = inputLog.OverflowAction;
Int32 numDays = inputLog.MinimumRetentionDays;
Console.WriteLine(" Current overflow setting = {0}",
logOverflow.ToString());
if (logOverflow == OverflowAction.OverwriteOlder)
{
Console.WriteLine("\t Entries are retained a minimum of {0} days.",
numDays.ToString());
}
// Prompt user for a new overflow setting.
GetNewOverflowSetting(ref logOverflow, ref numDays);
// Change the overflow setting on the event log.
if (logOverflow != inputLog.OverflowAction)
{
inputLog.ModifyOverflowPolicy(logOverflow, numDays);
Console.WriteLine("Event log overflow policy was modified successfully!");
}
else
{
Console.WriteLine("Event log overflow policy was not modified.");
}
}
else
{
Console.WriteLine("Event log {0} was not found.", logName);
}
}
' Display the current event log overflow settings, and
' prompt the user to input a new overflow setting.
Shared Sub ChangeEventLogOverflowAction(logName As String)
If EventLog.Exists(logName) Then
Dim inputLog As EventLog = New EventLog(logName)
Console.WriteLine(" Event log {0}", inputLog.Log)
Dim logOverflow As OverflowAction = inputLog.OverflowAction
Dim numDays As Int32 = inputLog.MinimumRetentionDays
Console.WriteLine(" Current overflow setting = {0}", _
logOverflow.ToString())
' Prompt user for a new overflow setting.
GetNewOverflowSetting(logOverflow, numDays)
If Not logOverflow = inputLog.OverflowAction Then
inputLog.ModifyOverflowPolicy(logOverflow, numDays)
Console.WriteLine("Event log overflow policy was modified successfully!")
Else
Console.WriteLine("Event log overflow policy was not modified.")
End If
Else
Console.WriteLine("Event log {0} was not found.", logName)
End If
End Sub
Poznámky
Chování přetečení protokolu událostí určuje, co se stane, když se nové položky zapíšou do protokolu, který dosáhl maximální velikosti souboru.
Poznámka:
Chování při přetečení se projeví jenom v případě, že protokol událostí dosáhne maximální velikosti souboru. Chování přetečení nemá vliv na zápis nové položky do protokolu, který může obsahovat další položky protokolu událostí.
Metoda ModifyOverflowPolicy konfiguruje chování přetečení protokolu událostí. EventLog Instance. Po volání této metody pro protokol událostí určený vlastností Log , OverflowAction hodnoty a MinimumRetentionDays vlastnosti odrážejí nově nakonfigurované chování přetečení.
Poznámka:
Tato vlastnost představuje nastavení konfigurace pro protokol událostí reprezentovaný touto instancí. Když protokol událostí dosáhne maximální velikosti, tato vlastnost určuje, jak operační systém zpracovává nové položky zapsané všemi zdroji událostí registrovanými pro protokol událostí.
action Nastavte parametr tak, aby OverwriteAsNeeded označoval, že nová položka přepíše nejstarší položku, když EventLog dosáhne maximální velikosti.
action Pokud je parametr nastavený na OverwriteAsNeeded, hodnota parametru retentionDays se ignoruje.
action Nastavte parametr tak, aby DoNotOverwrite při dosažení maximální velikosti protokolu zahodil nové události.
action Pokud je parametr nastavený na DoNotOverwrite, hodnota parametru retentionDays se ignoruje.
Výstraha
Nikdy nenastavujte action parametr na OverwriteOlderhodnotu . Tato hodnota je zastaralá a může způsobit, že se protokol bude chovat, jako kdyby DoNotOverwrite byl parametr předán.
Upozornění
Nastavením zásady přetečení určuje DoNotOverwrite , že se nové položky zahodí, když je protokol událostí plný. Pokud použijete toto nastavení, ujistěte se, že se protokol událostí pravidelně archivuje a vymaže, aby nedošlo k dosažení maximálního limitu velikosti.