как применить множественное сложение в Splunk

Привет. Есть данные из запроса ниже .. (index = abc OR index = def) | rex field = index (? ‹Local_Market› [^ cita] \ w. *?) _ | количество графиков по заблокированным, Local_Market

заблокированный даб рат мил 0 10 20 21 1 02 03 09 2 9 2 1

Теперь мне нужны данные, как показано ниже

общее количество заблокированных (сумма 0 и сумма 2) dub rat mil Всего найдено (сумма 1) (10 + 20 + 21 + 9 + 2 + 1) = 63 10 20 21 (02 + 03 + 09) = 14


person supriya    schedule 18.03.2021    source источник
comment
Если ваши index имена не начинаются с этого регулярного выражения, вы не получите никаких данных   -  person warren    schedule 18.03.2021


Ответы (2)


Вопрос можно было бы лучше отформатировать, но я думаю, что вам нужна команда addcoltotals.

person RichG    schedule 18.03.2021
comment
Привет, Рич, в addcoltotals мы получим общее количество всех заблокированных .. но я хочу только заблокировать (0 и 2) вместе и заблокировать 1 вместе - person supriya; 18.03.2021
comment
Привет @ RichG, в addcoltotals мы получим общее количество всех заблокированных .. но я хочу только заблокировать (0 и 2) вместе и заблокировать 1 вместе - person supriya; 18.03.2021
comment
Переформатируйте данные в вопросе в табличную форму, чтобы было легче понять взаимосвязь. Затем объясните, как Splunk узнает, какие поля нужно складывать. - person RichG; 18.03.2021
comment
заблокировано dub rat mil 0 10 20 21 1 2 3 9 2 9 2 1 всего заблокировано (сумма 0 и сумма 2) dub rat mil Всего найдено (Sumof 1) (10 + 20 + 21 + 9 + 2 + 1) = 63 10 20 21 (02 + 03 + 09) = 14 всего заблокировано (сумма 0 и сумма 2) найдено dub rat mil (сумма 1) 63 10 20 21 14 - person supriya; 18.03.2021
comment
(index = abc OR index = def) | rex field = index (? ‹Local_Market› [^ cita] \ w. *?) _ | количество диаграмм по заблокированным, Local_Market заблокировано dub rat mil 0 10 20 21 1 2 3 9 2 9 2 1 Я хочу, чтобы данные были такими, как показано ниже, общее количество заблокированных (сумма 0 и сумма 2) dub rat mil Всего найдено (Sumof 1) (10 + 20 + 21 + 9 + 2 + 1) = 63 10 20 21 (02 + 03 + 09) = 14 вкратце, мне нужны данные в формате ниже, общее количество обнаруженных дублированных крыс, мил (сумма 1) 63 10 20 21 14 - person supriya; 18.03.2021

Этот пример, который можно запускать где угодно, уродлив, но я считаю, что он дает желаемые результаты.

| makeresults 
| eval _raw="blocked dub rat mil
0       10  20  21
1       02  03  09
2       9   2   1"
| multikv forceheader=1
| fields - _time _raw linecount
```Skip the above - it just creates test data```
```Compute the total_bolocked field for blocked=0 and blocked=2```
| eval total_bolocked=if(blocked!=1,dub+mil+rat,0)
```Compute the total_found field for blocked=1```
| eval total_found=if(blocked=1, dub+mil+rat,0)
```Add up the total_bolocked fields.  This will include blocked=1, but we'll fix that below```
| eventstats sum(total_bolocked) as total_bolocked
```Set total_bolocked=0 if blocked is 1```
| eval total_bolocked=if(blocked=1,0, total_bolocked)
person RichG    schedule 18.03.2021