Löscht ein Ereignisprotokoll oder hebt die Registrierung einer Ereignisquelle auf.

Syntax

Remove-EventLog [-LogName] <string[]> [[-ComputerName] <string[]>] [-Bestätigung] [-WhatIf] [<CommonParameters>]

Remove-EventLog [[-ComputerName] <string[]>] [-Source <string[]>] [-Bestätigung] [-WhatIf] [<CommonParameters>]

Beschreibung

Das Cmdlet "Remove-EventLog" löscht eine Ereignisprotokolldatei von einem lokalen oder einem Remotecomputer und hebt die Registrierung aller Ereignisquellen für das Protokoll auf. Sie können mit diesem Cmdlet auch die Registrierung der Ereignisquellen aufheben, ohne Ereignisprotokolle zu löschen.

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

Parameter

-ComputerName <string[]>

Gibt einen Remotecomputer an. Der Standardwert ist der lokale Computer.

Geben Sie den NetBIOS-Namen, eine IP-Adresse oder den vollqualifizierten Domänennamen 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 ComputerName-Parameter von Remove-EventLog auch dann verwenden, wenn der Computer nicht für das Ausführen von Remotebefehlen konfiguriert ist.

Erforderlich?

false

Position?

2

Standardwert

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-LogName <string[]>

Gibt die Ereignisprotokolle an. Geben Sie den Protokollnamen (den Wert der Log-Eigenschaft, nicht den "LogDisplayName") von einem oder mehreren Ereignisprotokollen durch Trennzeichen getrennt ein. Platzhalterzeichen sind nicht zulässig. Dieser Parameter ist erforderlich.

Erforderlich?

true

Position?

1

Standardwert

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-Source <string[]>

Hebt die Registrierung der angegebenen Ereignisquellen auf. Geben Sie die Quellennamen (nicht den Namen der ausführbaren Datei) durch Trennzeichen getrennt ein.

Erforderlich?

false

Position?

named

Standardwert

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-Bestätigung

Fordert Sie vor der Ausführung des Befehls zur Bestätigung auf.

Erforderlich?

false

Position?

named

Standardwert

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-WhatIf

Beschreibt die Auswirkungen einer Ausführung des Befehls, ohne den Befehl tatsächlich auszuführen.

Erforderlich?

false

Position?

named

Standardwert

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

<CommonParameters>

Dieses Cmdlet unterstützt die folgenden allgemeinen Parameter: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer und -OutVariable. Weitere Informationen finden Sie unter about_Commonparameters.

Eingaben und Ausgaben

Der Eingabetyp ist der Typ der Objekte, die über die Pipeline an das Cmdlet übergeben werden können. Der Rückgabetyp ist der Typ der Objekte, die das Cmdlet zurückgibt.

Eingaben

None

Eingaben können nicht über die Pipeline an dieses Cmdlet übergeben werden.

Ausgaben

None

Dieses Cmdlet gibt keine Ausgabe zurück.

Hinweise

Wenn Sie Remove-EventLog unter Windows Vista und höheren Versionen von Windows verwenden möchten, starten Sie Windows PowerShell mit der Option "Als Administrator ausführen".

Wenn Sie ein Ereignisprotokoll entfernen und das Protokoll dann neu erstellen, können Sie nicht die gleichen Ereignisquellen registrieren. Anwendungen, die die Ereignisquellen zum Schreiben von Einträgen im ursprünglichen Protokoll verwendet haben, können nicht in das neue Protokoll schreiben.

Wenn Sie die Registrierung einer Ereignisquelle für ein bestimmtes Protokoll aufheben, kann die Ereignisquelle möglicherweise keine Einträge mehr in andere Ereignisprotokolle schreiben.

Beispiel 1

C:\PS>remove-eventlog -logname MyLog

Beschreibung
-----------
Dieser Befehl löscht das Ereignisprotokoll "MyLog" vom lokalen Computer und hebt die Registrierung seiner Ereignisquellen auf.






Beispiel 2

C:\PS>remove-eventlog -logname MyLog, TestLog -computername Server01, Server02, localhost

Beschreibung
-----------
Dieser Befehl löscht die Ereignisprotokolle "MyLog" und "TestLog" vom lokalen Computer ("localhost") und von den Remotecomputern "Server01" und "Server02". Der Befehl hebt auch die Registrierung der Ereignisquellen für diese Protokolle auf.






Beispiel 3

C:\PS>remove-eventlog -source MyApp

Beschreibung
-----------
Dieser Befehl löscht die Ereignisquelle "MyApp" aus den Protokollen auf dem lokalen Computer. Nach Abschluss des Befehls kann das Programm "MyApp" in kein Ereignisprotokoll schreiben.






Beispiel 4

C:\PS>get-eventlog -list

  Max(K) Retain OverflowAction        Entries Log
  ------ ------ --------------        ------- ---
  15,168      0 OverwriteAsNeeded      22,923 Application
  15,168      0 OverwriteAsNeeded          53 DFS Replication
     512      7 OverwriteOlder              0 Directory Service
  15,168      7 OverwriteOlder              0 Hardware Events
     512      7 OverwriteOlder              0 Internet Explorer
  20,480      0 OverwriteAsNeeded           0 Key Management Service
  30,016      0 OverwriteAsNeeded      50,060 Security
  15,168      0 OverwriteAsNeeded      27,592 System
  15,360      0 OverwriteAsNeeded      18,355 Windows PowerShell
  15,168      7 OverwriteAsNeeded          12 ZapLog

C:\PS> remove-eventlog -logname ZapLog

C:\PS> get-eventlog -list

  Max(K) Retain OverflowAction        Entries Log
  ------ ------ --------------        ------- ---
  15,168      0 OverwriteAsNeeded      22,923 Application
  15,168      0 OverwriteAsNeeded          53 DFS Replication
     512      7 OverwriteOlder              0 Directory Service
  15,168      7 OverwriteOlder              0 Hardware Events
     512      7 OverwriteOlder              0 Internet Explorer
  20,480      0 OverwriteAsNeeded           0 Key Management Service
  30,016      0 OverwriteAsNeeded      50,060 Security
  15,168      0 OverwriteAsNeeded      27,592 System
  15,360      0 OverwriteAsNeeded      18,355 Windows PowerShell

Beschreibung
-----------
Diese Befehle veranschaulichen, wie die Ereignisprotokolle auf einem Computer aufgeführt werden und wie überprüft wird, dass der Befehl "Remove-EventLog" erfolgreich war.

Mit dem ersten Befehl werden die Ereignisprotokolle auf dem lokalen Computer aufgelistet.

Der zweite Befehl löscht das Ereignisprotokoll "ZapLog".

Mit dem dritten Befehl werden die Ereignisprotokolle erneut aufgeführt. Das Ereignisprotokoll "ZapLog" wird nicht mehr in der Liste angezeigt.






Beispiel 5

C:\PS>get-wmiobject win32_nteventlogfile -filter "logfilename='TestLog'" | foreach {$_.sources}

MyApp
TestApp

C:\PS> remove-eventlog -source MyApp

C:\PS> get-wmiobject win32_nteventlogfile -filter "logfilename='TestLog'} | foreach {$_.sources}
TestApp

Beschreibung
-----------
In diesen Befehlen werden mit dem Cmdlet "Get-WmiObject" die Ereignisquellen auf dem lokalen Computer aufgelistet. Sie können mit diesen Befehlen die erfolgreiche Ausführung eines Befehls überprüfen oder eine Ereignisquelle löschen.

Der erste Befehl ruft die Ereignisquellen des Ereignisprotokolls "TestLog" auf dem lokalen Computer ab. Eine der Quellen ist "MyApp".

Der zweite Befehl löscht mithilfe des Source-Parameters von Remove-EventLog die Ereignisquelle "MyApp".

Der dritte Befehl ist mit dem ersten Befehl identisch. Er zeigt, dass die Ereignisquelle "MyApp" gelöscht wurde.






Siehe auch




Inhaltsverzeichnis