#elasticsearch #kibana #timelion
#elasticsearch #kibana #временной интервал
Вопрос:
У меня есть стек ELK, который я использую для мониторинга производительности приложений. Приложения создают документы формата
{"name": APPLICATION_NAME, "data": {"success": 20, "fail": 3}}
Где success и fail — соответствующие показатели за период времени.
Я использую timelion для визуализации производительности этих приложений с помощью запроса:
.es(split=name.keyword:200, index="logstash-*", metric="avg:data.success")
Однако это становится трудным для просмотра, поскольку количество приложений огромно, что приводит к очень плотному графику.
Я искал решение для «объединения» запросов вместе, чтобы я мог сказать, фильтровать по name.keyword за период времени, если был хотя бы 1 документ, значение успеха которого равно 0.
Большинство ресурсов говорят, что для предварительной фильтрации данных я должен добавить дополнительный атрибут для фильтрации, но я не думаю, что это актуально в данном случае.
Комментарии:
1. Первым параметром функции .es является параметр q (для запроса), который представляет собой строку запроса, используемую для фильтрации данных для этой серии. Вы можете использовать ‘И’ для объединения запросов вместе.
2. Я надеялся использовать результаты первого запроса в качестве входных данных во второй запрос, поскольку первый запрос вернет релевантные значения name.keyword