Что это
Prometheus HTTP API - программный интерфейс уже работающего сервера Prometheus, а не отдельный платный сервис. Он позволяет получить измеренные показатели для отчета или проверить состояние целей сбора. Сам он не собирает новые метрики вместо серверной конфигурации.
Вместо копирования графика программа отправляет PromQL-запрос и разбирает ответ. Для разового значения используется query, для последовательности точек во времени - query_range. Это разные формы результата, и обработчик должен учитывать их явно.
Если данные читает AI-ассистент, лучше предоставить заранее разрешенные короткие запросы. Возможность выполнять любой PromQL увеличивает нагрузку и раскрывает лишнюю телеметрию. Включать административные методы ради чтения не нужно.
Ключевые параметры
- Категория: Оценка, мониторинг и evals
- Сложность: Для разработчика
- Запуск: Около 30 минут
- Open-source: Да
- Данные: Высокий контроль
- Чувствительные данные: Только с настройками
Сильные стороны
- Один интерфейс поддерживает запросы на момент времени и за заданный диапазон.
- JSON-ответ содержит labels и временные отметки для проверяемой сводки.
- Можно использовать обычный HTTP-клиент без подключения отдельной модели.
- Тот же PromQL-запрос можно сверить в интерфейсе сервера.
Ограничения
- API видит только уже собранные и сохраненные метрики; пропуски данных нужно учитывать.
- Широкий диапазон и частый шаг query_range увеличивают нагрузку.
- Обработчик должен учитывать resultType, ошибки, warnings и пустые результаты.
- Чтение телеметрии не дает готовых выводов о причинах сбоя или безопасности LLM.
Как использовать
1. Подготовка. Используйте учебный Prometheus с настроенным сбором самого себя, job_name: prometheus и доступом только через 127.0.0.1:9090. Проверьте UP на странице /targets. Для удаленного сервера получите разрешенный адрес и способ авторизации у администратора.
2. Настройка. Выберите HTTP-клиент и read-only query endpoint /api/v1/query. Для этого не нужны --web.enable-admin-api и --web.enable-lifecycle; не включайте их. Ограничьте длительность и частоту запросов.
3. Первый результат. Выполните curl --get http://127.0.0.1:9090/api/v1/query --data-urlencode 'query=up{job="prometheus"}'. В Windows PowerShell используйте curl.exe, чтобы не вызвать одноименный alias. Сохраните JSON и момент запроса.
4. Проверка. Ожидайте status=success, resultType=vector и ряд нужной цели с value[1]="1"; числовое значение приходит строкой. Проверьте warnings и labels. Пустой result не подменяйте нулем. Сверьте тот же запрос и момент в /query; для графика отдельно задайте start, end и step в query_range.
Примеры сценариев
- Включить проверенную доступность целей в отчет.
- Собрать короткий срез задержек для разбора инцидента.
- Проверить labels и пропуски перед построением графика.
Доступ и оплата
- Модель оплаты: Open-source
- Бесплатный тариф: Да
- Работа в РФ: Да
- VPN: Не нужен
- Русский интерфейс: Не известно
- Русский язык: Не известно
HTTP API входит в открытый Prometheus по Apache-2.0. На своем компьютере он работает без подписки и VPN; управляемый хостинг может иметь собственные тарифы и авторизацию. JSON здесь - формат ответа сервера, а не функция structured output языковой модели.
Когда не подходит
- Исправлять сервер автоматически по одному числу
- Считать отсутствие ряда нормальным нулевым показателем
- Выдавать модели административный API
Альтернативы
Grafana HTTP API полезен для управления дашбордами, но не является прямой заменой PromQL Query API. OpenTelemetry передает телеметрию в выбранное хранилище. Langfuse работает с LLM-вызовами и их оценками; задачи этих интерфейсов отличаются.