Недопустимый запрос Powershell Get-WinEvent Xpath

Я хотел бы знать, что не так в моем запросе?

Get-WinEvent -LogName 'Application' -FilterXPath "/Event/System/Provider[@Name = 'My App']"

Каждый раз, когда я получаю исключение ниже:

*Get-WinEvent : La requête spécifiée n’est pas valide
Au caractère Ligne:1 : 1
+ Get-WinEvent -LogName 'Application' -FilterXPath "/Event/System/Provider[@Name = ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Get-WinEvent], EventLogException
    + FullyQualifiedErrorId : System.Diagnostics.Eventing.Reader.EventLogException,Microsoft.PowerShell.Commands.GetWinEventCommand*

Под XML-кодом события

<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
<System>
    <Provider Name="My App" /> 
    <EventID Qualifiers="49152">24</EventID> 
    <Level>2</Level> 
    <Task>0</Task> 
    <Keywords>0x80000000000000</Keywords> 
    <TimeCreated SystemTime="2017-10-12T08:43:57.000000000Z" /> 
    <EventRecordID>37160382</EventRecordID> 
    <Channel>Application</Channel> 
    <Computer>Apps.Server</Computer> 
    <Security /> 
</System>
<EventData>
    <Data>Some additional data</Data> 

Заранее большое спасибо С уважением


person HansB    schedule 23.10.2017    source источник
comment
Я не знаю, соответствует ли используемый вами механизм XPath спецификации, но если это так, то неполные имена, такие как Event и System, будут соответствовать только элементам, которые не находятся в пространстве имен: но все элементы в вашем XML находятся в пространстве имен. http://schemas.microsoft.com/win..... Так что вообще не должно работать.   -  person Michael Kay    schedule 23.10.2017


Ответы (1)


Удалить '/' перед событием

Get-WinEvent -LogName 'Application' -FilterXPath "Event/System/Provider[@Name = 'My App']"

Get-WinEvent -LogName 'Application' -FilterXPath "Event/EventData/Data = '6.3.9600.18376'"
person Vincent K    schedule 23.10.2017
comment
Но знайте, если я хочу найти подстроку в строке, я тоже получаю исключение: -FilterXPath Event/EventData/Data[contains(text(),'Exception')] - person HansB; 23.10.2017
comment
codeGet-WinEvent -LogName Application -FilterXPath Событие/EventData/Данные [содержит (текст (), 'Исключение')] - person HansB; 23.10.2017
comment
‹Данные›содержит(текст(),'Исключение')‹/Данные›.......... Содержат ли данные содержит(текст(),'Исключение') - person Vincent K; 23.10.2017
comment
‹data› не содержит строку contains(text(),'Exception'), но содержит строку со словом Exception. Вот что я хочу получить.‹br /›Чтобы получить значение ‹data› я использую codeEvent/EventData/Data[text()] - person HansB; 23.10.2017