Monitoraggio
La piattaforma Ultralytics fornisce il monitoraggio per gli endpoint in deployment. Traccia le metriche delle richieste, visualizza i log e controlla lo stato di salute con polling automatico.

Dashboard dei Deployment
Il Deploy pagina nella barra laterale funge da dashboard di monitoraggio per tutte le tue implementazioni. Combina la mappa del mondo, le metriche di panoramica e la gestione delle implementazioni in un'unica visualizzazione. Vedi Endpoint Dedicati per la creazione e la gestione delle distribuzioni.
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
Schede di Panoramica
Quattro schede riassuntive nella parte superiore della pagina mostrano:

| Metrica | Descrizione |
|---|---|
| Richieste Totali (24h) | Richieste su tutti gli endpoint |
| Distribuzioni Attive | Endpoint attualmente in esecuzione |
| Tasso di errore (24h) | Percentuale di richieste fallite |
| Latenza P95 (24h) | tempo di risposta al 95° percentile |
Avviso tasso di errore
La scheda del tasso di errore evidenzia in rosso quando il tasso supera il 5%. Controlla il Logs scheda sui singoli deployment per diagnosticare gli errori.
Mappa del mondo
La mappa del mondo interattiva mostra:
- Pin di regione per tutte le 43 regioni disponibili
- Spille verdi per le regioni distribuite
- Puntine blu animate per le regioni con distribuzioni attive in corso
- Dimensione del pin varia in base allo stato di deployment e alla latenza

Elenco dei Deployment
Sotto le schede di panoramica, l'elenco delle distribuzioni mostra tutti gli endpoint dei tuoi progetti. Usa l'interruttore della modalità di visualizzazione per passare tra:
| Visualizza | Descrizione |
|---|---|
| Schede | Schede dettagliate complete con metriche, log, codice e schede di previsione |
| Compatto | Griglia di schede più piccole (1-4 colonne) con metriche chiave |
| Tabella | DataTable con colonne ordinabili: Nome, Regione, Stato, Richieste, P95, Errori |
Aggiornamenti in tempo reale
La dashboard interroga ogni 30 secondi per gli aggiornamenti delle metriche. Quando i deployment sono in uno stato transitorio (creazione, deployment), l'interrogazione aumenta a ogni 3 secondi. Clicca il pulsante di aggiornamento per aggiornamenti immediati.
Metriche per deployment
Ogni scheda di deployment (nella vista a schede) mostra metriche in tempo reale:
Riga delle metriche
| Metrica | Descrizione |
|---|---|
| Richieste | Conteggio richieste (24h) con icona |
| Latenza P95 | tempo di risposta al 95° percentile |
| Tasso di Errore | Percentuale di richieste fallite |
Le metriche vengono recuperate dall'endpoint API sparkline e si aggiornano ogni 60 secondi.
Controllo dello stato
Le distribuzioni in esecuzione mostrano un indicatore di stato:
| Indicatore | Significato |
|---|---|
| Cuore verde | Funzionante — mostra la latenza di risposta |
| Cuore rosso | Non integro — mostra messaggio di errore |
| Icona rotante | Health check in corso |
I controlli dello stato si riprovano automaticamente ogni 20 secondi in caso di malfunzionamento. Clicca sull'icona di aggiornamento per avviare manualmente un controllo dello stato. Il controllo dello stato utilizza un timeout di 55 secondi per gestire gli avvii a freddo su endpoint con scalabilità a zero.

Tolleranza all'Avvio a Freddo
Il controllo di integrità utilizza un timeout di 55 secondi per tenere conto degli avvii a freddo sugli endpoint scale-to-zero (fino a circa 45 secondi nel caso peggiore). Una volta che l'endpoint si è riscaldato, i controlli di integrità si completano in millisecondi.
Log
Ogni scheda di deployment include un Logs scheda per visualizzare le voci di registro recenti:

Voci di Log
Ogni voce di log mostra:
| Campo | Descrizione |
|---|---|
| Gravità | Barra codificata a colori (vedi sotto) |
| Timestamp | Ora della richiesta (formato locale) |
| Messaggio | Contenuto del log |
| Informazioni HTTP | Codice di stato e latenza (se applicabile) |
Filtra i log per gravità utilizzando i pulsanti di filtro:
| Livello | Colore | Descrizione |
|---|---|---|
| DEBUG | Grigio | Messaggi di debug |
| INFO | Blu | Richieste normali |
| WARNING | Giallo | Problemi non critici |
| ERRORE | Rosso | Richieste fallite |
| CRITICO | Rosso Scuro | Guasti critici |
| Controllo | Descrizione |
|---|---|
| Errori | Filtra per voci di ERRORE e AVVISO |
| Tutti i | Mostra tutte le voci di registro |
| Copia | Copia tutti i log visibili negli appunti |
| Aggiorna | Ricarica le voci di log |
L'interfaccia utente mostra le 20 voci più recenti. L'API imposta di default 50 voci per richiesta (max 200).
Flusso di lavoro di debug
Quando si indagano gli errori: prima cliccare su Errori per filtrare le voci ERROR e WARNING, quindi rivedere i timestamp e i codici di stato HTTP. Copiare i log negli appunti per condividerli con il proprio team.
Esempi di Codice
Ogni scheda di deployment include un Code scheda che mostra il codice API pronto all'uso con l'URL dell'endpoint effettivo e la chiave 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"
Credenziali Popolate Automaticamente
Quando si visualizza il Code scheda nella piattaforma, l'URL dell'endpoint effettivo e la chiave API vengono compilati automaticamente. Copia il codice ed eseguilo direttamente. Vedi Chiavi API per generare una chiave.
Previsione del Deployment
Il Predict scheda su ogni scheda di deployment fornisce un pannello di previsione inline — la stessa interfaccia del modello Predict scheda, ma eseguendo l'inferenza tramite l'endpoint di deployment invece che tramite il servizio condiviso. Ciò è utile per testare un endpoint di deployment direttamente dal browser. Vedi Inferenza per i dettagli dei parametri e i formati di risposta.
Endpoint API
Panoramica del Monitoraggio
GET /api/monitoring
Restituisce metriche aggregate per tutti i deployment di proprietà dell'utente autenticato. Sensibile allo spazio di lavoro tramite opzione owner parametro di query.
Metriche del Deployment
GET /api/deployments/{deploymentId}/metrics?sparkline=true&range=24h
Restituisce i dati sparkline e le metriche di riepilogo per un deployment specifico. Intervallo di aggiornamento: 60 secondi.
| Parametro | Tipo | Descrizione |
|---|---|---|
sparkline | booleano | Includi dati sparkline |
range | string | Intervallo di tempo: 1h, 6h, 24h, 7d, oppure 30d |
Log del Deployment
GET /api/deployments/{deploymentId}/logs?limit=50&severity=ERROR,WARNING
Restituisce le voci di log recenti con filtro di severità opzionale e paginazione.
| Parametro | Tipo | Descrizione |
|---|---|---|
limit | int | Numero massimo di voci da restituire (predefinito: 50, massimo: 200) |
severity | string | Filtro di gravità separato da virgole |
pageToken | string | Token di paginazione dalla risposta precedente |
Stato del Deployment
GET /api/deployments/{deploymentId}/health
Restituisce lo stato dell'health check con la latenza di risposta.
{
"healthy": true,
"status": 200,
"latencyMs": 142
}
Ottimizzazione delle performance
Utilizzare i dati di monitoraggio per ottimizzare le distribuzioni:
Se la latenza è troppo elevata:
- Verifica il numero di istanze (potrebbero esserne necessarie di più)
- Verifica che la dimensione del modello sia appropriata
- Considera una regione più vicina
- Controlla le dimensioni delle immagini inviate
Riduzione della Latenza
Passa da imgsz=1280 a imgsz=640 per un aumento di velocità di circa 4 volte con una perdita minima di precisione per la maggior parte dei casi d'uso. Effettua il deployment in una regione più vicina ai tuoi utenti per una latenza di rete inferiore.
Se si verificano errori:
- Controlla i log degli errori nel
Logsscheda - Verifica il formato della richiesta (è richiesto un form multipart).
- Verificare che la chiave API sia valida
- Verificare i limiti di frequenza
In caso di raggiungimento della capacità:
- Valutare l'utilizzo di più regioni
- Ottimizzare il batching delle richieste
- Aumenta le risorse di CPU e memoria
FAQ
Per quanto tempo vengono conservati i dati?
| Tipo di dati | Periodo di conservazione |
|---|---|
| Metriche | 30 giorni |
| Log | 7 giorni |
È possibile configurare un monitoraggio esterno?
Sì, gli URL degli endpoint funzionano con strumenti di monitoraggio esterni:
- Monitoraggio dell'uptime (Pingdom, UptimeRobot)
- Strumenti APM (Datadog, New Relic)
- Controlli di salute personalizzati tramite il
/healthendpoint
Quanto sono accurati i valori di latenza?
Le metriche di latenza misurano:
- P50: Tempo di risposta mediano
- P95: 95° percentile
- P99: 99° percentile
Questi rappresentano il tempo di elaborazione lato server, esclusa la latenza di rete verso i tuoi utenti.
Perché le mie metriche sono in ritardo?
Le metriche hanno un ritardo di circa 2 minuti a causa di:
- Pipeline di aggregazione delle metriche
- Finestre di aggregazione
- Caching della dashboard
Per il debug in tempo reale, controlla i log che sono quasi istantanei.
È possibile monitorare più endpoint contemporaneamente?
Sì, la pagina dei deployment mostra tutti gli endpoint con schede di panoramica aggregate. Utilizza la vista tabella per confrontare le prestazioni tra i vari deployment.