Surveillance

Ultralytics Platform fournit une surveillance pour les endpoints déployés. Suis les métriques de requêtes, consulte les journaux et vérifie l'état de santé grâce à une interrogation automatique.

Aperçu des cartes de la page de déploiement d'Ultralytics Platform et carte du monde

Tableau de bord des déploiements

La page Deploy dans la barre latérale sert de tableau de bord de surveillance pour tous tes déploiements. Elle combine la carte du monde, les métriques d'aperçu et la gestion des déploiements dans une seule vue. Consulte Dedicated Endpoints pour créer et gérer tes déploiements.

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

Cartes d'aperçu

Quatre cartes récapitulatives en haut de la page affichent :

Quatre cartes d'aperçu de la page de déploiement d'Ultralytics Platform

MétriqueDescription
Total des requêtes (24h)Requêtes sur tous les endpoints
Déploiements actifsEndpoints actuellement en cours d'exécution
Taux d'erreur (24h)Pourcentage de requêtes ayant échoué
Latence P95 (24h)Temps de réponse du 95e percentile
Alerte de taux d'erreur

La carte du taux d'erreur s'affiche en rouge lorsque le taux dépasse 5 %. Vérifie l'onglet Logs sur les déploiements individuels pour diagnostiquer les erreurs.

Carte du monde

La carte du monde interactive affiche :

  • Épingles de région pour les 43 régions disponibles
  • Épingles vertes pour les régions déployées
  • Épingles bleues animées pour les régions avec des déploiements actifs en cours
  • La taille des épingles varie en fonction du statut du déploiement et de la latence

Carte du monde de la page de déploiement d'Ultralytics Platform avec les régions déployées

Liste des déploiements

Sous les cartes d'aperçu, la liste des déploiements affiche tous les endpoints de tes projets. Utilise le sélecteur de mode d'affichage pour basculer entre :

VueDescription
CartesCartes détaillées avec des onglets pour les métriques, les journaux, le code et les prédictions
CompactGrille de cartes plus petites (1 à 4 colonnes) avec des métriques clés
TableauDataTable avec des colonnes triables : Nom, Région, Statut, Requêtes, P95, Erreurs
Mises à jour en temps réel

Le tableau de bord interroge l'état des déploiements toutes les 15 secondes. Lorsque les déploiements sont dans un état transitoire (creating, deploying ou stopping), l'interrogation passe à toutes les 3 secondes. Les graphiques de métriques se rafraîchissent toutes les 60 secondes. Clique sur le bouton de rafraîchissement pour obtenir des mises à jour immédiates.

Métriques par déploiement

Chaque carte de déploiement (en vue cartes) affiche des métriques en temps réel :

Ligne de métriques

MétriqueDescription
RequêtesNombre de requêtes (24h) avec icône
Latence P95Temps de réponse du 95e percentile
Taux d'erreurPourcentage de requêtes ayant échoué

Les métriques sont récupérées depuis l'endpoint API sparkline et se rafraîchissent toutes les 60 secondes.

Vérification de santé (Health Check)

Les déploiements en cours affichent un indicateur de santé :

IndicateurSignification
Cœur vertSain — affiche la latence de réponse
Cœur rougeNon sain — affiche le message d'erreur
Icône tournanteVérification de santé en cours

Les vérifications de santé se relancent automatiquement toutes les 20 secondes en cas d'état non sain. Clique sur l'icône de rafraîchissement pour déclencher manuellement une vérification. La vérification de santé utilise un délai d'attente de 55 secondes pour accommoder les démarrages à froid sur les endpoints avec mise à l'échelle à zéro.

Carte de déploiement d'Ultralytics Platform avec vérification de santé réussie et latence

Tolérance au démarrage à froid

La vérification de santé utilise un délai d'attente de 55 secondes pour prendre en compte les démarrages à froid sur les endpoints avec mise à l'échelle à zéro (jusqu'à environ 45 secondes dans le pire des cas). Une fois l'endpoint réchauffé, les vérifications de santé s'effectuent en quelques millisecondes.

Journaux

Chaque carte de déploiement inclut un onglet Logs pour consulter les entrées récentes des journaux :

Onglet des journaux de la carte de déploiement d'Ultralytics Platform avec filtre de sévérité

Entrées de journal

Chaque entrée de journal affiche :

ChampDescription
SévéritéBarre à code couleur (voir ci-dessous)
HorodatageHeure de la requête (format local)
MessageContenu du journal
Info HTTPCode de statut et latence (le cas échéant)

Filtre les journaux par sévérité en utilisant les boutons de filtrage :

NiveauCouleurDescription
DEBUGGrisMessages de débogage
INFOBleuRequêtes normales
WARNINGJauneProblèmes non critiques
ERRORRougeRequêtes ayant échoué
CRITICALRouge foncéÉchecs critiques

L'interface affiche les 20 entrées les plus récentes. L'API définit par défaut 50 entrées par requête (max 200).

Flux de travail de débogage

Lors de l'enquête sur des erreurs : clique d'abord sur Errors pour filtrer sur les entrées ERROR et WARNING, puis vérifie les horodatages et les codes de statut HTTP. Copie les journaux dans le presse-papiers pour les partager avec ton équipe.

Exemples de code

Chaque carte de déploiement inclut un onglet Code affichant du code API prêt à l'emploi avec ton URL d'endpoint réelle et ta clé 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())
Identifiants auto-remplis

Lorsque tu consultes l'onglet Code sur la plateforme, l'URL de ton endpoint et ta clé API sont automatiquement renseignées. Copie le code et exécute-le directement. Consulte API Keys pour générer une clé.

Prédiction de déploiement

L'onglet Predict sur chaque fiche de déploiement propose un panneau de prédiction intégré — la même interface que l'onglet Predict du modèle, mais en exécutant l'inférence via l'endpoint de déploiement au lieu du service partagé. C'est utile pour tester un endpoint déployé directement depuis le navigateur. Consulte Inference pour les détails sur les paramètres et les formats de réponse.

Endpoints API

Vue d'ensemble de la surveillance

GET /api/monitoring

Renvoie les métriques agrégées pour tous les déploiements possédés par l'utilisateur authentifié. Conscient de l'espace de travail via le paramètre de requête optionnel owner.

Métriques de déploiement

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

Renvoie des données de sparkline et des métriques récapitulatives pour un déploiement spécifique. Intervalle de rafraîchissement : 60 secondes.

ParamètreTypeDescription
sparklineboolInclure les données de sparkline
rangechaînePlage temporelle : 1h, 6h, 24h, 7d ou 30d

Journaux de déploiement

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

Renvoie les entrées de journal récentes avec un filtre de gravité optionnel et une pagination.

ParamètreTypeDescription
limitintNombre max d'entrées à renvoyer (par défaut : 50, max : 200)
severitychaîneFiltre de gravité séparé par des virgules
pageTokenchaîneJeton de pagination provenant de la réponse précédente

Santé du déploiement

GET /api/deployments/{deploymentId}/health

Renvoie le statut de santé avec la latence de réponse.

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

Optimisation des performances

Utilise les données de surveillance pour optimiser tes déploiements :

Si la latence est trop élevée :

  1. Vérifie le nombre d'instances (peut-être en faut-il davantage)
  2. Vérifie que la taille du modèle est appropriée
  3. Envisage une région plus proche
  4. Vérifie la taille des images envoyées
Réduction de la latence

Passe de imgsz=1280 à imgsz=640 pour un gain de vitesse d'environ 4x avec une perte de précision minimale pour la plupart des cas d'utilisation. Déploie dans une région plus proche de tes utilisateurs pour une latence réseau plus faible.

FAQ

Combien de temps les données sont-elles conservées ?

Type de donnéesRétention
Métriques30 jours
Journaux7 jours

Puis-je configurer une surveillance externe ?

Oui, les URLs d'endpoints fonctionnent avec des outils de surveillance externes :

  • Surveillance de disponibilité (Pingdom, UptimeRobot)
  • Outils APM (Datadog, New Relic)
  • Vérifications de santé personnalisées via l'endpoint /health

Quelle est la précision des chiffres de latence ?

Les métriques de latence mesurent :

  • P50 : Temps de réponse médian
  • P95 : 95e percentile
  • P99 : 99e percentile

Celles-ci représentent le temps de traitement côté serveur, sans inclure la latence réseau vers tes utilisateurs.

Pourquoi mes métriques sont-elles retardées ?

Les métriques ont un délai d'environ 2 minutes dû à :

  • Pipeline d'agrégation des métriques
  • Fenêtres d'agrégation
  • Mise en cache du tableau de bord

Pour un débogage en temps réel, consulte les journaux qui sont quasi instantanés.

Puis-je surveiller plusieurs endpoints ensemble ?

Oui, la page de déploiements affiche tous les endpoints avec des cartes de vue d'ensemble agrégées. Utilise la vue en tableau pour comparer les performances entre les déploiements.

Commentaires