Справочник API платформы
На этой странице:
Proto Observability Platform предоставляет набор API для загрузки и выгрузки данных телеметрии, а также для управления конфигурацией платформы. Все API доступны через единую точку входа платформы.
API для работы с данными телеметрии
Получение (выгрузка) данных
Метрики
Prometheus-совместимый HTTP API для запросов метрик на языке PromQL.
Базовый путь: /promqlapi/
| Эндпоинт | Метод | Описание |
|---|---|---|
/promqlapi/api/v1/query |
GET/POST | Мгновенный запрос (instant query) |
/promqlapi/api/v1/query_range |
GET/POST | Запрос за диапазон времени (range query) |
/promqlapi/api/v1/series |
GET | Метаданные серий |
/promqlapi/api/v1/labels |
GET | Список имён меток |
/promqlapi/api/v1/label/{name}/values |
GET | Значения конкретной метки |
/promqlapi/federate |
GET | Федерация метрик |
Протокол: PromQL over HTTP (Prometheus-совместимый API).
Логи
API для запросов логов на языке LogsQL.
Базовый путь: /logsqlapi/
| Эндпоинт | Метод | Описание |
|---|---|---|
/logsqlapi/select/logsql/query |
GET | Запросы логов с синтаксисом LogsQL |
/logsqlapi/select/logsql/hits |
GET | Гистограмма совпадений по времени |
/logsqlapi/select/logsql/field_names |
GET | Доступные имена полей |
/logsqlapi/select/logsql/field_values |
GET | Значения указанного поля |
Протокол: LogsQL over HTTP.
Трейсы
| Префикс | Описание |
|---|---|
/traces |
Список трейсов, сервисы, операции, инстансы, теги |
Метрики сервисов, алерты и аналитика
Аналитические запросы по трейсам, ошибкам, алертам, бизнес-транзакциям и другим доменам выполняются через OLAP API семантического слоя данных.
Базовый путь: /cubejs-api/
| Эндпоинт | Метод | Описание |
|---|---|---|
/cubejs-api/v1/load |
GET/POST | Выполнение OLAP-запросов (меры, измерения, фильтры, время) |
/cubejs-api/v1/meta |
GET | Метаданные схемы (доступные модели, меры, измерения) |
/cubejs-api/v1/sql |
GET/POST | Предпросмотр SQL-запроса |
Модели данных: 60+ моделей, покрывающих домены – сервисы, спаны, вызовы, ошибки, RUM, браузер, сессии, бизнес-транзакции, бизнес-процессы, алерты, действия, события, ресурсы, здоровье, воронки, метрики мониторинга БД и другие.
Протокол: OLAP REST API с JSON-языком запросов.
Загрузка внешних данных в платформу
Метрики
| Эндпоинт | Метод | Описание |
|---|---|---|
/promqlapi/api/v1/write |
POST | Remote write (протокол Prometheus remote write) |
Протокол: Prometheus remote write.
Логи
| Эндпоинт | Метод | Описание |
|---|---|---|
/insert/opentelemetry/v1/logs |
POST | Приём логов по протоколу OTLP/HTTP (рекомендуется) |
/insert/elasticsearch/_bulk |
POST | Приём логов в формате Elasticsearch Bulk API |
/insert/jsonline |
POST | Приём логов в формате JSON stream (ndjson) |
/insert/loki/api/v1/push |
POST | Приём логов в формате Loki JSON API |
/insert/datadog/api/v2/logs |
POST | Приём логов в формате DataDog API |
Параметры обработки полей можно передавать через строку запроса или HTTP-заголовки:
| Параметр | HTTP-заголовок | Описание |
|---|---|---|
_msg_field |
VL-Msg-Field |
Поле с текстом сообщения (по умолчанию _msg) |
_time_field |
VL-Time-Field |
Поле с временной меткой (по умолчанию _time) |
_stream_fields |
VL-Stream-Fields |
Поля, определяющие лог-поток (через запятую) |
ignore_fields |
VL-Ignore-Fields |
Поля для исключения (через запятую, поддерживает prefix*) |
extra_fields |
VL-Extra-Fields |
Дополнительные поля в формате name=value (через запятую) |
Подробнее о настройке агентов и коллекторов: Получение данных логов.
Трейсы
Загрузка трейсов выполняется через инструментацию приложений с помощью трейсеров или OpenTelemetry Collector. Подробнее: Инструментация.
Алерты
Платформа принимает алерты от внешних систем мониторинга в двух форматах:
| Эндпоинт | Метод | Формат | Описание |
|---|---|---|---|
/api/v2/alertprocess |
POST | Alertmanager webhook | Приём алертов в формате Alertmanager webhook (обёртка с полями receiver, groupKey, alerts[], groupLabels) |
/api/v2/alerts |
POST | Массив алертов | Приём алертов в виде плоского массива объектов, например, от VictoriaMetrics vmalert (поля: startsAt, endsAt, generatorURL, labels, annotations) |
API для управления платформой
Платформа предоставляет REST API для управления конфигурацией. Протокол: REST/JSON.
Правила алертинга
REST API с документацией OpenAPI/Swagger.
| Эндпоинт | Метод | Описание |
|---|---|---|
/rulesapi/rules |
GET/POST/PUT/DELETE | CRUD правил алертинга + клонирование |
/rulesapi/groups |
GET | Список групп правил |
/rulesapi/deploy |
POST | Экспорт и применение конфигурации (YAML) |
/rulesapi/rulepolicy/receivers |
GET/POST/PUT/DELETE | CRUD получателей уведомлений |
/rulesapi/rulepolicy/routes |
GET/POST/PUT/DELETE | CRUD маршрутов + управление приоритетами |
/rulesapi/rulepolicy/deploy |
POST | Применение политики алертинга |
/rulesapi/swagger/* |
GET | OpenAPI/Swagger документация |
Бизнес-транзакции
| Группа API | Префикс | Описание |
|---|---|---|
| Ключевые бизнес-транзакции | /transactions |
CRUD + массовое удаление |
| Правила обнаружения BT | /bt-detection-rules |
CRUD + тестирование паттернов + применение ко всем |
| RUM бизнес-транзакции | /rum-key-business-transactions |
CRUD |
| RUM правила обнаружения | /rum-bt-detection-rules |
CRUD + тестирование паттернов |
Бизнес-процессы
| Префикс | Описание |
|---|---|
/business-processes |
CRUD + вложенные шаги + порядок |
Сегменты и пороги
| Префикс | Описание |
|---|---|
/protoobp-api/segments |
CRUD сегментов + массовое удаление |
/protoobp-api/apdex-thresholds |
CRUD порогов Apdex по сервису |
/protoobp-api/data-extraction-rules |
CRUD правил извлечения данных |
Ресурсная модель
| Префикс | Описание |
|---|---|
/protoobp-api/resource-types |
CRUD типов ресурсов |
/protoobp-api/resources |
CRUD ресурсов + сводки + соседи + граф зависимостей |
/protoobp-api/resource-relationships |
CRUD связей ресурсов |
/protoobp-api/relationship-types |
CRUD типов связей |
/protoobp-api/ci-classes |
CRUD CI-классов |
/protoobp-api/ci-subclasses |
CRUD CI-подклассов |
RBAC-администрирование
| Префикс | Описание |
|---|---|
/protoobp-api/rbac/* |
Роли, разрешения, привязки, аудит |
Сводная таблица стандартов API
| Стандарт | Где используется |
|---|---|
| PromQL over HTTP | Запросы и запись метрик |
| LogsQL over HTTP | Запросы логов |
| OLAP REST API | Аналитические запросы (трейсы, алерты, бизнес-транзакции и др.) |
| REST/JSON | Управление конфигурацией платформы |
| REST/HTTP (мультиформатный) | Приём логов (OTLP, Elasticsearch, JSON, Loki, DataDog) |
| OpenAPI/Swagger | Документация API правил алертинга |
| Alertmanager webhook | Приём алертов от внешних систем |