Il visualizzatore eventi di Windows contiene tutto quello succede, ed è successo, nel nostro computer. Installazione di programmi e aggiornamenti di Windows, arresti improvvisi del computer, errori dei programmi o del sistema operativo, tutto questo, e molto altro, viene registrato nel visualizzatore eventi. E se volessimo che l'esecuzione dei nostri script PowerShell lasci una traccia nel visualizzatore eventi? Nessun problema, basta aggiungere qualche riga di codice allo script.

Bisogna però tenere conto che le categorie dei Registri di Windows, devono essere indicate in inglese, quindi Application-Applicazione, Setup-Installazione e System-Sistema. Solo nella scheda Security-Sicurezza non è possibile scrivere eventi.

Eventcreate
Il seguente comando, Eventcreate, crea nel registro di Windows "Sistema" un Evento di livello "Informazioni", con Origine "PuliziaPC" e un log informativo "Pulizia Eseguita".
L'ID può essere cambiato, magari uno diverso per ogni tipo di script che eseguiamo, anche l'Origine può essere diversa, così se dobbiamo fare un filtro per una visualizzazione personalizzata degli eventi abbiamo varie origini da scegliere.
eventcreate /ID 7 /L System /T Information /SO PuliziaPc /D "Pulizia Eseguita"
Anche il Livello dell'evento va indicato in inglese, quindi Warning, Error o Information sono i principali.
eventcreate /ID 190 /L application /T Warning /SO NuovaSorgente /D "Il mio primo test"eventcreate /ID 999 /L System /T Error /SO TurboLab /D "Prova Articolo"
New-EventLog
Il cmdlet New-EventLog è similare al comando Eventcreate, il seguente script va a creare un Source di nome "Topolino", nella sezione Application con livello Information e EventID 15.
New-EventLog -LogName Application -Source "Topolino" && Write-EventLog -LogName Application -Source "Topolino" -EntryType Information -EventID 15 -Message "TurboLab test funzionamento script PowerShell"
Il precedente script va usato solo la prima volta per creare il nuovo Source Topolino, se lo riutilizzassimo per aggiungere un nuovo evento genererebbe un errore.
Per aggiungere solo l'evento lo script diventa così:Write-EventLog -LogName Application -Source "Topolino" -EntryType Information -EventID 15 -Message "TurboLab test 2 funzionamento script PowerShell"

Estrazione eventi
E' possibile creare una nuova visione personalizzata per estrarre gli eventi con origine "Topolino"

Il risultato sarà qualcosa di simile a questo.
