Запрос Splunk для извлечения строки внутри тега XML не работает с командой spath - PullRequest
0 голосов
/ 03 октября 2018

Я использую следующий запрос:

index=itx "PAD =" | dedup BOC | spath output=Channel path=AsRunMessage.Header.Channel  | table BOC, channel

, который приводит к событиям с большим содержанием XML. Мне нужно извлечь строку "ITX1546" из тегов.Также мне нужно создать таблицу с различными строками, содержащими уникальные значения BOC.Поле Channel не заполняется.Вот структура XML:

enter image description here

Есть идеи?Спасибо

1 Ответ

0 голосов
/ 04 октября 2018

Я ненавижу XML, поэтому я не использую spath достаточно, чтобы ответить на это.Тем не менее, вы можете избежать использования rex (хотя регулярные выражения - не лучший способ разбора XML).Этот непроверенный запрос должен помочь вам начать работу.

index=itx "PAD =" | rex "<BOC [^>]+>(?<BOC>[^<]+)[\s\S]+<Channel [^>]+>(?<Channel>[^<]+)" 
| stats values(Channel) by BOC
...