Come monitorare la latenza lato server per le operazioni in un contenitore o nell'account Azure Cosmos DB

SI APPLICA A: NoSQL MongoDB Cassandra Gremlin Tabella

Monitoraggio di Azure per Azure Cosmos DB offre una visualizzazione delle metriche per monitorare l'account e creare dashboard. Le metriche di Azure Cosmos DB vengono raccolte per impostazione predefinita, quindi per questa funzionalità non è necessario abilitare o configurare alcunché in modo esplicito. La metrica diretta della latenza lato server e la metrica gateway di latenza lato server vengono usate per visualizzare la latenza lato server di un'operazione in due diverse modalità di connessione. Usare la metrica gateway di latenza lato server se l'operazione di richiesta è in modalità di connettività Gateway. Usare la metrica diretta della latenza lato server se l'operazione di richiesta è in modalità di connettività Direct. Azure Cosmos DB fornisce un contratto di servizio inferiore a 10 ms per le operazioni di lettura/scrittura di punti con connettività diretta. Per le operazioni di lettura e scrittura di punti, i contratti di servizio vengono calcolati come descritto in dettaglio nel Documento del contratto di servizio. Per ottenere maggiori informazioni sulla modalità di connessione, consultare l'articolo Modalità di connettività di Azure Cosmos DB SQL SDK.

Nella tabella seguente viene indicato quale API supporta le metriche di latenza lato server (modalità Direct vs Gateway):

API Direct latenza lato server Gateway latenza lato server
SQL
MongoDB
Cassandra
Gremlin
Tabella

È possibile monitorare le metriche della latenza lato server se si riscontra una latenza insolitamente elevata per operazione di punti, ad esempio:

  • Operazione GET o SET con chiave di partizione e ID
  • Operazione di lettura o scrittura oppure
  • Una query

È possibile cercare il log di diagnostica per visualizzare le dimensioni dei dati restituiti. Se si riscontra una latenza elevata e prolungata per le operazioni di query, è consigliabile cercare nel log di diagnostica una velocità effettiva più elevata o le UR/sec utilizzate. La latenza lato server mostra la quantità di tempo impiegato nell'infrastruttura back-end prima che i dati vengano restituiti al client. È importante esaminare questa metrica per escludere eventuali problemi di latenza back-end.

Visualizzare le metriche di latenza lato server

  1. Accedere al portale di Azure.

  2. Nel menu di spostamento a sinistra selezionare Monitoraggio quindi selezionare Metriche.

    Metrics pane in Azure Monitor

  3. Nel riquadro Metriche>Selezionare una risorsa> scegliere la sottoscrizione richiesta e il gruppo di risorse. Per Tipo di risorsa, selezionare Account Azure Cosmos DB, scegliere uno degli account Azure Cosmos DB esistenti e selezionare Applica.

    Select the account scope to view metrics

  4. Selezionare quindi la metrica Gateway latenza lato server dall'elenco delle metriche disponibili, se l'operazione è in modalità di connettività Gateway. Selezionare la metrica Direct latenza lato server, se l'operazione è in modalità di connettività Direct. Per informazioni dettagliate su tutte le metriche disponibili in questo elenco, vedere l'articolo Metriche per categoria. Nell'esempio riportato di seguito, viene selezionata Gateway latenza lato server e Avg come valore di aggregazione. Oltre a questi dettagli, è anche possibile selezionare l'Intervallo di tempo e la Granularità temporale delle metriche. Al massimo, è possibile visualizzare le metriche degli ultimi 30 giorni. Dopo aver applicato il filtro, viene visualizzato un grafico in base al filtro. È possibile visualizzare la latenza lato server in modalità di connettività Gateway per 5 minuti per il periodo selezionato.

    Choose the Server-Side Latency Gateway metric from the Azure portal

Filtri per latenza lato server

È anche possibile filtrare le metriche e ottenere i grafici visualizzati in base a un elemento specifico: CollectionName, DatabaseName, OperationType, Region, PublicAPIType.

Per filtrare le metriche, selezionare Aggiungi filtro e scegliere la proprietà richiesta, ad esempio PublicAPIType, e selezionare un valore, ad esempio SQL. Selezionare Applica suddivisione per OperationType. Il grafico mostra quindi la latenza lato server per diverse operazioni in modalità di connessione Gateway durante il periodo selezionato. Le operazioni eseguite tramite stored procedure non vengono registrate e quindi non sono disponibili nella metrica OperationType.

Le metriche Gateway latenza lato server per ogni operazione vengono visualizzate come illustrato nell'immagine seguente:

Filters for server-side latency gateway metrics

È possibile raggruppare le metriche usando l'opzione Applicare suddivisione.

Nota

Le richieste provenienti da Azure Cosmos DB non sempre si rivolgono ai contenitori. Ad esempio, è possibile creare un database all'interno di un account distribuito a livello globale e la richiesta verrà comunque registrata per la metrica di latenza lato server. La richiesta viene registrata perché è necessario del tempo per creare una risorsa di database, ma non si rivolge a un contenitore. Se si nota che il valore della metrica CollectionName è <empty>, ciò significa che la destinazione non è un contenitore, ma un'altra risorsa in Azure Cosmos DB.

Come soluzione alternativa, è possibile filtrare in modo proattivo le metriche in base a un contenitore specifico (CollectionName) per escludere le richieste non specifiche del contenitore oggetto della query.

Passaggi successivi