Splunk: подсчитать количество вхождений строки?

Мои файлы журнала регистрируют кучу сообщений в одном и том же экземпляре, поэтому простой поиск идентификатора сообщения с последующим подсчетом не будет работать (я буду считать только 1 на событие, когда я хочу подсчитать до 50 на событие). Я хочу сначала сузить свой поиск до событий, которые показывают отправляемые сообщения («поставленные в очередь»), а затем подсчитать все экземпляры строки «mid».

Любые идеи? У меня очень плохо с splunk. Как мне сделать все экземпляры "mid" счетным полем?

index=* service=myservice "enqueued" "mid" | stats count mid

person marchocolate    schedule 24.04.2018    source источник


Ответы (1)


Ваш текущий поиск не работает, потому что у вас (вероятно) нет поля с названием 'mid'.
Для поиска строк в событии вы можете использовать rex. Попробуй это.

index=* service=myservice "enqueued" "mid" | rex max_match=0 "(?<mids>mid)" | eval midCount=mvcount(mids) | table midCount

Кстати, «index = *» - плохая практика. Это заставляет Splunk искать по каждому индексу, что действительно замедляет работу. После первого поиска вы должны знать и использовать настоящее имя индекса.

person RichG    schedule 25.04.2018