EventLog.ModifyOverflowPolicy(OverflowAction, Int32) Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
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.