Splunk как исключить определенную юдоль из списка, если она существует
У меня есть журнал с полезной нагрузкой примерно так:
"Stats":[ {
errors: 0
type: "Disc"
success: 878
},
{
errors: 21
type: "cronJob"
success: 25
},
{
errors: 0
type: "File"
success: 8787
},
{
errors: 15
type: "Unknown"
success: 0
}]
Мне нужно избавиться от объекта типа "Неизвестный" и получить сумму оставшихся значений
Я могу получить сумму всех ошибок, но для событий типа Unknown я не знаю, как это сделать. Не могли бы вы помочь?
<search>|rename Stats{}.type= as type|eventstats sum(errors) as ErrorCount
Это мой текущий поиск без исключения неизвестного типа. как включить логику исключения неизвестных счетчиков
2 ответа
<search>|rename Stats{}.type= as type | where type != "Unknown" | eventstats sum(errors) as ErrorCount
Полезные данные JSON обрабатываются как многозначное поле
Значит тебе нужно mvexpand
это перед тем, как отфильтровать то, что вы хотите игнорировать
Попробуйте что-то вроде этого:
index=ndx sourcetype=srctp Stats{}.type=*
| rename Stats{}.type as type
| mvexpand type
| search NOT type="Unknown"
| ...