Remove-EventLog

Elimina un registro eventi o annulla la registrazione di un'origine evento.

Sintassi

Remove-EventLog
      [[-ComputerName] <String[]>]
      [-LogName] <String[]>
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Remove-EventLog
      [[-ComputerName] <String[]>]
      [-Source <String[]>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Descrizione

Il Remove-EventLogcmdlet elimina un file di log eventi da un computer locale o remoto e annulla la registrazione di tutte le relative origini eventi per il log. È possibile usare questo cmdlet anche per annullare la registrazione di origini eventi senza eliminare alcun registro eventi.

I cmdlet che contengono il sostantivo EventLog , i cmdlet EventLog , funzionano solo nei registri eventi classici. Per ottenere eventi dai log che usano la tecnologia Registro eventi di Windows in Windows Vista e versioni successive del sistema operativo Windows, usare Get-WinEvent.

Avviso

Questo cmdlet può eliminare i registri eventi del sistema operativo, che potrebbero causare errori dell'applicazione e comportamento imprevisto del sistema.

Esempio

Esempio 1: Rimuovere un registro eventi dal computer locale

Remove-EventLog -LogName "MyLog"

Questo comando elimina il registro eventi MyLog dal computer locale e annulla la registrazione delle origini eventi.

Esempio 2: Rimuovere un registro eventi da diversi computer

Remove-EventLog -LogName "MyLog", "TestLog" -ComputerName "Server01", "Server02", "localhost"

Questo comando elimina i registri eventi MyLog e TestLog dal computer locale e dai computer remoti Server01 e Server02. Il comando annulla inoltre la registrazione delle origini eventi per questi registri.

Esempio 3: Eliminare un'origine evento

Remove-EventLog -Source "MyApp"

Questo comando elimina l'origine evento MyApp dai registri nel computer locale. Al termine del comando, il programma MyApp non può scrivere in alcun registro eventi.

Esempio 4: Rimuovere un registro eventi e confermare l'azione

Questi comandi mostrano come elencare i registri eventi in un computer e verificare che un Remove-EventLogcomando abbia avuto esito positivo.

Get-EventLog -List

Max(K) Retain OverflowAction        Entries Log
------ ------ --------------        ------- ---
15,168      0 OverwriteAsNeeded      22,923 Application
15,168      0 OverwriteAsNeeded          53 DFS Replication
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

Remove-EventLog -LogName "ZapLog"
Get-EventLog -List

Max(K) Retain OverflowAction        Entries Log
------ ------ --------------        ------- ---
15,168      0 OverwriteAsNeeded      22,923 Application
15,168      0 OverwriteAsNeeded          53 DFS Replication
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

Il primo comando elenca i registri eventi nel computer locale.

Il secondo comando elimina il registro eventi ZapLog.

Il terzo comando elenca nuovamente i registri eventi. Il registro eventi ZapLog non compare più nell'elenco.

Esempio 5: Rimuovere un'origine evento e confermare l'azione

Get-WmiObject win32_nteventlogfile -Filter "logfilename='TestLog'" | foreach {$_.sources}

MyApp
TestApp

Remove-Eventlog -Source "MyApp"
Get-WmiObject win32_nteventlogfile -Filter "logfilename='TestLog'"} | foreach {$_.sources}

TestApp

Questi comandi usano il Get-WmiObject cmdlet per elencare le origini eventi nel computer locale. È possibile usare questi comandi per verificare se un comando è riuscito o per eliminare un'origine evento.

Il primo comando ottiene le origini eventi del registro eventi TestLog nel computer locale. MyApp è una delle origini.

Il secondo comando usa il parametro Source di Remove-EventLogper eliminare l'origine evento MyApp.

Il terzo comando è identico al primo. Mostra che l'origine evento MyApp è stata eliminata.

Parametri

-ComputerName

Specifica un computer remoto. Il valore predefinito è il computer locale.

Digitare il nome NetBIOS, un indirizzo IP o un nome di dominio completo di un computer remoto. Per specificare il computer locale, digitare il nome del computer, un punto (.) o localhost.

Questo parametro non si basa sulla comunicazione remota di Windows PowerShell. È possibile utilizzare il parametro ComputerName di Remove-EventLoganche se il computer non è configurato per eseguire comandi remoti.

Tipo:String[]
Alias:CN
Posizione:1
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Confirm

Richiede conferma prima di eseguire il cmdlet.

Tipo:SwitchParameter
Alias:cf
Posizione:Named
Valore predefinito:False
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-LogName

Specifica i registri eventi. Immettere il nome del log di uno o più registri eventi, separati da virgole. Il nome del log è il valore della proprietà Log , non dei caratteri LogDisplayName, i caratteri jolly non sono consentiti. Questo parametro è obbligatorio.

Tipo:String[]
Alias:LN
Posizione:0
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Source

Specifica le origini evento annullate dalla registrazione di questo cmdlet. Immettere i nomi di origine, non il nome eseguibile, separato da virgole.

Tipo:String[]
Alias:SRC
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-WhatIf

Mostra gli effetti dell'esecuzione del cmdlet. Il cmdlet non viene eseguito.

Tipo:SwitchParameter
Alias:wi
Posizione:Named
Valore predefinito:False
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

Input

None

Non è possibile inviare input tramite pipe a questo cmdlet.

Output

None

Questo cmdlet non restituisce alcun output.

Note

  • Per usare Remove-EventLogin Windows Vista e versioni successive del sistema operativo Windows, avviare Windows PowerShell usando l'opzione Esegui come amministratore.

    Se si rimuove un registro eventi e quindi lo si ricrea, non sarà possibile registrare le stesse origini eventi. Le applicazioni che usavano le origini eventi per scrivere voci nel registro originale non saranno in grado di scrivere nel nuovo registro.

  • Quando si annulla la registrazione di un'origine evento per un determinato registro, l'origine evento potrebbe non essere più in grado di scrivere voci in altri registri eventi.