EventLog.ModifyOverflowPolicy(OverflowAction, Int32) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Cambia el comportamiento configurado para la escritura de entradas nuevas cuando el registro de eventos alcanza su tamaño máximo de archivo.
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)
Parámetros
- action
- OverflowAction
Comportamiento de desbordamiento para la escritura de entradas nuevas en el registro de eventos.
- retentionDays
- Int32
Número mínimo de días que se conserva cada entrada del registro de eventos. Solo se utiliza este parámetro si action
se establece en OverwriteOlder.
- Atributos
Excepciones
action
no es un valor OverflowAction válido.
retentionDays
es menor que 1 o mayor que 365.
Log no es un nombre de registro válido.
o bien
No se ha podido abrir en el equipo de destino la clave del Registro para el registro de eventos.
Ejemplos
En el ejemplo siguiente se muestra la directiva de desbordamiento configurada para un registro de eventos especificado y permite al usuario seleccionar una nueva configuración de directiva de desbordamiento para el registro de eventos.
// Display the current event log overflow settings, and
// prompt the user to input a new overflow setting.
void ChangeEventLogOverflowAction( String^ logName )
{
if ( EventLog::Exists( logName ) )
{
// Display the current overflow setting of the
// specified event log.
EventLog^ inputLog = gcnew EventLog( logName );
Console::WriteLine( " Event log {0}", inputLog->Log );
OverflowAction logOverflow = inputLog->OverflowAction;
Int32 numDays = inputLog->MinimumRetentionDays;
Console::WriteLine( " Current overflow setting = {0}", logOverflow );
if ( logOverflow == OverflowAction::OverwriteOlder )
{
Console::WriteLine( "\t Entries are retained a minimum of {0} days.", numDays );
}
// Prompt user for a new overflow setting.
GetNewOverflowSetting( &logOverflow, &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.
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
Comentarios
El comportamiento de desbordamiento de un registro de eventos especifica lo que sucede cuando se escriben nuevas entradas en un registro que ha alcanzado su tamaño máximo de archivo.
Nota
El comportamiento de desbordamiento solo surte efecto cuando un registro de eventos alcanza su tamaño máximo de archivo. El comportamiento de desbordamiento no afecta a escribir una nueva entrada en un registro que pueda dar cabida a entradas adicionales del registro de eventos.
El ModifyOverflowPolicy método configura el comportamiento de desbordamiento de un registro de eventos. EventLog Ejemplo. Después de llamar a este método para el registro de eventos especificado por la Log propiedad , los OverflowAction valores de propiedad y MinimumRetentionDays reflejan el comportamiento de desbordamiento recién configurado.
Nota
Esta propiedad representa un valor de configuración para el registro de eventos representado por esta instancia. Cuando el registro de eventos alcanza su tamaño máximo, esta propiedad especifica cómo el sistema operativo controla las nuevas entradas escritas por todos los orígenes de eventos registrados para el registro de eventos.
Establezca el action
parámetro OverwriteAsNeeded en para indicar que una nueva entrada sobrescribe la entrada más antigua cuando EventLog alcanza su tamaño máximo. Si el action
parámetro se establece OverwriteAsNeededen , se omite el valor del retentionDays
parámetro.
Establezca el action
parámetro OverwriteOlder en para indicar que cada nueva entrada sobrescribe entradas anteriores cuando EventLog alcanza su tamaño máximo. Especifique el número de días que los eventos se deben conservar en el registro mediante el retentionDays
parámetro . Las entradas nuevas no sobrescriben los eventos escritos dentro del intervalo de retención.
Establezca el action
parámetro DoNotOverwrite en para descartar nuevos eventos cuando se alcanza el tamaño máximo del registro. Si el action
parámetro se establece DoNotOverwriteen , se omite el valor del retentionDays
parámetro.
Precaución
Establecer la directiva de desbordamiento en DoNotOverwrite especifica que las nuevas entradas se descartan cuando el registro de eventos está lleno. Si usa esta configuración, asegúrese de que el registro de eventos se archiva y borra periódicamente para evitar alcanzar su límite de tamaño máximo.