EventLog.MinimumRetentionDays プロパティ
アセンブリ: System (system.dll 内)
構文イベント ログ内のエントリが保持される日数。既定値は、7 です。
解説MinimumRetentionDays プロパティを使用して、イベント ログの現在の設定を確認します。ModifyOverflowPolicy を使用して、イベント ログ内の各エントリが保持される最小日数を変更します。
MinimumRetentionDays 値は、イベント ログのオーバーフロー動作の構成によって異なります。イベント ログの OverflowAction プロパティが OverwriteAsNeeded に設定されている場合、MinimumRetentionDays 値は 0 になります。イベント ログの OverflowAction プロパティが DoNotOverwrite に設定されている場合、MinimumRetentionDays 値は -1 になります。イベント ログの OverflowAction プロパティが OverwriteOlder に設定されている場合、MinimumRetentionDays 値は 0 より大きい値になり、イベント ログがいっぱいになった場合にイベント ログのエントリを保持する日数を表します。
オーバーフロー動作は、イベント ログがサイズ制限に達した場合にだけ発生します。EventLog で OverflowAction が OverwriteOlder に設定され、イベント ログが最大サイズに達した場合、MinimumRetentionDays の期間を超えるエントリを置換できる場合にだけ、新しいエントリが書き込まれます。イベント ログを定期的にアーカイブする場合は、イベント エントリの保持期間を最小限に抑えます。そうしないと、イベント ログが制限に達した場合に、新しいエントリが失われる可能性があります。新しいイベント情報が失われないようにするには、特定のイベント ログのアーカイブ スケジュールに応じて、イベントの最小保持日数を設定します。
使用例ローカル コンピュータで定義されたイベント ログを列挙し、各イベント ログの構成情報を表示する例を次に示します。
Shared Sub DisplayEventLogProperties() ' Iterate through the current set of event log files, ' displaying the property settings for each file. Dim eventLogs As EventLog() = EventLog.GetEventLogs() Dim e As EventLog For Each e In eventLogs Dim sizeKB As Int64 = 0 Console.WriteLine() Console.WriteLine("{0}:", e.LogDisplayName) Console.WriteLine(" Log name = " + ControlChars.Tab _ + ControlChars.Tab + " {0}", e.Log) Console.WriteLine(" Number of event log entries = {0}", e.Entries.Count.ToString()) ' Determine if there is an event log file for this event log. Dim regEventLog As RegistryKey regEventLog = Registry.LocalMachine.OpenSubKey( _ ("System\CurrentControlSet\Services\EventLog\" + e.Log)) If Not (regEventLog Is Nothing) Then Dim temp As Object = regEventLog.GetValue("File") If Not (temp Is Nothing) Then Console.WriteLine(" Log file path = " + ControlChars.Tab _ + " {0}", temp.ToString()) Dim file As New FileInfo(temp.ToString()) ' Get the current size of the event log file. If file.Exists Then sizeKB = file.Length / 1024 If file.Length Mod 1024 <> 0 Then sizeKB += 1 End If Console.WriteLine(" Current size = " + ControlChars.Tab _ + " {0} kilobytes", sizeKB.ToString()) End If Else Console.WriteLine(" Log file path = " + ControlChars.Tab _ + " <not set>") End If End If ' Display the maximum size and overflow settings. sizeKB = e.MaximumKilobytes Console.WriteLine(" Maximum size = " + ControlChars.Tab _ + " {0} kilobytes", sizeKB.ToString()) Console.WriteLine(" Overflow setting = " + ControlChars.Tab _ + " {0}", e.OverflowAction.ToString()) Select Case e.OverflowAction Case OverflowAction.OverwriteOlder Console.WriteLine(ControlChars.Tab + _ " Entries are retained a minimum of {0} days.", _ e.MinimumRetentionDays) Case OverflowAction.DoNotOverwrite Console.WriteLine(ControlChars.Tab + _ " Older entries are not overwritten.") Case OverflowAction.OverwriteAsNeeded Console.WriteLine(ControlChars.Tab + _ " If number of entries equals max size limit, a new event log entry overwrites the oldest entry.") Case Else End Select Next e End Sub
static void DisplayEventLogProperties() { // Iterate through the current set of event log files, // displaying the property settings for each file. EventLog[] eventLogs = EventLog.GetEventLogs(); foreach (EventLog e in eventLogs) { Int64 sizeKB = 0; Console.WriteLine(); Console.WriteLine("{0}:", e.LogDisplayName); Console.WriteLine(" Log name = \t\t {0}", e.Log); Console.WriteLine(" Number of event log entries = {0}", e.Entries.Count.ToString()); // Determine if there is an event log file for this event log. RegistryKey regEventLog = Registry.LocalMachine.OpenSubKey("System\\CurrentControlSet\\Services\\EventLog\\" + e.Log); if (regEventLog != null) { Object temp = regEventLog.GetValue("File"); if (temp != null) { Console.WriteLine(" Log file path = \t {0}", temp.ToString()); FileInfo file = new FileInfo(temp.ToString()); // Get the current size of the event log file. if (file.Exists) { sizeKB = file.Length / 1024; if ((file.Length % 1024) != 0) { sizeKB++; } Console.WriteLine(" Current size = \t {0} kilobytes" , sizeKB.ToString()); } } else { Console.WriteLine(" Log file path = \t <not set>"); } } // Display the maximum size and overflow settings. sizeKB = e.MaximumKilobytes; Console.WriteLine(" Maximum size = \t {0} kilobytes", sizeKB.ToString()); Console.WriteLine(" Overflow setting = \t {0}", e.OverflowAction.ToString()); switch (e.OverflowAction) { case OverflowAction.OverwriteOlder: Console.WriteLine("\t Entries are retained a minimum of {0} days.", e.MinimumRetentionDays); break; case OverflowAction.DoNotOverwrite: Console.WriteLine("\t Older entries are not overwritten."); break; case OverflowAction.OverwriteAsNeeded: Console.WriteLine("\t If number of entries equals max size limit, a new event log entry overwrites the oldest entry."); break; default: break; } } }
static void DisplayEventLogProperties() { // Iterate through the current set of event log files, // displaying the property settings for each file. EventLog eventLogs[] = EventLog.GetEventLogs(); EventLog e; for ( int iCtr = 0; iCtr < eventLogs.length; iCtr++ ) { e = eventLogs[iCtr]; long sizeKB = 0; Console.WriteLine(); Console.WriteLine("{0}:", e.get_LogDisplayName()); Console.WriteLine(" Log name = \t\t {0}", e.get_Log()); Console.WriteLine(" Number of event log entries = {0}", ((Int32)e.get_Entries().get_Count()).ToString()); // Determine if there is an event log file for this event log. RegistryKey regEventLog = Registry.LocalMachine. OpenSubKey("System\\CurrentControlSet\\Services\\EventLog\\" + e.get_Log()); if (regEventLog != null) { Object temp = regEventLog.GetValue("File"); if (temp != null) { Console.WriteLine(" Log file path = \t {0}", temp.ToString()); FileInfo file = new FileInfo(temp.ToString()); // Get the current size of the event log file. if (file.get_Exists()) { sizeKB = file.get_Length() / 1024; if (file.get_Length() % 1024 != 0) { sizeKB++; } Console.WriteLine(" Current size = \t {0} kilobytes" , ((Int64)sizeKB).ToString()); } } else { Console.WriteLine(" Log file path = \t <not set>"); } } // Display the maximum size and overflow settings. sizeKB = e.get_MaximumKilobytes(); Console.WriteLine(" Maximum size = \t {0} kilobytes", ((Int64)sizeKB).ToString()); Console.WriteLine(" Overflow setting = \t {0}", e.get_OverflowAction().ToString()); switch (e.get_OverflowAction()) { case OverflowAction.OverwriteOlder : Console.WriteLine("\t Entries are retained a minimum of " + "{0} days.", (Int32)e.get_MinimumRetentionDays()); break; case OverflowAction.DoNotOverwrite : Console.WriteLine("\t Older entries are not overwritten."); break; case OverflowAction.OverwriteAsNeeded : Console.WriteLine("\t If number of entries equals max " + "size limit, a new event log entry overwrites " + "the oldest entry."); break; default : break; } } } //DisplayEventLogProperties
.NET Framework のセキュリティ
プラットフォームWindows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。
バージョン情報
参照Weblioに収録されているすべての辞書からEventLog.MinimumRetentionDays プロパティを検索する場合は、下記のリンクをクリックしてください。
全ての辞書からEventLog.MinimumRetentionDays プロパティ
を検索
- EventLog.MinimumRetentionDays プロパティのページへのリンク