2011-12-29 15 views
21

modificando manualmente la query del filtro XML in Visualizzatore eventi di Windows, posso trovare gli eventi in cui i dati corrisponde una stringa esattamente:Utilizzando XPath inizia-con o contiene funzioni per cercare i log degli eventi di Windows

<QueryList> 
    <Query Id="0" Path="Application"> 
    <Select Path="Application">*[EventData[Data and (Data="Session end: imzcjflrrsq1sfdk3okc4jpf")]]</Select> 
    </Query> 
</QueryList> 

Ora, vuole fare una corrispondenza parziale:

<QueryList> 
    <Query Id="0" Path="Application"> 
    <Select Path="Application">*[EventData[Data and (Data[starts-with(.,"Session")])]]</Select> 
    </Query> 
</QueryList> 

registro eventi mi dà l'errore:

The specified query is invalid

do Ho sbagliato la sintassi?

risposta

4

Se non ti dispiace due passaggi, si può sempre utilizzare uno script PowerShell per ri-filtrare i dati come il suo                 -where operatore supporta -like, -match, e -contains:

nv.ps1

$Query = @" 
    <QueryList> 
    <Query Id="0" Path="System"> 
     <Select Path="System"> 
     *[System[(EventID=20001)]] 
     </Select> 
    </Query> 
    </QueryList> 
"@ 

$events = Get-WinEvent -FilterXml $Query 
ForEach ($Event in $Events) { 
    # Convert the event to XML 
    $eventXML = [xml]$Event.ToXml() 
    Add-Member -InputObject $Event -MemberType NoteProperty -Force -Name DriverVersion -Value $eventXML.Event.UserData.InstallDeviceID.DriverVersion 
    Add-Member -InputObject $Event -MemberType NoteProperty -Force -Name DriverDescription -Value $eventXML.Event.UserData.InstallDeviceID.DriverDescription 
    Add-Member -InputObject $Event -MemberType NoteProperty -Force -Name Data -Value $eventXML.Event.EventData.Data 
} 
$Events | Select TimeCreated, Id, DriverDescription, DriverVersion, ProviderName, @{Name="MessageData";Expression={$_.Message + $_.Data}} | Where {$_.DriverDescription -match "NVIDIA GeForce GTX*"} | Out-GridView 
pause 

Un cmd per lanciarlo (nv.cmd):

powershell.exe -executionpolicy bypass "& '.\nv.ps1'" 
Problemi correlati