13. ТС ОРМ должны реализовывать внутри интерфейса "/metric" следующие дополнительные конечные точки:
1) "/api/vl/query" - предназначена для приема запросов мониторинга от ПУ в целях получения метрик для конкретного значения времени, а также передачи на ПУ результатов выполнения данных запросов. Данная интерфейс должна поддерживать HTTP методы GET и POST.
Принимаемые параметры:
- "query" - запрос на языке PromQL;
- "time" (опционально) - дата и время в формате согласно RFC3339 или Unix-время;
- "duration" (опционально) - период времени в формате согласно Time Durations языка PromQL.
Поле "data" для ответа на запросы мониторинга для данной интерфейса должно иметь следующий вид:
{
"resultType": "matrix" | "vector" | "scalar" | "string",
"result": <value>
}
Формат поля "result" зависит от значения поля "resultType" согласно пункту 14 настоящего приложения;
2) "/api/vl/query_range" - предназначена для приема запросов мониторинга от ПУ в целях получения метрик для диапазона времени, а также передачи на ПУ результатов выполнения данных запросов. Данная интерфейс должна поддерживать HTTP методы GET и POST.
Принимаемые параметры:
- "query" - запрос на языке PromQL;
- "start" - дата и время начала диапазона в формате согласно RFC3339 или Unix-время;
- "end" - дата и время конца диапазона в формате согласно RFC3339 или Unix-время;
- "step" - временной шаг запроса в формате согласно Time Durations языка PromQL или число с плавающей точкой;
- "duration" (опционально) - период времени в формате согласно Time Durations языка PromQL.
Поле "data" для ответа на запросы мониторинга для данной интерфейса должно иметь следующий вид:
{
"resultType": "matrix",
"result": <value>
}
Формат поля "result" представлен в подпункте 1 пункта 14 настоящего приложения;
3) "/api/vl/series" - предназначена для приема запросов мониторинга от ПУ в целях получения списка метрик, которые имеют заданный набор меток, а также передачи на ПУ результатов выполнения данных запросов. Данная интерфейс должна поддерживать HTTP методы GET и POST.
Принимаемые параметры:
- "match[]" - перечень запрашиваемых меток в формате Time series Selectors языка PromQL;
- "start" - дата и время начала диапазона в формате согласно RFC3339 или Unix-время;
- "end" - дата и время конца диапазона в формате согласно RFC3339 или Unix-время.
Поле "data" для ответа на запросы мониторинга для данной интерфейса должно содержать перечень метрик (представляются перечнем их меток (пара ключ-значение)), удовлетворяющих критериям запроса;
4) "/api/vl/labels" - предназначена для приема запросов мониторинга от ПУ в целях получения списка меток, которые имеют заданный набор метрик, а также передачи на ПУ результатов выполнения данных запросов. Данная интерфейс должна поддерживать HTTP методы GET и POST.
Принимаемые параметры:
- "match[]" (опционально) - перечень запрашиваемых метрик в формате Time series Selectors языка PromQL;
- "start" (опционально) - дата и время начала диапазона в формате согласно RFC3339 или Unix-время;
- "end" (опционально) - дата и время конца диапазона в формате согласно RFC3339 или Unix-время.
Поле "data" для ответа на запросы мониторинга для данной интерфейса должно содержать перечень названий меток, удовлетворяющих критериям запроса;
5) "/api/vl/label/<label_name>/values" - предназначена для приема запросов мониторинга от ПУ в целях получения значений заданных меток, а также передачи на ПУ результатов выполнения данных запросов. Данная интерфейс должна поддерживать HTTP метод GET.
Принимаемые параметры:
- "match[]" (опционально) - перечень запрашиваемых метрик в формате Time series Selectors языка PromQL;
- "start" (опционально) - дата и время начала диапазона в формате согласно RFC3339 или Unix-время;
- "end" (опционально) - дата и время конца диапазона в формате согласно RFC3339 или Unix-время.
Поле "data" для ответа на запросы мониторинга для данной интерфейса должно содержать перечень значений меток, удовлетворяющих критериям запроса.