#prometheus #promql
#prometheus #promql
Вопрос:
Я запрашиваю использование памяти у конечной точки программного обеспечения, которая связана с Prometheus (система мониторинга). Ниже приведен запрос,
curl -k -s -X GET "https://192.168.6.13/metricsservice/query?query=(engine_memory_total_bytes)" -H "Authorization: Bearer 14ac2d8-9097-455e-baf5-f426f9e208b7"
И результат следующий
{
"status": "success",
"data": {
"resultType": "vector",
"result": [
{
"metric": {
"manager": "false",
},
"value": [
1611002532.041,
"1026170880"
]
},
{
"metric": {
"manager": "true",
},
"value": [
1611002532.041,
"7817961472"
]
},
{
"metric": {
"manager": "false",
},
"value": [
1611002532.041,
"7817965568"
]
}
]
}
}
Итак, значения представлены в векторном формате (обратите "resultType": "vector"
внимание ).
Как я могу извлечь реальные данные вместо вектора?
Ответ №1:
Вы можете использовать фильтр jq, как в следующем примере:
curl -k -s -X GET "https://192.168.6.13/metricsservice/query?query=(engine_memory_total_bytes)" -H "Authorization: Bearer 14ac2d8-9097-455e-baf5-f426f9e208b7" | jq --raw-output '.data.result[].value[1]'