Surveillance
Ultralytics assure la surveillance des terminaux déployés. Suivez les métriques des requêtes, consultez les journaux et vérifiez l'état de santé grâce à un sondage automatique.

Tableau de bord des déploiements
L'argument Deploy La page dans la barre latérale sert de tableau de bord de surveillance pour tous vos déploiements. Elle combine la carte du monde, les mesures générales et la gestion des déploiements dans une seule vue. Voir Points de terminaison dédiés pour créer et gérer les 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 fiches récapitulatives en haut de la page indiquent :

| Métrique | Description |
|---|---|
| Total des demandes (24 h) | Demandes sur tous les points de terminaison |
| Déploiements actifs | Points de terminaison en cours d'exécution |
| Taux d'erreur (24 h) | Pourcentage de requêtes échouées |
| Latence P95 (24 h) | temps de réponse au 95e centile |
Alerte de taux d'erreur
La carte du taux d'erreur s'affiche en rouge lorsque le taux dépasse 5 %. Vérifiez le Logs onglet sur les déploiements individuels pour diagnostiquer les erreurs.
Carte du monde
La carte interactive du monde montre :
- Épingles régionales pour les 43 régions disponibles
- Épingles vertes pour les régions déployées
- Épingles bleues animées pour les régions où des déploiements actifs sont en cours
- La taille des épingles varie en fonction de l'état de déploiement et de la latence.

Liste des déploiements
Sous les cartes de présentation, la liste des déploiements affiche tous les points de terminaison de vos projets. Utilisez le bouton de mode d'affichage pour basculer entre :
| Afficher | Description |
|---|---|
| Cartes | Fiches détaillées complètes avec onglets métriques, journaux, code et prévisions |
| Compact | Grille de cartes plus petites (1 à 4 colonnes) avec indicateurs clés |
| Tableau | Tableau de données avec colonnes triables : Nom, Région, Statut, Demandes, P95, Erreurs |
Mises à jour en temps réel
Le tableau de bord effectue des sondages toutes les 30 secondes pour mettre à jour les métriques. Lorsque les déploiements sont dans un état transitoire (création, déploiement), la fréquence des sondages passe à toutes les 3 secondes. Cliquez sur le bouton d'actualisation pour obtenir des mises à jour immédiates.
Indicateurs par déploiement
Chaque carte de déploiement (dans la vue Cartes) affiche des métriques en temps réel :
Ligne de mesures
| Métrique | Description |
|---|---|
| Requêtes | Nombre de requêtes (24 h) avec icône |
| Latence P95 | temps de réponse au 95e centile |
| Taux d'erreur | Pourcentage de requêtes échouées |
Les métriques sont récupérées à partir du point de terminaison de l'API Sparkline et actualisées toutes les 60 secondes.
Vérification de l'état
Les déploiements en cours affichent un indicateur de vérification de l'état :
| Indicateur | Signification |
|---|---|
| Cœur vert | Sain — montre une latence de réponse |
| Cœur rouge | Non conforme — affiche un message d'erreur |
| Icône tournante | Contrôle de santé en cours |
Les contrôles d'intégrité sont automatiquement réessayés toutes les 20 secondes lorsqu'ils ne sont pas satisfaisants. Cliquez sur l'icône d'actualisation pour déclencher manuellement un contrôle d'intégrité. Le contrôle d'intégrité utilise un délai d'expiration de 55 secondes pour tenir compte des démarrages à froid sur les points de terminaison à échelle zéro.

Tolérance au démarrage à froid
Le contrôle d'intégrité utilise un délai d'attente de 55 secondes pour tenir compte des démarrages à froid sur les points de terminaison à l'échelle zéro (jusqu'à environ 45 secondes dans le pire des cas). Une fois que le point de terminaison est réchauffé, les contrôles d'intégrité s'effectuent en quelques millisecondes.
Journaux
Chaque carte de déploiement comprend un Logs onglet pour afficher les entrées récentes du journal :

Entrées de journal
Chaque entrée de journal affiche :
| Champ | Description |
|---|---|
| Gravité | Barre à code couleur (voir ci-dessous) |
| Horodatage | Heure de la demande (format local) |
| Message | Contenu du journal |
| Informations HTTP | Code d'état et latence (le cas échéant) |
Filtrez les journaux par gravité à l'aide des boutons de filtre :
| Niveau | Couleur | Description |
|---|---|---|
| DÉBOGAGE | Gris | Messages de débogage |
| INFO | Bleu | Requêtes normales |
| AVERTISSEMENT | Jaune | Problèmes non critiques |
| ERREUR | Rouge | Requêtes échouées |
| CRITIQUE | Rouge foncé | Défaillances critiques |
| Contrôle | Description |
|---|---|
| Erreurs | Filtrer les entrées ERREUR et AVERTISSEMENT |
| Tous les | Afficher toutes les entrées du journal |
| Copier | Copier tous les journaux visibles dans le presse-papiers |
| Actualiser | Recharger les entrées du journal |
L'interface utilisateur affiche les 20 entrées les plus récentes. L'API affiche par défaut 50 entrées par requête (maximum 200).
Débogage du flux de travail
Lorsque vous recherchez des erreurs : cliquez d'abord sur Erreurs pour filtrer les entrées ERREUR et AVERTISSEMENT, puis examinez les horodatages et les codes d'état HTTP. Copiez les journaux dans le presse-papiers pour les partager avec votre équipe.
Exemples de code
Chaque carte de déploiement comprend un Code onglet affichant le code API prêt à l'emploi avec votre URL de point de terminaison et votre clé API réelles :
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"
Identifiants remplis automatiquement
Lorsque vous consultez le Code onglet de la plateforme, votre URL de point de terminaison réelle et votre clé API sont automatiquement renseignées. Copiez le code et exécutez-le directement. Voir Clés API pour générer une clé.
Prévision du déploiement
L'argument Predict L'onglet de chaque carte de déploiement fournit un panneau de prédiction en ligne, identique à l'interface du modèle. Predict onglet, mais en exécutant l'inférence via le point de terminaison de déploiement plutôt que via le service partagé. Cela est utile pour tester un point de terminaison déployé directement à partir du navigateur. Voir Inférence pour plus de détails sur les paramètres et les formats de réponse.
Points de terminaison API
Aperçu de la surveillance
GET /api/monitoring
Renvoie les métriques agrégées pour tous les déploiements appartenant à l'utilisateur authentifié. Compatible avec l'espace de travail via l'option owner paramètre de requête.
Indicateurs de déploiement
GET /api/deployments/{deploymentId}/metrics?sparkline=true&range=24h
Renvoie les données des graphiques sparkline et les mesures récapitulatives pour un déploiement spécifique. Intervalle d'actualisation : 60 secondes.
| Paramètre | Type | Description |
|---|---|---|
sparkline | bool | Inclure les données des graphiques sparkline |
range | chaîne de caractères | Période : 1h, 6h, 24h, 7d, ou 30d |
Journaux de déploiement
GET /api/deployments/{deploymentId}/logs?limit=50&severity=ERROR,WARNING
Renvoie les entrées récentes du journal avec un filtre de gravité et une pagination facultatifs.
| Paramètre | Type | Description |
|---|---|---|
limit | int | Nombre maximal d'entrées à renvoyer (par défaut : 50, maximum : 200) |
severity | chaîne de caractères | Filtre de gravité séparé par des virgules |
pageToken | chaîne de caractères | Jeton de pagination provenant de la réponse précédente |
Santé du déploiement
GET /api/deployments/{deploymentId}/health
Renvoie l'état du contrôle de santé avec la latence de réponse.
{
"healthy": true,
"status": 200,
"latencyMs": 142
}
Optimisation des performances
Utilisez les données de surveillance pour optimiser vos déploiements :
Si la latence est trop élevée :
- Vérifiez le nombre d'instances (il pourrait être nécessaire d'en ajouter)
- Vérifiez que la taille du modèle est appropriée
- Envisager une région plus proche
- Vérifiez la taille des images envoyées
Réduction de la latence
Passer de imgsz=1280 à imgsz=640 pour un gain de vitesse d'environ 4 fois avec une perte de précision minimale dans la plupart des cas d'utilisation. Déployez dans une région plus proche de vos utilisateurs pour réduire la latence du réseau.
Si des erreurs se produisent :
- Consultez les journaux d'erreurs dans le
Logsonglet - Vérifier le format de la demande (formulaire multipart requis)
- Vérifiez que la clé API est valide
- Vérifiez les limites de débit
Si vous atteignez la capacité maximale :
- Envisagez plusieurs régions
- Optimisez le traitement par lots des requêtes
- Augmenter les ressources CPU mémoire
FAQ
Combien de temps les données sont-elles conservées ?
| Type de données | Rétention |
|---|---|
| Métriques | 30 jours |
| Journaux | 7 jours |
Puis-je configurer une surveillance externe ?
Oui, les URL des points de terminaison fonctionnent avec des outils de surveillance externes :
- Surveillance de la disponibilité (Pingdom, UptimeRobot)
- Outils APM (Datadog, New Relic)
- Contrôles de santé personnalisés via le
/healthpoint final
Quelle est la précision des chiffres de latence ?
Les métriques de latence mesurent :
- P50 : Temps de réponse médian
- P95 : 95e centile
- P99 : 99e centile
Celles-ci représentent le temps de traitement côté serveur, sans inclure la latence réseau vers vos utilisateurs.
Pourquoi mes métriques sont-elles retardées ?
Les métriques présentent un délai d'environ 2 minutes en raison de :
- Pipeline d'agrégation des métriques
- Fenêtres d'agrégation
- Mise en cache du tableau de bord
Pour le débogage en temps réel, consultez les journaux qui sont quasi instantanés.
Puis-je surveiller plusieurs points de terminaison simultanément ?
Oui, la page Déploiements affiche tous les points de terminaison avec des cartes récapitulatives agrégées. Utilisez la vue tableau pour comparer les performances entre les déploiements.