Перейти к содержанию

Мониторинг

Ultralytics Platform обеспечивает мониторинг развернутых конечных точек. Отслеживайте метрики запросов, просматривайте журналы и проверяйте состояние работоспособности с помощью автоматического опроса.

Платформа Ultralytics: Страница развертывания, обзорные карточки и карта мира

Панель мониторинга развертываний

Параметр Deploy страница на боковой панели служит панелью мониторинга для всех ваших развертываний. Она объединяет карту мира, обзорные метрики и управление развертываниями в одном представлении. См. Выделенные конечные точки для создания и управления развертываниями.

graph TB
    subgraph Dashboard
        Map[World Map] --- Cards[Overview Cards]
        Cards --- List[Deployments List]
    end
    subgraph "Per Deployment"
        Metrics[Metrics Row]
        Health[Health Check]
        Logs[Logs Tab]
        Code[Code Tab]
        Predict[Predict Tab]
    end
    List --> Metrics
    List --> Health
    List --> Logs
    List --> Code
    List --> Predict

    style Dashboard fill:#f5f5f5,color:#333
    style Map fill:#2196F3,color:#fff
    style Cards fill:#FF9800,color:#fff
    style List fill:#4CAF50,color:#fff

Обзорные карточки

Четыре сводные карточки в верхней части страницы показывают:

Платформа Ultralytics: Страница развертывания, четыре обзорные карточки

МетрикаОписание
Всего запросов (24 часа)Запросы по всем конечным точкам
Активные развертыванияАктивно работающие конечные точки
Частота ошибок (24 часа)Процент неудачных запросов
Задержка P95 (24 часа)Время отклика 95-го перцентиля

Предупреждение о частоте ошибок

Карточка частоты ошибок подсвечивается красным, когда частота превышает 5%. Проверьте Logs вкладка на отдельных развертываниях для диагностики ошибок.

Мировая карта

Интерактивная карта мира показывает:

  • Метки регионов для всех 43 доступных регионов
  • Зеленые пины для развернутых регионов
  • Анимированные синие метки для регионов с активными развертываниями.
  • Размер метки варьируется в зависимости от статуса развертывания и задержки

Ultralytics Platform Страница развертывания Карта мира с развернутыми регионами

Список развертываний

Под карточками обзора список развертываний показывает все конечные точки по вашим проектам. Используйте переключатель режима просмотра для переключения между:

ВидОписание
КарточкиПодробные карточки с метриками, логами, кодом и вкладками прогнозирования
КомпактныйСетка небольших карточек (1-4 столбца) с ключевыми метриками
ТаблицаТаблица данных с сортируемыми столбцами: Имя, Регион, Статус, Запросы, P95, Ошибки

Обновления в реальном времени

Панель мониторинга опрашивает данные каждые 30 секунд для обновления метрик. Когда развертывания находятся в переходном состоянии (создание, развертывание), частота опроса увеличивается до каждых 3 секунд. Нажмите кнопку обновления для немедленного получения актуальных данных.

Метрики по развертыванию

Каждая карточка развертывания (в режиме карточек) показывает метрики в реальном времени:

Строка метрик

МетрикаОписание
ЗапросыКоличество запросов (24 часа) со значком
Задержка P95Время отклика 95-го перцентиля
Процент ошибокПроцент неудачных запросов

Метрики извлекаются из конечной точки API спарклайнов и обновляются каждые 60 секунд.

Проверка работоспособности (Health Check)

Запущенные развертывания показывают индикатор работоспособности:

ИндикаторЗначение
Зеленое сердцеРаботоспособен — показывает задержку ответа
Красное сердцеНеисправно — показывает сообщение об ошибке
Вращающаяся иконкаПроверка работоспособности выполняется

Проверки работоспособности автоматически повторяются каждые 20 секунд при неисправности. Нажмите значок обновления, чтобы вручную запустить проверку работоспособности. Проверка работоспособности использует тайм-аут 55 секунд для учета холодных запусков на конечных точках с масштабированием до нуля.

Ultralytics Platform Карточка развертывания Проверка работоспособности: исправно, с задержкой

Допуск холодного запуска

Проверка работоспособности использует тайм-аут в 55 секунд для учета холодных запусков на конечных точках с масштабированием до нуля (до ~45 секунд в наихудшем случае). После прогрева конечной точки проверки работоспособности завершаются за миллисекунды.

Логи

Каждая карточка развертывания включает в себя Logs вкладка для просмотра последних записей журнала:

Ultralytics Platform Карточка развертывания Вкладка «Журналы» с фильтром по уровню серьезности

Записи журнала

Каждая запись лога содержит:

ПолеОписание
ВажностьЦветовая шкала (см. ниже)
Временная меткаВремя запроса (локальный формат)
СообщениеСодержимое лога
Информация HTTPКод состояния и задержка (если применимо)

Фильтровать логи по уровню важности, используя кнопки фильтрации:

УровеньЦветОписание
ОТЛАДКАСерыйОтладочные сообщения
INFOСинийОбычные запросы
WARNINGЖелтыйНекритические проблемы
ERRORКрасныйНеудачные запросы
КРИТИЧЕСКИЙТемно-красныйКритические сбои
УправлениеОписание
ОшибкиОтображать только записи ERROR и WARNING
ВсеПоказать все записи журнала
КопироватьСкопировать все видимые логи в буфер обмена
ОбновитьПерезагрузить записи журнала

Пользовательский интерфейс отображает 20 последних записей. API по умолчанию возвращает 50 записей на запрос (максимум 200).

Рабочий процесс отладки

При расследовании ошибок: сначала нажмите Errors, чтобы отфильтровать записи ERROR и WARNING, затем просмотрите временные метки и коды состояния HTTP. Скопируйте логи в буфер обмена для обмена с вашей командой.

Примеры кода

Каждая карточка развертывания включает в себя Code вкладка, показывающая готовый к использованию код API с вашим фактическим URL-адресом конечной точки и ключом API:

import requests

# Deployment endpoint
url = "https://predict-abc123.run.app/predict"

# Headers with your deployment API key
headers = {"Authorization": "Bearer YOUR_API_KEY"}

# Inference parameters
data = {"conf": 0.25, "iou": 0.7, "imgsz": 640}

# Send image for inference
with open("image.jpg", "rb") as f:
    response = requests.post(url, headers=headers, data=data, files={"file": f})

print(response.json())
// Build form data with image and parameters
const formData = new FormData();
formData.append("file", fileInput.files[0]);
formData.append("conf", "0.25");
formData.append("iou", "0.7");
formData.append("imgsz", "640");

// Send image for inference
const response = await fetch(
  "https://predict-abc123.run.app/predict",
  {
    method: "POST",
    headers: { Authorization: "Bearer YOUR_API_KEY" },
    body: formData,
  }
);

const result = await response.json();
console.log(result);
# Send image for inference
curl -X POST "https://predict-abc123.run.app/predict" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -F "file=@image.jpg" \
  -F "conf=0.25" \
  -F "iou=0.7" \
  -F "imgsz=640"

Автоматически заполняемые учетные данные

При просмотре Code вкладке платформы ваш фактический URL конечной точки и ключ API заполняются автоматически. Скопируйте код и запустите его напрямую. См. Ключи API для генерации ключа.

Предсказание развертывания

Параметр Predict вкладка на каждой карточке развертывания предоставляет встроенную панель прогнозирования — тот же интерфейс, что и у модели Predict вкладке, но с выполнением инференса через конечную точку развертывания вместо общего сервиса. Это полезно для прямого тестирования развернутой конечной точки из браузера. См. Инференс для получения подробной информации о параметрах и форматах ответов.

Конечные точки API

Обзор мониторинга

GET /api/monitoring

Возвращает агрегированные метрики для всех развертываний, принадлежащих аутентифицированному пользователю. С учетом рабочего пространства через опциональный owner параметр запроса.

Метрики развертывания

GET /api/deployments/{deploymentId}/metrics?sparkline=true&range=24h

Возвращает данные спарклайнов и сводные метрики для конкретного развертывания. Интервал обновления: 60 секунд.

ПараметрТипОписание
sparklineboolВключить данные спарклайна
rangeстрокаВременной диапазон: 1h, 6h, 24h, 7d, или 30d

Журналы развертывания

GET /api/deployments/{deploymentId}/logs?limit=50&severity=ERROR,WARNING

Возвращает недавние записи журнала с необязательным фильтром по уровню серьезности и пагинацией.

ПараметрТипОписание
limitintМаксимальное количество возвращаемых записей (по умолчанию: 50, макс.: 200)
severityстрокаФильтр по степени серьезности, разделенный запятыми
pageTokenстрокаТокен пагинации из предыдущего ответа

Состояние развертывания

GET /api/deployments/{deploymentId}/health

Возвращает статус проверки работоспособности с задержкой ответа.

{
    "healthy": true,
    "status": 200,
    "latencyMs": 142
}

Оптимизация производительности

Используйте данные мониторинга для оптимизации ваших развертываний:

Если задержка слишком высока:

  1. Проверьте количество экземпляров (возможно, потребуется больше)
  2. Убедитесь, что размер модели соответствует требованиям
  3. Рассмотрите более близкую область
  4. Проверьте размеры отправляемых изображений

Снижение задержки

Переход от imgsz=1280 в imgsz=640 для ускорения примерно в 4 раза с минимальной потерей точности для большинства сценариев использования. Разверните в регионе, более близком к вашим пользователям, для снижения задержки сети.

Если возникают ошибки:

  1. Просмотр журналов ошибок в Logs вкладка
  2. Проверьте формат запроса (требуется многокомпонентная форма).
  3. Убедитесь, что ключ API действителен
  4. Проверьте ограничения скорости запросов

При достижении предела производительности:

  1. Рассмотрите использование нескольких регионов
  2. Оптимизируйте пакетирование запросов
  3. Увеличьте ресурсы CPU и памяти

Часто задаваемые вопросы

Как долго хранятся данные?

Тип данныхСрок хранения
Метрики30 дней
Логи7 дней

Могу ли я настроить внешний мониторинг?

Да, URL-адреса конечных точек работают с внешними инструментами мониторинга:

  • Мониторинг доступности (Pingdom, UptimeRobot)
  • Инструменты APM (Datadog, New Relic)
  • Пользовательские проверки состояния через /health конечная точка

Насколько точны показатели задержки?

Метрики задержки измеряют:

  • P50: Медианное время ответа
  • P95: 95-й перцентиль
  • P99: 99-й перцентиль

Они представляют время обработки на стороне сервера, не включая сетевую задержку до ваших пользователей.

Почему мои метрики задерживаются?

Метрики имеют задержку около 2 минут из-за:

  • Конвейера агрегации метрик
  • Окон агрегации
  • Кэширования дашбордов

Для отладки в реальном времени проверяйте логи, которые обновляются почти мгновенно.

Могу ли я отслеживать несколько конечных точек одновременно?

Да, страница развертываний показывает все конечные точки с агрегированными обзорными карточками. Используйте табличное представление для сравнения производительности между развертываниями.



📅 Создано 2 месяцев назад ✏️ Обновлено 25 дней назад
glenn-jochersergiuwaxmann

Комментарии