EventLog.ModifyOverflowPolicy(OverflowAction, Int32) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
イベント ログが最大ファイル サイズに達した場合に、新しいエントリを書き込むように構成された動作を変更します。
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 を超えています。
例
次の例では、指定したイベント ログに対して構成されたオーバーフロー ポリシーを表示し、ユーザーがイベント ログの新しいオーバーフロー ポリシー設定を選択できるようにします。
// 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呼び出した後、 および MinimumRetentionDays プロパティの値には、OverflowAction新しく構成されたオーバーフロー動作が反映されます。
注意
このプロパティは、このインスタンスによって表されるイベント ログの構成設定を表します。 イベント ログが最大サイズに達すると、このプロパティは、オペレーティング システムがイベント ログに登録されているすべてのイベント ソースによって書き込まれた新しいエントリを処理する方法を指定します。
パラメーターを action
に OverwriteAsNeeded 設定して、 が最大サイズに達したときに、新しいエントリが EventLog 最も古いエントリを上書きすることを示します。 パラメーターが action
に OverwriteAsNeeded設定されている場合、パラメーター値 retentionDays
は無視されます。
パラメーターを action
に OverwriteOlder 設定して、 が最大サイズに達したときに新しい各エントリが EventLog 古いエントリを上書きすることを示します。 パラメーターを使用して、ログにイベントを保持する必要がある日数を retentionDays
指定します。 保持範囲内で書き込まれたイベントは、新しいエントリによって上書きされません。
ログの action
最大サイズに達したときに新しいイベントを破棄するには、 パラメーターを に DoNotOverwrite 設定します。 パラメーターが action
に DoNotOverwrite設定されている場合、パラメーター値 retentionDays
は無視されます。
注意事項
オーバーフロー ポリシーを に DoNotOverwrite 設定すると、イベント ログがいっぱいになると新しいエントリが破棄されます。 この設定を使用する場合は、イベント ログが定期的にアーカイブされ、クリアされていることを確認して、最大サイズ制限に達しないようにします。
適用対象
こちらもご覧ください
.NET