среда, 26 апреля 2017 г.

Splunk. Makeresults.

Приветствую, уважаемый читатель!

Эта небольшая заметка будет про оператор SPL makeresult. У него специфическая функция, он позволяет использовать некоторые операторы SPL (eval, rex) в качестве первого оператора в запросе, а в связке с оператором return применяется для связывания запросов. Казалось бы, зачем? Ответ ниже J




Итак, как вы помните, в начале любого SPL-запроса необходимо указать index, source, sourcetype, inputcsv или любой другой оператор, при помощи которого запрашиваются события из какого-либо источника. Но что делать, если необходимо с использованием операторов SPL (eval, rex)   обработать одно конкретное значение. Это значение может быть передано в запрос, например, через токен на дашборде.

Вбив оператор в строке поиска, Splunk вернёт текущее время:


| makeresults 

Теперь добавим в запрос токен с произвольным значением:

| makeresults
| eval token="Text_token"



Самое главное, что получив через токен произвольное значение, мы можем его обработать и использовать в запросе как условие выборки. Для примера, получим события из логов Apache, предварительно обработав значение токена при помощи оператора rex.

sourcetype=Apache_access (method = [| makeresults | eval token="method:POST" | rex mode=sed field=token "s/method\://g" | return $token])
| table clientip,uri,method


В данном примере для передачи значения между разными частями запроса используется оператор return.

Всем удачного использования J





Комментариев нет:

Отправить комментарий