GetEventLog: Verificando logs pelo Power Shell

Saudações pessoal. Neste artigo explico como trabalhar com a cmdlet Get-EventLog para verificar logs referente ao nosso servidor ou alguma máquina remota.

A cmdlet Get-EventLog tem como objetivo obter eventos em computadores locais e\ou remotos. Eventos estes que são os mesmos registrados no visualizador de eventos(event viewer) do servidor\estação. Os eventos em que podemos obter através dessa cmdlet são:

https://diegogouveiace.files.wordpress.com/2016/10/11.png?w=656

Entendendo o que é a cmdlet e quais eventos podemos visualizar através dela iremos aprender como trabalhar com essa cmdlet. Com o PowerShell aberto, digite: Get-EventLog * para visualizar os logs em que podemos trabalhar, conforme, figura abaixo:

https://diegogouveiace.files.wordpress.com/2016/10/12.png?w=656

Digitado a informação(Get-EventLog *) podemos observar que tivemos como retorno os logs de:
– Active Directory
– Application
– DFS Replication
– Directory Service
– DNS Server
– HardwareEvents
– Internet Explorer
– Key Management Service
– Security
– System
– Windows PowerShell

Para verificar as informações referente a determinado Log, iremos digitar: Get-EventLog -LogName e o nome do log. No exemplo abaixo estou verificando as informações referente ao log de segurança(security).

https://diegogouveiace.files.wordpress.com/2016/10/13.png?w=656

Ao digitar o Get-EventLog -LogName e o log desejado você irá perceber que aparecerá uma lista imensa com informações. rs. Caso deseje verificar somente os últimas informações, acrescente o campo -Newest seguido da quantidade de informações que deseja. Exemplo abaixo estou verificando as últimas três informações referente ao log de segurança.

https://diegogouveiace.files.wordpress.com/2016/10/14.png?w=804&h=104

Caso queira trabalhar os campos Index, Time, EntryType, Source, InstanceIDou Message

https://diegogouveiace.files.wordpress.com/2016/10/15.png?w=695&h=90
filtrando mais a pesquisa no log faça:

**1. Caso seja o index: **
**Get-EventLog -LogName NomedoLog -Index **NúmeroIndex

Ex:
https://diegogouveiace.files.wordpress.com/2016/10/17.png?w=656

Verifique acima que filtrei a informação pelo index 77397. 

**2. Caso seja pelo EntryType:
Get-EventLog -LogName NomedoLog -EntryType **“NomedoEntryType”

Ex:
https://diegogouveiace.files.wordpress.com/2016/10/18.png?w=656

Acima notamos que não há nenhuma informação de erro referente ao log de segurança.

3. Caso seja pela -InstanceID
Ex:
https://diegogouveiace.files.wordpress.com/2016/10/19.png?w=656
Acima podemos observar que foram retornados as informações que possuem o ID 4634
**
4. Caso seja pela message
Get-EventLog -LogName** NomedoLog | Where-Object {$_.Message -match“Nome que deseja pesquisar na mensagem”}

Ex:
https://diegogouveiace.files.wordpress.com/2016/10/110.png?w=656

Acima notamos que foi retornado as informações que continha “foi efetuado o logoff de uma conta…” do log de segurança.