Utiliser des compteurs de performances pour diagnostiquer les problèmes de performances des applications sur les hôtes de session de bureau à distance

  • 01/19/2021
  • 5 minutes à lire
    • l
    • H
    • e
    • D
    • i
    • +2

S’applique à: Serveur Windows 2019, Windows 10

L’un des problèmes les plus difficiles à diagnostiquer est la mauvaise performance des applications — les applications s’exécutent lentement ou ne répondent pas. Traditionnellement, vous commencez votre diagnostic en collectant le processeur, la mémoire, les entrées / sorties de disque et d’autres métriques, puis utilisez des outils tels que Windows Performance Analyzer pour essayer de comprendre la cause du problème. Malheureusement, dans la plupart des situations, ces données ne vous aident pas à identifier la cause première, car les compteurs de consommation de ressources présentent des variations fréquentes et importantes. Cela rend difficile la lecture des données et leur corrélation avec le problème signalé.

Note

Le compteur de retard d’entrée utilisateur est uniquement compatible avec:

  • Windows Server 2019 ou version ultérieure
  • Windows 10, version 1809 ou version ultérieure

Le compteur de retard d’entrée utilisateur peut vous aider à identifier rapidement la cause première des mauvaises expériences RDP de l’utilisateur final. Ce compteur mesure combien de temps une entrée utilisateur (telle que l’utilisation de la souris ou du clavier) reste dans la file d’attente avant qu’elle ne soit captée par un processus, et le compteur fonctionne à la fois dans les sessions locales et distantes.

L’image suivante montre une représentation approximative du flux d’entrée utilisateur du client à l’application.

 Bureau à distance - Les flux d'entrée utilisateur du client de bureau à distance des utilisateurs vers l'application

Le compteur de retard d’entrée utilisateur mesure le delta maximal (dans un intervalle de temps) entre l’entrée mise en file d’attente et le moment où elle est captée par l’application dans une boucle de message traditionnelle, comme indiqué dans l’organigramme suivant:

 Bureau à distance - Débit du compteur de performances de retard d'entrée de l'utilisateur

Un détail important de ce compteur est qu’il signale le délai d’entrée maximal de l’utilisateur dans un intervalle configurable. C’est le temps le plus long qu’il faut à une entrée pour atteindre l’application, ce qui peut avoir un impact sur la vitesse des actions importantes et visibles comme la saisie.

Par exemple, dans le tableau suivant, le délai d’entrée de l’utilisateur serait de 1 000 ms dans cet intervalle. Le compteur signale le délai d’entrée utilisateur le plus lent de l’intervalle car la perception de « lent » par l’utilisateur est déterminée par le temps d’entrée le plus lent (le maximum) qu’il subit, et non par la vitesse moyenne de toutes les entrées totales.

Nombre 0 1 2
Délai 16 ms 20 ms 1 000 ms

Activer et utiliser les nouveaux compteurs de performances

Pour utiliser ces nouveaux compteurs de performances, vous devez d’abord activer une clé de registre en exécutant cette commande:

reg add "HKLM\System\CurrentControlSet\Control\Terminal Server" /v "EnableLagCounter" /t REG_DWORD /d 0x1 /f

Remarque

Si vous utilisez Windows 10, la version 1809 ou ultérieure ou Windows Server 2019 ou ultérieure, vous n’aurez pas besoin d’activer la clé de registre.

Ensuite, redémarrez le serveur. Ensuite, ouvrez le Moniteur de performances et sélectionnez le signe plus (+), comme indiqué dans la capture d’écran suivante.

 Bureau à distance - Une capture d'écran montrant comment ajouter le compteur de performances de Retard d'entrée utilisateur

Après avoir fait cela, vous devriez voir la boîte de dialogue Ajouter des compteurs, où vous pouvez sélectionner Délai d’entrée utilisateur par Processus ou Délai d’entrée utilisateur par Session.

 Bureau à distance - Une capture d'écran montrant comment ajouter le délai d'entrée utilisateur par session

 Bureau à distance - Une capture d'écran montrant comment ajouter le Délai d'entrée utilisateur par processus

Si vous sélectionnez Délai d’entrée utilisateur par processus, vous verrez les instances de l’objet sélectionné (en d’autres termes, les processus) au format SessionID:ProcessID <Process Image>.

Par exemple, si l’application Calculatrice s’exécute dans un ID de session 1, vous verrez 1:4232 <Calculator.exe>.

Note

Tous les processus ne sont pas inclus. Vous ne verrez aucun processus qui s’exécute en tant que SYSTÈME.

Le compteur commence à signaler le délai d’entrée de l’utilisateur dès que vous l’ajoutez. Notez que l’échelle maximale est définie sur 100 (ms) par défaut.

 Bureau à distance - Un exemple d'activité pour le Délai d'entrée utilisateur par processus dans le Moniteur de performances

Examinons ensuite le Délai d’entrée utilisateur par Session. Il existe des instances pour chaque ID de session et leurs compteurs indiquent le délai d’entrée utilisateur de tout processus au sein de la session spécifiée. De plus, il existe deux instances appelées  » Max  » (le délai maximal d’entrée de l’utilisateur pour toutes les sessions) et  » Average  » (la moyenne de toutes les sessions).

Ce tableau montre un exemple visuel de ces instances. (Vous pouvez obtenir les mêmes informations dans Perfmon en passant au type de graphique de rapport.)

Type de compteur Nom de l’instance Délai signalé (ms)
Délai d’entrée utilisateur par processus 1:4232 < Calculatrice.exe> 200
Délai d’entrée utilisateur par processus 2:1000 < Calculatrice.exe> 16
Délai d’entrée utilisateur par processus 1:2000 < Calculatrice.exe> 32
Délai d’entrée utilisateur par session 1 200
Délai d’entrée utilisateur par session 2 16
Délai d’entrée utilisateur par session Moyenne 108
Délai d’entrée utilisateur par session Max 200

Compteurs utilisés dans un système surchargé

Regardons maintenant ce que vous verrez dans le rapport si les performances d’une application sont dégradées. Le graphique suivant montre les lectures pour les utilisateurs travaillant à distance dans Microsoft Word. Dans ce cas, les performances du serveur RDSH se dégradent au fil du temps à mesure que de plus en plus d’utilisateurs se connectent.

 Bureau à distance - Un exemple de graphique de performance pour le serveur RDSH exécutant Microsoft Word

Voici comment lire les lignes du graphique:

  • La ligne rose indique le nombre de sessions connectées sur le serveur.
  • La ligne rouge correspond à l’utilisation du processeur.
  • La ligne verte correspond au délai maximal d’entrée de l’utilisateur pour toutes les sessions.
  • La ligne bleue (affichée en noir sur ce graphique) représente le délai moyen d’entrée de l’utilisateur pour toutes les sessions.

Vous remarquerez qu’il existe une corrélation entre les pics de PROCESSEUR et le délai d’entrée de l’utilisateur — à mesure que le PROCESSEUR consomme davantage, le délai d’entrée de l’utilisateur augmente. De plus, à mesure que de plus en plus d’utilisateurs sont ajoutés au système, l’utilisation du processeur se rapproche de 100%, ce qui entraîne des pics de retard d’entrée plus fréquents. Bien que ce compteur soit très utile dans les cas où le serveur est à court de ressources, vous pouvez également l’utiliser pour suivre le retard d’entrée de l’utilisateur lié à une application spécifique.

Options de configuration

Une chose importante à retenir lors de l’utilisation de ce compteur de performances est qu’il signale le retard d’entrée de l’utilisateur sur un intervalle de 1 000 ms par défaut. Si vous définissez la propriété intervalle d’échantillonnage du compteur de performances (comme indiqué dans la capture d’écran suivante) sur quelque chose de différent, la valeur rapportée sera incorrecte.

 Bureau à distance - Les propriétés de votre moniteur de performances

Pour résoudre ce problème, vous pouvez définir la clé de registre suivante pour qu’elle corresponde à l’intervalle (en millisecondes) que vous souhaitez utiliser. Par exemple, si nous changeons l’échantillon toutes les x secondes en 5 secondes, nous devons définir cette clé sur 5000 ms.

"LagCounterInterval"=dword:00005000

Remarque

Si vous utilisez Windows 10, version 1809 ou ultérieure ou Windows Server 2019 ou ultérieure, vous n’avez pas besoin de définir LagCounterInterval pour corriger le compteur de performances.

Nous avons également ajouté quelques clés que vous pourriez trouver utiles sous la même clé de registre:

LagCounterImageNameFirst – définissez cette clé sur DWORD 1 (la valeur par défaut 0 ou la clé n’existe pas). Cela change les noms des compteurs en « Nom de l’image SessionID:ProcessId. »Par exemple, » explorer <1:7964>. »Ceci est utile si vous souhaitez trier par nom d’image.

LagCounterShowUnknown – définissez cette clé sur DWORD 1 (la valeur par défaut 0 ou la clé n’existe pas). Cela montre tous les processus qui s’exécutent en tant que services ou SYSTÈME. Certains processus apparaîtront avec leur session définie comme « ?. »

Voici à quoi cela ressemble si vous allumez les deux touches:

 Bureau à distance - Le moniteur de performances avec les deux touches sur

En utilisant les nouveaux compteurs avec des outils non Microsoft

Les outils de surveillance peuvent utiliser ce compteur en utilisant des compteurs de performances.

Partagez vos commentaires

Vous pouvez soumettre des commentaires pour cette fonctionnalité via le Centre de commentaires. Sélectionnez Apps > Toutes les autres applications et incluez « Compteurs de performances RDS – moniteur de performances » dans le titre de votre publication.

You might also like

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.