Monitorización

Ultralytics Platform proporciona monitorización para los endpoints desplegados. Realiza un seguimiento de las métricas de solicitud, consulta los registros y comprueba el estado de salud con sondeos automáticos.

Tarjetas de descripción general y mapa mundial de la página de despliegue de Ultralytics Platform

Panel de despliegues

La página Deploy en la barra lateral sirve como panel de control de monitorización para todos tus despliegues. Combina el mapa mundial, las métricas de resumen y la gestión de despliegues en una sola vista. Consulta Dedicated Endpoints para crear y gestionar despliegues.

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

Tarjetas de resumen

Cuatro tarjetas de resumen en la parte superior de la página muestran:

Cuatro tarjetas de resumen de la página de despliegue de Ultralytics Platform

MétricaDescripción
Total de solicitudes (24h)Solicitudes en todos los endpoints
Despliegues activosEndpoints en ejecución actualmente
Tasa de errores (24h)Porcentaje de solicitudes fallidas
Latencia P95 (24h)Tiempo de respuesta en el percentil 95
Alerta de tasa de errores

La tarjeta de tasa de errores se resalta en rojo cuando la tasa supera el 5%. Consulta la pestaña Logs en cada despliegue individual para diagnosticar errores.

Mapa mundial

El mapa mundial interactivo muestra:

  • Marcadores de región para las 43 regiones disponibles
  • Marcadores verdes para las regiones desplegadas
  • Marcadores azules animados para regiones con despliegues activos en curso
  • El tamaño del marcador varía según el estado del despliegue y la latencia

Mapa mundial de la página de despliegue de Ultralytics Platform con regiones desplegadas

Lista de despliegues

Debajo de las tarjetas de resumen, la lista de despliegues muestra todos los endpoints de tus proyectos. Utiliza el selector de modo de vista para alternar entre:

VistaDescripción
TarjetasTarjetas con todos los detalles que incluyen pestañas de métricas, registros, código y predicción
CompactaCuadrícula de tarjetas más pequeñas (1-4 columnas) con métricas clave
TablaTabla de datos con columnas ordenables: Nombre, Región, Estado, Solicitudes, P95, Errores
Actualizaciones en tiempo real

El panel de control realiza un sondeo cada 15 segundos para obtener actualizaciones del estado del despliegue. Cuando los despliegues se encuentran en un estado de transición (creating, deploying o stopping), el sondeo aumenta a cada 3 segundos. Los gráficos de métricas se actualizan cada 60 segundos. Haz clic en el botón de actualización para obtener cambios inmediatos.

Métricas por despliegue

Cada tarjeta de despliegue (en la vista de tarjetas) muestra métricas en tiempo real:

Fila de métricas

MétricaDescripción
SolicitudesRecuento de solicitudes (24h) con icono
Latencia P95Tiempo de respuesta en el percentil 95
Tasa de erroresPorcentaje de solicitudes fallidas

Las métricas se obtienen desde el endpoint de la API sparkline y se actualizan cada 60 segundos.

Control de salud (Health Check)

Los despliegues en ejecución muestran un indicador de comprobación de estado:

IndicadorSignificado
Corazón verdeSaludable — muestra la latencia de respuesta
Corazón rojoNo saludable — muestra el mensaje de error
Icono giratorioComprobación de estado en curso

Las comprobaciones de estado se reintentan automáticamente cada 20 segundos cuando no están saludables. Haz clic en el icono de actualización para activar manualmente una comprobación de estado. La comprobación utiliza un tiempo de espera de 55 segundos para adaptarse a los arranques en frío en endpoints con escalado a cero.

Tarjeta de despliegue de Ultralytics Platform con comprobación de estado saludable y latencia

Tolerancia al arranque en frío

La comprobación de estado utiliza un tiempo de espera de 55 segundos para tener en cuenta los arranques en frío en endpoints con escalado a cero (hasta ~45 segundos en el peor de los casos). Una vez que el endpoint se calienta, las comprobaciones de estado se completan en milisegundos.

Registros

Cada tarjeta de despliegue incluye una pestaña Logs para ver las entradas de registro recientes:

Pestaña de registros de la tarjeta de despliegue de Ultralytics Platform con filtro de gravedad

Entradas de registro

Cada entrada de registro muestra:

CampoDescripción
GravedadBarra codificada por colores (ver abajo)
Marca de tiempoHora de la solicitud (formato local)
MensajeContenido del registro
Información HTTPCódigo de estado y latencia (si corresponde)

Filtra los registros por gravedad usando los botones de filtro:

NivelColorDescripción
DEBUGGrisMensajes de depuración
INFOAzulSolicitudes normales
WARNINGAmarilloProblemas no críticos
ERRORRojoSolicitudes fallidas
CRITICALRojo oscuroFallos críticos

La interfaz muestra las 20 entradas más recientes. La API tiene como valor predeterminado 50 entradas por solicitud (máximo 200).

Flujo de trabajo de depuración

Al investigar errores: primero haz clic en Errors para filtrar por las entradas ERROR y WARNING, luego revisa las marcas de tiempo y los códigos de estado HTTP. Copia los registros al portapapeles para compartirlos con tu equipo.

Ejemplos de código

Cada tarjeta de despliegue incluye una pestaña Code que muestra código de API listo para usar con tu URL de endpoint real y tu clave de 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())
Credenciales auto-completadas

Al visualizar la pestaña Code en la plataforma, tu URL de endpoint real y tu clave API se rellenan automáticamente. Copia el código y ejecútalo directamente. Consulta API Keys para generar una clave.

Predict en despliegue

La pestaña Predict en cada tarjeta de despliegue proporciona un panel de predicción integrado: la misma interfaz que la pestaña Predict del modelo, pero ejecutando la inferencia a través del endpoint de despliegue en lugar del servicio compartido. Esto es útil para probar un endpoint desplegado directamente desde el navegador. Consulta Inference para conocer los detalles de los parámetros y los formatos de respuesta.

Endpoints de la API

Descripción general de la monitorización

GET /api/monitoring

Devuelve métricas agregadas para todos los despliegues propiedad del usuario autenticado. Reconoce el espacio de trabajo mediante el parámetro de consulta opcional owner.

Métricas de despliegue

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

Devuelve datos de sparkline y métricas de resumen para un despliegue específico. Intervalo de actualización: 60 segundos.

ParámetroTipoDescripción
sparklineboolIncluir datos de sparkline
rangestringRango de tiempo: 1h, 6h, 24h, 7d o 30d

Registros de despliegue

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

Devuelve entradas de registro recientes con filtro de gravedad opcional y paginación.

ParámetroTipoDescripción
limitintMáximo de entradas a devolver (por defecto: 50, máximo: 200)
severitystringFiltro de gravedad separado por comas
pageTokenstringToken de paginación de la respuesta anterior

Estado del despliegue

GET /api/deployments/{deploymentId}/health

Devuelve el estado de la comprobación de salud con la latencia de respuesta.

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

Optimización del rendimiento

Usa los datos de monitorización para optimizar tus despliegues:

Si la latencia es demasiado alta:

  1. Comprueba el número de instancias (es posible que necesites más)
  2. Verifica que el tamaño del modelo sea el adecuado
  3. Considera una región más cercana
  4. Comprueba los tamaños de las imágenes que se envían
Reducción de la latencia

Cambia de imgsz=1280 a imgsz=640 para una aceleración de ~4x con una pérdida mínima de precisión para la mayoría de los casos de uso. Despliega en una región más cercana a tus usuarios para una menor latencia de red.

Preguntas frecuentes

¿Cuánto tiempo se retienen los datos?

Tipo de datoRetención
Métricas30 días
Registros7 días

¿Puedo configurar una monitorización externa?

Sí, las URLs de endpoint funcionan con herramientas de monitorización externas:

  • Monitorización de tiempo de actividad (Pingdom, UptimeRobot)
  • Herramientas APM (Datadog, New Relic)
  • Comprobaciones de salud personalizadas a través del endpoint /health

¿Qué precisión tienen las cifras de latencia?

Las métricas de latencia miden:

  • P50: Tiempo de respuesta mediano
  • P95: Percentil 95
  • P99: Percentil 99

Estos valores representan el tiempo de procesamiento en el lado del servidor, sin incluir la latencia de red para tus usuarios.

¿Por qué mis métricas tienen retraso?

Las métricas tienen un retraso de ~2 minutos debido a:

  • Canalización de agregación de métricas
  • Ventanas de agregación
  • Almacenamiento en caché del panel

Para una depuración en tiempo real, consulta los registros, que son casi instantáneos.

¿Puedo monitorizar varios endpoints juntos?

Sí, la página de despliegues muestra todos los endpoints con tarjetas de resumen agregadas. Usa la vista de tabla para comparar el rendimiento entre los distintos despliegues.

Comentarios