Você pode usar o XPath para fazer consultas de eventos específicas, com muitas ferramentas de eventos (Event MMC, Powershell e Wevtutil). Estou confortável com estruturas XML em outros casos, pacotes de gerenciamento SCOM, HTML, etc, mas acho XPath um pouco mais difícil de obter apenas para a direita. Alguns pontos a serem lembrados são:
- Você precisa fazer a consulta com o horário Universal porque é assim que o subsistema de eventos registra o tempo. O tempo também precisa ser formatado como classificável como ISO 8601 como 2016-01-10T18: 47: 34 .
- Você precisa cercar o tempo entre aspas simples para a consulta e também escapar dessas aspas para powershell, porque o powershell trata as coisas dentro de aspas simples não escapadas como literais, o que significa que variáveis dentro de aspas simples não são expandidas a menos que sejam escapadas. / li>
- Outras vezes que usei XPath, é necessário maior / menor que como & gt; / & lt; mas aqui isso não funcionaria. Apenas o real > < símbolos trabalhados.
- O início da consulta Xpath contém "Sistema", isso NÃO se refere ao tipo de log de eventos, refere-se à ramificação Sistema do XML de evento (captura de tela abaixo para um evento do log do Aplicativo)
Amostra
$time1 = ((get-date).toUniversalTime()).addHours(-22)
$time2 = ((get-date).toUniversalTime()).addHours(-24)
$newest = get-date($time1) -f s
$oldest = get-date($time2) -f s
$newest
$oldest
foreach ($logName in "Application Security System Setup".split(" ")) {
WEVTUTIL.EXE EPL $logName "C:\temp\my$logName.evtx" "/q:*[System[TimeCreated[@SystemTime<=''$newest'' and @SystemTime>=''$oldest'']]]" /ow:true
}