sobota, 10 stycznia 2015

PowerShell cz.3 - Praca z dziennikami zdarzeń systemowych

Przy pomocy PS możemy również w dość łatwy sposób tworzyć raporty dotyczące dzienników zdarzeń dla naszej maszyny.

1.Get-EventLog

Podstawowym narzędziem pozwalającym się na otrzymanie dostępu do rejestrów zdarzeń systemowych jest wywołanie polecenia Get-EventLog. Poniżej skrypty będą w miarę czasu rozbudowywane o dodatkowe przełączniki itd.

2.Skrypty

#Pobranie wszystkich dostępnych dzienników zdarzeń systemowych

Get-EventLog -List





#-----------------------------------------------------------------------------------------------------------------
# Pobierzemy wpisy zarejestrowanych zdarzeń z konkretnego dziennika, np. system

Get-EventLog System



#-----------------------------------------------------------------------------------------------------------------
# Dane zapisane w dziennikach możemy wyeksportować do pliku tekstowego lub też xml

Get-EventLog System > c:\scripts\SystemLog.txt

Po kilku dłuższych minutach mamy plik, który waży 17MB:) ze wszystkimi zdarzeniami dla dziennika system.



Get-EventLog System | Export-Clixml -Path c:\scripts\SystemLogXML.xml -Depth 2

Następnie uruchamiamy Exel->Dane->Z innych źródeł->XML. Musimy poczekać aż wszystkie dane zostaną zaimportowane, może to trwać bardzo długo w zależności od ich ilości.



#-----------------------------------------------------------------------------------------------------------------
# W pewnych przypadkach potrzebujemy sprawdzić jedynie kilka lub kilkanaście ostatnich wpisów #w dzienniku, w tym celu wystarczy uruchomić poniższy skrypt

$strEventLog="application"
$intHowMany=10
Get-EvenLog -LogName $strEventLog -newest $intHowMany



#-----------------------------------------------------------------------------------------------------------------
#Możemy również pobrać konkretny wpis z danego dziennika

(Get-EventLog system)[10]

Wynik polecenia w zależności od jego indeksu pojawi się w jakimś czasie.



#-----------------------------------------------------------------------------------------------------------------
# Przy pomocy length możemy wypisać również ostatni element dziennika, pamiętać należy o #odjęciu 1, ponieważ jak w każdej tablicy indeksowanie zaczynamy od 0. Dodanie Format-List * #pozwoli zobaczyć szczegóły wpisu.

(Get-EventLog system)[(Get-EventLog system).length-1] | Format-List *






Brak komentarzy:

Prześlij komentarz