Как получить количество всех записей для данного поля, включая количество всех записей, где поле не существует.
Например:
Учитывая данные, которые обычно выглядят примерно так:
{"source_host":"host1", "msg":"some message", "user":"jack"}
{"source_host":"host2", "msg":"some other message", "user":"jill"}
Я могу получить количество всех записей, как это:
index="my_index" sourcetype=my_proj:my_logs | table _raw | stats count(_raw)
Я могу получить количество записей для данного поля следующим образом:
index="my_index" sourcetype=my_proj:my_logs | stats count(_raw) by source_host
Предоставляет таблицу, подобную этой
host count
host_1 89
host_2 57
Но я бы хотел, чтобы запрос также подсчитывал записи где поле существует, но оно пустое, например:
{"source_host":"", "msg":"some message", "user":"jack"}
А также подсчитывать сообщения, подобные этому:
asdf asdf asdf asdf asd fasdfasdfafas
foo bar
Some other Junk someone wrote to my log
Чтобы получить такую таблицу
host count
host_1 89
host_2 57
null 1
no_def 3