Comment surveiller la latence côté serveur pour les opérations dans un conteneur ou compte Azure Cosmos DB
S’APPLIQUE À : NoSQL MongoDB Cassandra Gremlin Table
Azure Monitor pour Azure Cosmos DB fournit une vue de métriques pour surveiller votre compte et créer des tableaux de bord. Cette fonctionnalité ne vous oblige pas à activer ou à configurer quoi que ce soit explicitement, car ces métriques Azure Cosmos DB sont collectées par défaut. Les métriques de latence directe et de latence de passerelle côté serveur sont utilisées pour voir la latence côté serveur d’une opération dans deux modes de connexion différents. Utilisez une métrique de latence de passerelle côté serveur si votre opération de requête est en mode connectivité de passerelle. Utilisez une métrique de latence directe côté serveur si votre opération de requête est en mode connectivité directe. Azure Cosmos DB fournit un contrat de niveau de service de moins de 10 ms pour les opérations de lecture/écriture de point avec connectivité directe. Pour les opérations de lecture de point et d’écriture de point, les contrats de niveau de service sont calculés comme détaillé dans le document SLA. Pour plus d’informations sur le mode de connexion, consultez l’article Modes de connectivité.
Le tableau suivant indique quelle API prend en charge les métriques de latence côté serveur (directe et de passerelle) :
API | Latence directe côté serveur | Latence de passerelle côté serveur |
---|---|---|
SQL | ✓ | ✓ |
MongoDB | ✓ | |
Cassandra | ✓ | |
Gremlin | ✓ | |
Table de charge de travail | ✓ | ✓ |
Vous pouvez surveiller les métriques de latence côté serveur si vous constatez une latence anormalement élevée pour une opération à virgule flottante telle que :
- Une opération GET ou SET avec clé de partition et ID
- Une opération de lecture ou d'écriture, ou
- Une requête
Vous pouvez consulter le journal de diagnostic pour connaître la taille des données retournées. Si vous constatez une latence élevée soutenue pour les opérations de requête, vous devez parcourir le journal de diagnostic à la recherche d’un débit (ou RU/seconde) supérieur. La latence côté serveur indique le temps passé sur l’infrastructure principale avant que les données ne soient retournées au client. Il est important d’examiner cette mesure pour éliminer les éventuels problèmes de latence du serveur principal.
Consultez les métriques de latence côté serveur
Connectez-vous au portail Azure.
Sélectionnez Surveillance dans la barre de navigation gauche, puis sélectionnez Métriques.
À partir du volet Métriques>Sélectionner une ressource> choisissez l’abonnement exigé, puis Groupe de ressources. Pour le Type de ressource, sélectionnez Comptes Azure Cosmos DB, choisissez un de vos comptes Azure Cosmos DB existants, puis sélectionnez Appliquer.
Sélectionnez ensuite la métrique Latence de passerelle côté serveur dans la liste des métriques disponibles si votre opération est en mode connectivité de passerelle. Sélectionnez la métrique Latence directe côté serveur si votre opération est en mode connectivité directe. Pour découvrir de plus près toutes les métriques disponibles dans cette liste, consultez l’article Métriques par catégorie. Dans cet exemple, sélectionnons Latence de passerelle côté serveur et Moy comme valeur d’agrégation. En plus de ces détails, vous pouvez également sélectionner l’intervalle de temps et la granularité temporelle des métriques. Au maximum, vous pouvez voir les métriques des 30 derniers jours. Une fois que vous avez appliqué le filtre, un graphique s’affiche. Vous pouvez voir la latence côté serveur en mode connectivité de passerelle par tranche de 5 minutes pour la période sélectionnée.
Filtres pour la latence côté serveur
Vous pouvez également filtrer les métriques et afficher les graphiques par valeur spécifique CollectionName, DatabaseName, OperationType, Region et PublicAPIType.
Pour filtrer les métriques, sélectionnez Ajouter un filtre et choisissez la propriété nécessaire comme PublicAPIType, puis sélectionnez une valeur comme Sql. Pour OperationType, sélectionnez Appliquer le fractionnement. Le graphique affiche ensuite la latence côté serveur pour différentes opérations en mode connexion de passerelle au cours de la période sélectionnée. Les opérations exécutées par procédure stockée ne sont pas journalisées si bien qu’elles ne sont pas disponibles sous la métrique OperationType.
Les métriques de Latence de passerelle côté serveur pour chaque opération s’affichent comme illustré dans l’image suivante :
Vous pouvez également regrouper des métriques à l’aide de l’option Appliquer la division.
Notes
Les demandes entrantes dans Azure Cosmos DB ne ciblent pas toujours un conteneur. Par exemple, vous pouvez créer une base de données à l’intérieur d’un compte distribué globalement et la demande sera toujours enregistrée pour la métrique de latence côté serveur. La requête est enregistrée, car il faut du temps pour créer une ressource de base de données, mais elle ne cible pas de conteneur. Si vous voyez que la valeur de la métrique CollectionName
est de <empty>
, cela signifie que la cible n’est pas un conteneur, mais une autre ressource dans Azure Cosmos DB.
En guise de solution de contournement, vous pouvez filtrer de manière proactive vos métriques sur un conteneur spécifique (CollectionName) pour exclure les requêtes qui ne sont pas spécifiques au conteneur qui est l’objet de votre requête.
Étapes suivantes
- Superviser les données d’Azure Cosmos DB en utilisant des paramètres de diagnostic dans Azure.
- Guide pratique pour auditer les opérations de plan de contrôle Azure Cosmos DB