Freigeben über


Limit-EventLog

Legt die Ereignisprotokolleigenschaften fest, die die Größe des Ereignisprotokolls und das Alter seiner Einträge einschränken.

Syntax

Limit-EventLog
     [-LogName] <String[]>
     [-ComputerName <String[]>]
     [-RetentionDays <Int32>]
     [-OverflowAction <OverflowAction>]
     [-MaximumSize <Int64>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]

Beschreibung

Das Limit-EventLog Cmdlet legt die maximale Größe eines klassischen Ereignisprotokolls fest, wie lange jedes Ereignis beibehalten werden muss und was geschieht, wenn das Protokoll seine maximale Größe erreicht. Sie können hiermit die Ereignisprotokolle auf lokalen Computern oder Remotecomputern einschränken.

Die Cmdlets, die das Substantiv %%amp;quot;EventLog%%amp;quot; enthalten (die EventLog-Cmdlets), können nur für klassische Ereignisprotokolle verwendet werden. Um Ereignisse aus Protokollen abzurufen, die die Windows-Ereignisprotokolltechnologie in Windows Vista und höheren Versionen von Windows verwenden, verwenden Sie Get-WinEvent.

Beispiele

Beispiel 1: Vergrößern der Größe eines Ereignisprotokolls

Limit-EventLog -LogName "Windows PowerShell" -MaximumSize 20KB

Dieser Befehl erhöht die maximale Größe des Windows PowerShell-Ereignisprotokolls auf dem lokalen Computer auf 20480 Byte (20 KB).

Beispiel 2: Aufbewahren eines Ereignisprotokolls für eine angegebene Dauer

Limit-EventLog -LogName Security -ComputerName "Server01", "Server02" -RetentionDays 7

Dieser Befehl stellt sicher, dass Ereignisse im Sicherheitsprotokoll auf den Computern %%amp;quot;Server01%%amp;quot; und %%amp;quot;Server02%%amp;quot; mindestens 7 Tage lang beibehalten werden.

Beispiel 3: Ändern der Überlaufaktion aller Ereignisprotokolle

$Logs = Get-EventLog -List | ForEach {$_.log}
Limit-EventLog -OverflowAction OverwriteOlder -LogName $Logs
Get-EventLog -List

Max(K) Retain OverflowAction     Entries  Log
------ ------ --------------     -------  ---
15,168      0 OverwriteOlder       3,412  Application
512         0 OverwriteOlder           0  DFS Replication
512         0 OverwriteOlder          17  DxStudio
10,240      7 OverwriteOlder           0  HardwareEvents
512         0 OverwriteOlder           0  Internet Explorer
512         0 OverwriteOlder           0  Key Management Service
16,384      0 OverwriteOlder           4  ODiag
16,384      0 OverwriteOlder         389  OSession Security
15,168      0 OverwriteOlder      19,360  System
15,360      0 OverwriteOlder      15,828  Windows PowerShell

In diesem Beispiel wird die Überlaufaktion aller Ereignisprotokolle auf dem lokalen Computer in OverwriteOlder geändert.

Der erste Befehl ruft die Protokollnamen aller Protokolle auf dem lokalen Computer ab. Der zweite Befehl legt die Überlaufaktion fest. Der dritte Befehl zeigt die Ergebnisse an.

Parameter

-ComputerName

Gibt Remotecomputer an. Die Standardeinstellung ist der lokale Computer.

Geben Sie den NetBIOS-Namen, eine IP-Adresse (Internet Protocol) oder einen vollqualifizierten Domänennamen (Fully Qualified Domain Name, FQDN) eines Remotecomputers ein. Um den lokalen Computer anzugeben, geben Sie den Computernamen, einen Punkt (.) oder localhost ein.

Dieser Parameter beruht nicht auf Windows PowerShell-Remoting. Sie können den Parameter Limit-EventLog "ComputerName" auch dann verwenden, wenn Ihr Computer nicht für die Ausführung von Remotebefehlen konfiguriert ist.

Typ:String[]
Aliase:CN
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Confirm

Hiermit werden Sie vor der Ausführung des Cmdlets zur Bestätigung aufgefordert.

Typ:SwitchParameter
Aliase:cf
Position:Named
Standardwert:False
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-LogName

Gibt die Ereignisprotokolle an. Geben Sie den Protokollnamen (den Wert der Log-Eigenschaft, nicht %%amp;quot;LogDisplayName%%amp;quot;) von Ereignisprotokollen durch Kommas getrennt ein. Platzhalterzeichen sind nicht zulässig. Dieser Parameter ist erforderlich.

Typ:String[]
Aliase:LN
Position:0
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-MaximumSize

Gibt die maximale Größe der Ereignisprotokolle in Bytes an. Geben Sie einen Wert zwischen 64 KB (Kilobytes) und 4 GB (Gigabytes) ein. Der Wert muss durch 64 KB (65536) teilbar sein.

Dieser Parameter gibt den Wert der MaximumKilobytes-Eigenschaft des System.Diagnostics.EventLog -Objekts an, das ein klassisches Ereignisprotokoll darstellt.

Typ:Int64
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-OverflowAction

Gibt an, was geschieht, wenn das Ereignisprotokoll die maximale Größe erreicht.

Zulässige Werte für diesen Parameter:

  • DoNotOverwrite: Vorhandene Einträge werden beibehalten, und neue Einträge werden verworfen.
  • OverwriteAsNeeded: Jeder neue Eintrag überschreibt den ältesten Eintrag.
  • OverwriteOlder: Neue Ereignisse überschreiben Ereignisse, die älter als der durch die MinimumRetentionDays-Eigenschaft angegebene Wert sind. Wenn es keine Ereignisse gibt, die älter als der Wert der MinimumRetentionDays-Eigenschaft sind, werden neue Ereignisse verworfen.

Dieser Parameter gibt den Wert der OverflowAction-Eigenschaft des System.Diagnostics.EventLog -Objekts an, das ein klassisches Ereignisprotokoll darstellt.

Typ:OverflowAction
Aliase:OFA
Zulässige Werte:OverwriteOlder, OverwriteAsNeeded, DoNotOverwrite
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-RetentionDays

Gibt die Mindestanzahl von Tagen an, die ein Ereignis im Ereignisprotokoll bleiben muss.

Dieser Parameter gibt den Wert der MinimumRetentionDays-Eigenschaft des System.Diagnostics.EventLog -Objekts an, das ein klassisches Ereignisprotokoll darstellt.

Typ:Int32
Aliase:MRD
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-WhatIf

Zeigt, was geschieht, wenn das Cmdlet ausgeführt wird. Das Cmdlet wird nicht ausgeführt.

Typ:SwitchParameter
Aliase:wi
Position:Named
Standardwert:False
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

Eingaben

None

Eingaben können nicht an dieses Cmdlet weitergereicht werden.

Ausgaben

None

Dieses Cmdlet generiert keine Ausgabe.

Hinweise

  • Um dieses Cmdlet unter Windows Vista und höheren Versionen von Windows zu verwenden, öffnen Sie Windows PowerShell mit der Option "Als Administrator ausführen".

    Dieses Cmdlet ändert die Eigenschaften des System.Diagnostics.EventLog-Objekts , das ein klassisches Ereignisprotokoll darstellt. Um die aktuellen Einstellungen der Ereignisprotokolleigenschaften anzuzeigen, geben Sie folgendes ein Get-EventLog -List.