Добрый вечер. Сразу к коду:
curl -s http://localhost:7081/metrics/find?query=stats.*.curl_json.logstash-* | json_pp
[
{
«allowChildren» : 1,
«context» : {},
«text» : «logstash-internal»,
«leaf» : 0,
«id» : «stats.*.curl_json.logstash-internal»,
«expandable» : 1
},
{
«context» : {},
«allowChildren» : 1,
«text» : «logstash-test»,
«leaf» : 0,
«id» : «stats.*.curl_json.logstash-test»,
«expandable» : 1
}
]
Данный запрос указываю в создании переменной $logstash в графане ,соответственно она имеет здесь два значения - logstash-internal, logstash-test.
curl -s http://localhost:7081/metrics/find?query=stats.* | json_pp
этот запрос возвращает список серверов, например
[
{
«context» : {},
«allowChildren» : 1,
«text» : «192_168_13_29»,
«expandable» : 1,
«leaf» : 0,
«id» : «stats.192_168_13_29»
},
{
«id» : «stats.192_168_13_99»,
«context» : {},
«allowChildren» : 1,
«text» : «192_168_13_99»,
«expandable» : 1,
«leaf» : 0
}
]
Соответственно, в графане тоже создана переменная $server под этот запрос. Серверов в списке может быть много (под сотню). Возможно ли сделать так подправить этот запрос в графит, чтобы он вернул список серверов, которые имеют у себя метрику stats.*.curl_json.logstash-* (аналог запроса select servers where logstash=true)? Т.е. я например, в дашборде графаны указываю значение переменной $logstash, а уже переменная $server динамически покажет только сервера, которые имеют метрику $logstash