Поделиться через


EventLog.ModifyOverflowPolicy(OverflowAction, Int32) Метод

Определение

Изменяет поведение при внесении новых записей, когда файл журнала событий достигает максимального размера.

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)

Параметры

action
OverflowAction

Поведение при внесении новых записей в журнал событий в случае переполнения.

retentionDays
Int32

Минимальное количество дней, которое будет храниться каждая запись журнала событий. Этот параметр используется только в том случае, если значение action равно OverwriteOlder.

Атрибуты

Исключения

action не является допустимым значением OverflowAction.

Параметр retentionDays меньше 1 или больше 365.

Значение параметра Log является недопустимым именем журнала.

-или-

Раздел реестра для журнала событий не может быть открыт на конечном компьютере.

Примеры

В следующем примере отображается настроенная политика переполнения для указанного журнала событий и пользователь может выбрать новый параметр политики переполнения для журнала событий.

// 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

Комментарии

Поведение переполнения для журнала событий указывает, что происходит при записи новых записей в журнал, который достиг максимального размера файла.

Примечание

Поведение переполнения вступает в силу только в том случае, если журнал событий достигает максимального размера файла. Поведение переполнения не влияет на запись новой записи в журнал, которая может вместить дополнительные записи журнала событий.

Метод ModifyOverflowPolicy настраивает поведение переполнения журнала событий. EventLog Экземпляр. После вызова этого метода для журнала событий, указанного Log свойством , OverflowAction значения свойств и MinimumRetentionDays отражают только что настроенное поведение переполнения.

Примечание

Это свойство представляет параметр конфигурации для журнала событий, представленного данным экземпляром . Когда журнал событий достигает максимального размера, это свойство указывает, как операционная система обрабатывает новые записи, записанные всеми источниками событий, зарегистрированными для журнала событий.

action Задайте для параметра значение , OverwriteAsNeeded чтобы указать, что новая запись перезаписывает старую запись, когда EventLog достигает максимального размера. action Если параметр имеет значение OverwriteAsNeeded, retentionDays значение параметра игнорируется.

action Задайте для параметра значение , OverwriteOlder чтобы указать, что каждая новая запись перезаписывает старые записи, когда EventLog достигает максимального размера. Укажите количество дней, в течение которых события должны храниться в журнале с помощью retentionDays параметра . События, записанные в диапазоне хранения, не перезаписываются новыми записями.

action Задайте для параметра значение , DoNotOverwrite чтобы отменить новые события при достижении максимального размера журнала. action Если параметр имеет значение DoNotOverwrite, retentionDays значение параметра игнорируется.

Внимание!

Если задать для политики DoNotOverwrite переполнения значение , новые записи будут удалены при заполнении журнала событий. Если вы используете этот параметр, убедитесь, что журнал событий регулярно архивируется и очищается, чтобы избежать достижения максимального размера.

Применяется к

См. также раздел