다음을 통해 공유


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

각 이벤트 로그 엔트리가 유지되는 최소 날짜 수입니다. 이 매개 변수는 actionOverwriteOlder로 설정되어 있는 경우에만 사용됩니다.

특성

예외

action는 유효한 OverflowAction 값이 아닙니다.

retentionDays가 0보다 작거나 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 이벤트 로그의 오버플로 동작을 구성합니다. EventLoginstance. 속성 OverflowAction 에 지정된 이벤트 로그에 대해 이 메서드를 Log 호출한 후 및 MinimumRetentionDays 속성 값은 새로 구성된 오버플로 동작을 반영합니다.

참고

이 속성은 이 instance 나타내는 이벤트 로그에 대한 구성 설정을 나타냅니다. 이벤트 로그가 최대 크기에 도달하면 이 속성은 운영 체제가 이벤트 로그에 등록된 모든 이벤트 원본에서 작성한 새 항목을 처리하는 방법을 지정합니다.

매개 변수를 actionOverwriteAsNeeded 설정하여 가 최대 크기에 도달하면 새 항목이 가장 오래된 항목을 EventLog 덮어씁니다. 매개 변수가 로 actionOverwriteAsNeededretentionDays 설정된 경우 매개 변수 값은 무시됩니다.

매개 변수를 actionOverwriteOlder 설정하여 가 최대 크기에 도달하면 각 새 항목이 이전 항목을 EventLog 덮어씁니다. 매개 변수를 사용하여 retentionDays 이벤트를 로그에 보존해야 하는 일 수를 지정합니다. 보존 범위 내에서 작성된 이벤트는 새 항목으로 덮어쓰지 않습니다.

action 최대 로그 크기에 도달하면 새 이벤트를 삭제하려면 매개 변수 DoNotOverwrite 를 로 설정합니다. 매개 변수가 로 actionDoNotOverwriteretentionDays 설정된 경우 매개 변수 값은 무시됩니다.

주의

오버플로 정책을 로 설정하면 DoNotOverwrite 이벤트 로그가 가득 차면 새 항목이 삭제됩니다. 이 설정을 사용하는 경우 이벤트 로그가 정기적으로 보관되고 지워지도록 하여 최대 크기 제한에 도달하지 않도록 합니다.

적용 대상

추가 정보