Bagikan melalui


EventLog.ModifyOverflowPolicy(OverflowAction, Int32) Metode

Definisi

Mengubah perilaku yang dikonfigurasi untuk menulis entri baru saat log peristiwa mencapai ukuran file maksimumnya.

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)

Parameter

action
OverflowAction

Perilaku luapan untuk menulis entri baru ke log peristiwa.

retentionDays
Int32

Jumlah hari minimum setiap entri log peristiwa dipertahankan. Parameter ini hanya digunakan jika action diatur ke OverwriteOlder.

Atribut

Pengecualian

action bukan nilai yang valid OverflowAction .

retentionDays kurang dari satu, atau lebih besar dari 365.

Nilai Log bukan nama log yang valid.

-atau-

Kunci registri untuk log kejadian tidak dapat dibuka pada komputer target.

Contoh

Contoh berikut menampilkan kebijakan luapan yang dikonfigurasi untuk log peristiwa tertentu, dan memungkinkan pengguna untuk memilih pengaturan kebijakan luapan baru untuk log peristiwa.

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

Keterangan

Perilaku luapan untuk log peristiwa menentukan apa yang terjadi ketika entri baru akan ditulis ke log yang telah mencapai ukuran file maksimumnya.

Catatan

Perilaku luapan hanya berlaku ketika log peristiwa mencapai ukuran file maksimumnya. Perilaku luapan tidak memengaruhi penulisan entri baru ke log yang dapat mengakomodasi entri log peristiwa tambahan.

Metode mengonfigurasi ModifyOverflowPolicy perilaku luapan log peristiwa. EventLog Sebagai contoh. Setelah memanggil metode ini untuk log peristiwa yang ditentukan oleh Log properti, OverflowAction nilai properti dan MinimumRetentionDays mencerminkan perilaku luapan yang baru dikonfigurasi.

Catatan

Properti ini mewakili pengaturan konfigurasi untuk log peristiwa yang diwakili oleh instans ini. Ketika log peristiwa mencapai ukuran maksimumnya, properti ini menentukan bagaimana sistem operasi menangani entri baru yang ditulis oleh semua sumber peristiwa yang terdaftar untuk log peristiwa.

Atur action parameter ke OverwriteAsNeeded untuk menunjukkan bahwa entri baru menimpa entri terlama saat EventLog mencapai ukuran maksimumnya. action Jika parameter diatur ke OverwriteAsNeeded, retentionDays nilai parameter diabaikan.

Atur action parameter ke OverwriteOlder untuk menunjukkan bahwa setiap entri baru menimpa entri yang lebih lama ketika EventLog mencapai ukuran maksimumnya. Tentukan jumlah hari peristiwa harus dipertahankan dalam log menggunakan retentionDays parameter . Peristiwa yang ditulis dalam rentang retensi tidak ditimpa oleh entri baru.

Atur action parameter ke DoNotOverwrite untuk membuang peristiwa baru saat ukuran log maksimum tercapai. action Jika parameter diatur ke DoNotOverwrite, retentionDays nilai parameter diabaikan.

Perhatian

Mengatur kebijakan luapan untuk DoNotOverwrite menentukan bahwa entri baru dibuang ketika log peristiwa penuh. Jika Anda menggunakan pengaturan ini, pastikan log peristiwa diarsipkan dan dibersihkan secara teratur untuk menghindari mencapai batas ukuran maksimumnya.

Berlaku untuk

Lihat juga