Partager via


À propos de ClientDiagnosticLevel pour le service de cache géré Azure

Notes

Pour obtenir des conseils sur le choix de l’offre Azure Cache appropriée pour votre application, consultez Quelle offre Azure Cache est adaptée à moi ?.

Service de cache géré les applications clientes sont configurées pour la collecte de données de diagnostic à l’aide d’un niveau de diagnostic. Ce dernier fournit un seul paramètre pour la configuration du niveau de collecte des données. Cette rubrique fournit une vue d’ensemble des étapes de résolution des problèmes et des diagnostics pour résoudre les problèmes liés aux applications Service de cache géré.

Important

Dans la version Service de cache géré, clientDiagnosticLevel et étapes client associées décrites dans cette rubrique s’appliquent uniquement aux clients de cache de services cloud basés sur le rôle.

Résolution des problèmes et diagnostics pour les applications Service de cache géré

Les applications s’exécutant sur Azure sont des applications à plusieurs instances largement distribuées qui peuvent être difficiles à déboguer. Les approches et outils standard ne suffisent pas pour dépanner ces types d'applications. La résolution des problèmes des applications Azure dépasse l’étendue de cette rubrique, mais plus d’informations sont disponibles dans Diagnostics et Débogage dans Azure.

La configuration de Service de cache géré applications pour collecter des données de diagnostic pour la résolution des problèmes nécessite la configuration du niveau de diagnostic et la configuration des diagnostics de cache lors du démarrage du rôle. Cette rubrique fournit une vue d’ensemble de ces étapes pour les applications Service de cache géré.

  • Configuration du niveau de diagnostic de client

  • Configuration des diagnostics de cache lors du démarrage du rôle

  • Compteurs de performances par niveau de diagnostic

Configuration du niveau de diagnostic de client

Service de cache géré fournit cinq niveaux de diagnostic client utilisés pour configurer la quantité de collecte de données de diagnostic. Les niveaux de diagnostic vont de 0 à 4. Ce chiffre indique le volume d'informations de diagnostic collectées pour les serveurs et clients de cache. Chaque niveau de diagnostic contient un ensemble préconfiguré de compteurs de performances, des journaux d’événements, du suivi et des paramètres de vidage d’incident qui peuvent être utilisés pour surveiller l’intégrité de votre application Service de cache géré.

Niveau de diagnostic de client Données de diagnostic collectées

0

Journaux de serveur très critiques/catastrophiques uniquement.

1

Données de diagnostic qui aident à évaluer les tendances d'utilisation, l'intégrité du système de cache et les erreurs potentielles. Il s'agit du niveau de configuration par défaut.

2

Données de diagnostic à un niveau de granularité très fin de toutes les demandes et informations système importantes.

3

Données de diagnostic plus détaillées avec des informations système.

4

Journaux extrêmement détaillés pour toutes les demandes et informations système.

Il existe deux types de niveaux de diagnostic de mise en cache qui correspondent au diagnostic du client de cache et au diagnostic du serveur de cache. DiagnosticLevel représente les diagnostics du serveur de cache et ClientDiagnosticLevel représente les diagnostics du client de cache. Chaque niveau configure un ensemble différent de compteurs de performances, de journaux, de suivis et de paramètres de vidage sur incident. Ces niveaux de diagnostic sont configurés dans le fichier ServiceConfiguration.cscfg pour l'application, et peuvent être modifiés pour une application cloud en cours d'exécution par simple déploiement d'un fichier ServiceConfiguration.cscfg mis à jour.

Le niveau ClientDiagnosticLevel pour un client de cache est spécifié dans ServiceConfiguration.cscfg, dans la section de configuration du rôle qui est le client de cache. Ce paramètre est ajouté par le package Service de cache géré NuGet lorsque le rôle est configuré pour agir en tant que client de cache.

Notes

Pour plus d’informations sur la configuration des clients de cache à l’aide du package Service de cache géré NuGet, consultez Guide pratique pour configurer un client de cache pour Azure Service de cache géré.

ClientDiagnosticLevel par défaut est 1, et si aucun ClientDiagnosticLevel n’est présent pour le rôle, un ClientDiagnosticLevel de 1 est utilisé. Pour modifier le paramètre ClientDiagnosticLevel, modifiez le paramètre ClientDiagnosticLevel pour le rôle dans ServiceConfiguration.cscfg. L’exemple suivant est la WebRole1 section d’un fichier ServiceConfiguration.cscfg avec un ClientDiagnosticLevel de 1.

<Role name="WebRole1">
  <Instances count="1" />
  <ConfigurationSettings>
    <!-- Other settings omitted for clarity... -->
    <Setting name="Microsoft.WindowsAzure.Plugins.Caching.ClientDiagnosticLevel" value="1" />
  </ConfigurationSettings>
</Role>

Le tableau suivant répertorie les données de diagnostic collectées pour chaque niveau de diagnostic de client.

Notes

Les paramètres de vidage sur incident pour les niveaux de diagnostic de client sont pertinents uniquement pour les clients de cache utilisant le shim de client Memcache. Les vidages sur incident ne sont pas collectés pour les clients non-Memcache. Pour plus d’informations sur le shim client Memcache, consultez Exécuter votre application Memcache avec Azure Service de cache géré.

ClientDiagnosticLevel Données collectées

0

  • Niveau du journal : critique

  • Aucun compteur de performances

  • Aucun journal d'événements enregistré

  • Mini-vidages sur incident

1

2

3

4

Notes

Lors de l’exécution d’applications clientes Service de cache géré dans l’émulateur Azure, les traces de toutes les instances de rôle sont collectées sous le dossier *_IN_0, même lorsqu’il existe plusieurs instances de rôle. Ce comportement est normal. Lorsque Service de cache géré applications sont hébergées dans Azure, les traces de chaque instance de rôle client se trouvent dans les dossiers respectifs des instances de rôle.

Configuration des diagnostics de cache lors du démarrage du rôle

Pour démarrer la collecte des données de diagnostic de mise en cache, le code suivant doit être appelé lors du démarrage des rôles. Ce code doit être ajouté à chaque rôle correspondant à un client ou serveur de cache pour que les données de diagnostic de la mise en cache soient collectées. Un emplacement pratique pour héberger ce code se trouve dans le remplacement OnStart du rôle, comme illustré dans l’exemple suivant.

public override bool OnStart()
{
    DiagnosticMonitorConfiguration dmConfig = 
        DiagnosticMonitor.GetDefaultInitialConfiguration();

    // Configure the collection of cache diagnostic data.
    CacheDiagnostics.ConfigureDiagnostics(dmConfig);

    DiagnosticMonitor.Start("Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString", 
        dmConfig);

    return base.OnStart();
}
Public Overrides Function OnStart() As Boolean

    ' Existing OnStart override code omitted for clarity.

    Dim dmConfig As DiagnosticMonitorConfiguration = _
        DiagnosticMonitor.GetDefaultInitialConfiguration()

    ' Configure the collection of cache diagnostic data.
    CacheDiagnostics.ConfigureDiagnostics(dmConfig)

    DiagnosticMonitor.Start("Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString", _
        dmConfig)

    Return MyBase.OnStart()

End Function

La méthode O:Microsoft.ApplicationServer.Caching.AzureCommon.CacheDiagnostics.ConfigureDiagnostics configure la collection de données de diagnostic de mise en cache. Si cette méthode n'est pas appelée, les données de diagnostic de la mise en cache ne sont pas collectées. Pour utiliser la classe CacheDiagnostics , ajoutez une référence à Microsoft.ApplicationServer.Caching.AzureCommon.dll située dans C:\Program Files\Microsoft SDKs\Azure\.NET SDK\[Version actuelle du SDK]\ref\Caching, puis ajoutez l’instruction (ouImports) suivante.

using Microsoft.ApplicationServer.Caching.AzureCommon;
Imports Microsoft.ApplicationServer.Caching.AzureCommon

Notes

Si le rôle a été configuré en tant que client de cache à l’aide du package Service de cache géré NuGet, la référence d’assembly Microsoft.ApplicationServer.Caching.AzureCommon.dll est déjà ajoutée.

Si vous ajoutez la mise en cache à un code de configuration de rôle et de configuration de diagnostic existant, vous pouvez ajouter l’appel à O:Microsoft.ApplicationServer.Caching.AzureCommon.CacheDiagnostics.ConfigureDiagnostics au code de démarrage de diagnostic existant avant l’appel à O:Microsoft.WindowsAzure.Diagnostics.DiagnosticMonitor.Start.

Avertissement

L’appel de O:Microsoft.ApplicationServer.Caching.AzureCommon.CacheDiagnostics.ConfigureDiagnostics et O:Microsoft.WindowsAzure.Diagnostics.DiagnosticMonitor.Start est requis pour la collecte de données de diagnostic dans Service de cache géré applications. Si ces deux méthodes ne sont pas appelées lors du démarrage du rôle, les données de diagnostic de la mise en cache ne sont pas collectées.

Compteurs de performances par niveau de diagnostic

Les sections suivantes contiennent les listes des compteurs de performances inclus dans chaque niveau de diagnostic de serveur et de client. Les compteurs Service de cache géré et les compteurs de performances sont inclus. Pour obtenir une liste complète avec des descriptions des compteurs de performances Service de cache géré, consultez Monitor Azure Service de cache géré. Pour plus d’informations sur les compteurs de performances, consultez Compteurs de performances dans .NET Framework.

  • Compteurs de performances du niveau 1 de diagnostic de client

  • Compteurs de performances des niveaux de diagnostic de client 2, 3 et 4

Compteurs de performances du niveau 1 de diagnostic de client

Le niveau ClientDiagnosticLevel 1 inclut les compteurs de performances suivants.

  • \Mise en cache Azure:Hôte client\Exceptions après une erreur

  • \Mise en cache Azure:Hôte client\Nombre total d'accès au cache local

  • \Mise en cache Azure:Hôte client\Connexions actuelles au serveur

  • \Mise en cache Azure:Hôte client\Latence Get moyenne/microseconde d'opération

  • \Mise en cache Azure:Hôte client\Latence Put moyenne/microseconde d'opération

  • \Mise en cache Azure:Hôte client\Exceptions après une nouvelle tentative

  • \Mise en cache Azure:Hôte client\Exceptions après l'expiration d'un délai d'attente

  • \Mise en cache Azure:Hôte client\Demandes

  • \Processeur(_Total)\% Temps processeur

  • \Mémoire CLR .NET(_Global_)\% temps de nettoyage

  • \Mise en cache Azure:Client(*)\Exceptions après une erreur

  • \Mise en cache Azure:Client(*)\Nombre total d'accès au cache local

  • \Mise en cache Azure:Client(*)\Connexions actuelles au serveur

  • \Mise en cache Azure:Client(*)\Latence Get moyenne/microseconde d'opération

  • \Mise en cache Azure:Client(*)\Latence Put moyenne/microseconde d'opération

  • \Mise en cache Azure:Client(*)\Exceptions après une nouvelle tentative

  • \Mise en cache Azure:Client(*)\Exceptions après l'expiration d'un délai d'attente

  • \Mise en cache Azure:Client(*)\Demandes

Compteurs de performances des niveaux de diagnostic de client 2, 3 et 4

Les niveaux ClientDiagnosticLevel 2, 3 et 4 incluent les compteurs de performances suivants.

  • \Mise en cache Azure:Hôte client\Demandes

  • \Mise en cache Azure:Hôte client\Demandes/s

  • \Mise en cache Azure:Hôte client\Réponses de serveur abandonnées/s

  • \Mise en cache Azure:Hôte client\Exceptions après une erreur

  • \Mise en cache Azure:Hôte client\Exceptions après une erreur/s

  • \Mise en cache Azure:Hôte client\Latence Get moyenne/microseconde d'opération

  • \Mise en cache Azure:Hôte client\Latence Put moyenne/microseconde d'opération

  • \Mise en cache Azure:Hôte client\Latence Get moyenne (Réseau)/Microseconde d'opération

  • \Mise en cache Azure:Hôte client\Demandes de lecture

  • \Mise en cache Azure:Hôte client\Demandes d'écriture

  • \Mise en cache Azure:Hôte client\Octets reçus/s

  • \Mise en cache Azure:Hôte client\Octets envoyés/s

  • \Mise en cache Azure:Hôte client\Connexions actuelles au serveur

  • \Mise en cache Azure:Hôte client\Pourcentage de traitement par le cache local

  • \Mise en cache Azure:Hôte client\Pourcentage d'accès au cache local

  • \Mise en cache Azure:Hôte client\Nombre total d'accès au cache local

  • \Mise en cache Azure:Hôte client\Nombre total d'objets dans le cache local

  • \Mise en cache Azure:Hôte client\Nombre total de notifications reçues

  • \Mise en cache Azure:Hôte client\Exceptions après l'expiration d'un délai d'attente

  • \Mise en cache Azure:Hôte client\Exceptions après l'expiration d'un délai d'attente/s

  • \Mise en cache Azure:Hôte client\Exceptions après une nouvelle tentative

  • \Mise en cache Azure:Hôte client\Exceptions après une nouvelle tentative/s

  • \Mise en cache Azure:Hôte client\Nombre total de demandes de connexion ayant échoué

  • \Mise en cache Azure:Hôte client\Exceptions de réseau

  • \Mise en cache Azure:Hôte client\Exceptions de réseau/s

  • \Mise en cache Azure:Hôte client\Demandes actuelles en attente

  • \Processeur(_Total)\% Temps processeur

  • \Mémoire CLR .NET(_Global_)\% temps de nettoyage

  • \Mise en cache Azure:Client(*)\Demandes

  • \Mise en cache Azure:Client(*)\Demandes/s

  • \Mise en cache Azure:Client(*)\Réponses de serveur abandonnées/s

  • \Mise en cache Azure:Client(*)\Exceptions après une erreur

  • \Mise en cache Azure:Client(*)\Exceptions après une erreur/s

  • \Mise en cache Azure:Client(*)\Latence Get moyenne/microseconde d'opération

  • \Mise en cache Azure:Client(*)\Latence Put moyenne/microseconde d'opération

  • \Mise en cache Azure:Client(*)\Latence Get moyenne (Réseau)/microseconde d'opération

  • \Mise en cache Azure:Client(*)\Demandes de lecture

  • \Mise en cache Azure:Client(*)\Demandes d'écriture

  • \Mise en cache Azure:Client(*)\Octets reçus/s

  • \Mise en cache Azure:Client(*)\Octets envoyés/s

  • \Mise en cache Azure:Client(*)\Connexions actuelles au serveur

  • \Mise en cache Azure:Client(*)\Pourcentage de traitement par le cache local

  • \Mise en cache Azure:Client(*)\Pourcentage d'accès au cache local

  • \Mise en cache Azure:Client(*)\Nombre total d'accès au cache local

  • \Mise en cache Azure:Client(*)\Nombre total d'objets dans le cache local

  • \Mise en cache Azure:Client(*)\Nombre total de notifications reçues

  • \Mise en cache Azure:Client(*)\Exceptions après l'expiration d'un délai d'attente

  • \Mise en cache Azure:Client(*)\Exceptions après l'expiration d'un délai d'attente/s

  • \Mise en cache Azure:Client(*)\Exceptions après une nouvelle tentative

  • \Mise en cache Azure:Client(*)\Exceptions après une nouvelle tentative/s

  • \Mise en cache Azure:Client(*)\Nombre total de demandes de connexion ayant échoué

  • \Mise en cache Azure:Client(*)\Exceptions de réseau

  • \Mise en cache Azure:Client(*)\Exceptions de réseau/s

  • \Mise en cache Azure:Client(*)\Demandes actuelles en attente

Voir aussi

Informations de référence

Microsoft.WindowsAzure.Diagnostics.DiagnosticMonitor

Concepts

Surveillance du service de cache géré Azure

Autres ressources

Compteurs de performance dans le .NET Framework
Diagnostics et débogage dans Azure