2015-09-24 2 views
1

У меня есть журналы json splunk, и мне нужно получить подсчет количества раз, когда поле «сообщение» равно «Общее время запроса», а затем в той же строке мне нужно будет получить счетчик количество полей поля «сообщение» равно «времени суб-запроса». Этот же шаблон используется для большинства журналов, поэтому поле «сообщение» может иметь несколько разных значений.Как подсчитать конкретные значения в одном поле?

{ 
    api: my-fancy-api 
    app: MyApp 
    category: RESP_TIME 
    message: Total request time 
    reference_id: MyID123123 
    session_id: 1442877284-39497 
    time: 09-21-2015 23:14:45.023 +0000 
    total_request_time: 0.557 
    units: seconds 
} 

ответ

1

Это на самом деле картина в моей Splunk команды ноутбук :)

Вы можете создать новое поле с помощью eval и условно назначая 1 или 0 к нему. Затем вам просто нужно суммировать поля - полный пример ниже:

...some search commands (i.e. choose an index)... 
| eval msg_total=if(message="Total request time", 1, 0) 
| eval msg_subreq=if(message="sub-request time", 1, 0) 
| stats sum(msg_total) as "Total messages", sum(msg_subreq) as "Subreq msgs" 
Смежные вопросы