EventLog.ModifyOverflowPolicy(OverflowAction, Int32) Yöntem

Tanım

Olay günlüğü dosya boyutu üst sınırına ulaştığında yeni girdiler yazmak için yapılandırılan davranışı değiştirir.

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)

Parametreler

action
OverflowAction

Olay günlüğüne yeni girdiler yazmak için taşma davranışı.

retentionDays
Int32

Her olay günlüğü girdisinin tutularak en az gün sayısı. Bu parametre yalnızca action olarak OverwriteOlderayarlandığında kullanılır.

Öznitelikler

Özel durumlar

action geçerli OverflowAction bir değer değil.

retentionDays birden az veya 365'ten büyük.

Değer Log geçerli bir günlük adı değil.

-veya-

Olay günlüğünün kayıt defteri anahtarı hedef bilgisayarda açılamadı.

Örnekler

Aşağıdaki örnek, belirtilen olay günlüğü için yapılandırılmış taşma ilkesini görüntüler ve kullanıcının olay günlüğü için yeni bir taşma ilkesi ayarı seçmesine olanak tanır.

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

Açıklamalar

Bir olay günlüğü için taşma davranışı, en büyük dosya boyutuna ulaşmış bir günlüğe yeni girdiler yazıldığında ne olacağını belirtir.

Not

Taşma davranışı yalnızca bir olay günlüğü dosya boyutu üst sınırına ulaştığında etkinleşir. Taşma davranışı, ek olay günlüğü girişlerini barındırabilecek bir günlüğe yeni giriş yazmayı etkilemez.

yöntemi, ModifyOverflowPolicy bir olay günlüğünün taşma davranışını yapılandırıyor. EventLog Örnek. özelliği OverflowAction tarafından Log belirtilen olay günlüğü için bu yöntemi çağırdıktan sonra ve MinimumRetentionDays özellik değerleri yeni yapılandırılan taşma davranışını yansıtır.

Not

Bu özellik, bu örnek tarafından temsil edilen olay günlüğü için bir yapılandırma ayarını temsil eder. Olay günlüğü boyut üst sınırına ulaştığında, bu özellik işletim sisteminin olay günlüğü için kaydedilen tüm olay kaynakları tarafından yazılan yeni girişleri nasıl işlediğini belirtir.

yeni bir girdinin action en büyük boyutuna ulaştığında EventLog en eski girişin üzerine yazdığını belirtmek için parametresini OverwriteAsNeeded olarak ayarlayın. action parametresi olarak ayarlanırsaOverwriteAsNeededretentionDays, parametre değeri yoksayılır.

parametresini action , OverwriteOlder her yeni girdinin en büyük boyutuna ulaştığında eski girdilerin EventLog üzerine yazdığını belirtmek için olarak ayarlayın. parametresini kullanarak retentionDays olayların günlükte tutulacağı gün sayısını belirtin. Bekletme aralığı içinde yazılan olayların üzerine yeni girdiler yazılmaz.

action Günlük boyutu üst sınırına ulaşıldığında yeni olayları atmak için parametresini DoNotOverwrite olarak ayarlayın. action parametresi olarak ayarlanırsaDoNotOverwriteretentionDays, parametre değeri yoksayılır.

Dikkat

Taşma ilkesinin DoNotOverwrite olarak ayarlanması, olay günlüğü dolduğunda yeni girişlerin atıldığını belirtir. Bu ayarı kullanırsanız, boyut üst sınırına ulaşmamak için olay günlüğünün düzenli olarak arşivlendiğinden ve temizlendiğinden emin olun.

Şunlara uygulanır

Ayrıca bkz.