Application Delivery Management

Suivi distribué

Dans le graphique de service, vous pouvez utiliser la vue de suivi distribué pour :

  • Analysez la performance globale du service.

  • Visualisez le flux de communication entre le service sélectionné et ses services interdépendants.

  • Identifier le service qui indique des erreurs et dépanner le service erroné

  • Afficher les détails de transaction entre le service sélectionné et chaque service interdépendant.

Conditions préalables

Pour afficher les informations de suivi du service, vous devez :

  • Assurez-vous qu’une application conserve les en-têtes de trace suivants, tout en envoyant tout trafic est-ouest :

    En-têtes

  • Pour les versions CIC antérieures à la version 1.7.23, mettez à jour le fichier YAML CPX avec la valeur NS_DISTRIBUTED_TRACING et yes

    CPX YAML

  • Pour les versions CIC postérieures à 1.7.23, vous devez utiliser un ConfigMap.

    ConfigMaps vous permet de séparer vos configurations de vos pods et de rendre vos charges de travail portables. Grâce à ConfigMaps, vous pouvez facilement modifier et gérer vos configurations de charge de travail et réduire le besoin de coder en dur les données de configuration en fonction des spécifications du module.

    Avec la prise en charge de ConfigMap, vous pouvez mettre à jour la configuration automatiquement tout en conservant le conteneur de Citrix ingress controller en cours d’exécution. Vous n’avez pas besoin de redémarrer le module après la mise à jour. Pour plus d’informations, voir Prise en charge de ConfigMap pour le contrôleur d’entrée.

    À l’aide de ConfigMap, vous pouvez activer ou désactiver le suivi distribué, les événements, les journaux d’audit, etc. Pour utiliser le ConfigMap :

    1. Créez un fichier YAML en utilisant les paramètres requis.

      Le suivi distribué est activé dans le fichier YAML suivant et d’autres variables telles que les journaux d’audit, les événements et les transactions sont désactivés :

      apiVersion: v1
      kind: ConfigMap
      metadata:
        name: cic-configmap
        namespace: default
      data:
        LOGLEVEL: 'debug'
        NS_PROTOCOL: 'http'
        NS_PORT: '80'
        NS_HTTP2_SERVER_SIDE: 'ON'
        NS_ANALYTICS_CONFIG:
          distributed_tracing:
            enable: 'true'
            samplingrate: 100
          endpoint:
            server: <ADM-AgentIP> / <ADM-AppserverIP>
          timeseries:
            port: 5563
            metrics:
              enable: 'true'
              mode: 'avro'
            auditlogs:
              enable: 'false'
            events:
              enable: 'false'
          transactions:
            enable: 'false'
            port: 5557
      <!--NeedCopy-->
      

      Remarque

      Vous pouvez fournir les valeurs pour Samplingrate comprises entre 0 et 100. Citrix ADM affiche le nombre de transactions de suivi mentionné.

    2. Déployez ConfigMap à l’aide de :

      kubectl create -f <configmap-yaml>.yaml

    3. Modifiez le fichier CPX YAML et utilisez envFrom ou args pour spécifier les arguments suivants :

      envFrom:
       - configMapRef:
           name: cic-configmap
      <!--NeedCopy-->
      

      OU

      YAML

    4. Si vous souhaitez modifier la valeur d’une variable, modifiez les valeurs dans ConfigMap. Dans cet exemple, toutes les autres variables sont changées de false à true.

      apiVersion: v1
      kind: ConfigMap
      metadata:
        name: cic-configmap
        namespace: default
      data:
        LOGLEVEL: 'debug'
        NS_PROTOCOL: 'http'
        NS_PORT: '80'
        NS_HTTP2_SERVER_SIDE: 'ON'
        NS_ANALYTICS_CONFIG:
          distributed_tracing:
            enable: 'true'
            samplingrate: 100
          endpoint:
            server: <ADM-AgentIP> / <ADM-AppserverIP>
          timeseries:
            port: 5563
            metrics:
              enable: 'true'
              mode: 'avro'
            auditlogs:
              enable: 'true'
            events:
              enable: 'true'
          transactions:
            enable: 'true'
            port: 5557
        <!--NeedCopy-->
      
    5. Appliquez à nouveau ConfigMap à l’aide de la commande suivante :

      kubectl apply -f <yaml-file>.yaml

Afficher les détails du suivi du service

Dans le graphique de service, cliquez sur un service, puis sélectionnez Infos de suivi.

Infos de suivi

La page Récapitulatif du suivi s’affiche pour le service sélectionné.

Résumé du suivi

Le récapitulatif des traces s’affiche :

  • Une recherche avancée qui vous permet de rechercher des transactions avec des suggestions et des opérateurs (1). Pour plus d’informations, consultez la section Recherche avancée.

  • Liste de durée de temps qui vous permet de sélectionner la durée de temps telle que 1 heure, 12 heures, 1 jour, 1 semaine, 1 mois et heure personnalisée (2).

  • Graphique Détails de la chronologie qui vous permet de faire glisser et de sélectionner pour afficher les résultats pour une durée spécifique (3).

  • Panneau Filtres qui vous permet de sélectionner des options dans chaque mesure (4).

  • Détails de transaction pour le service sélectionné (5).

Afficher les détails de la transaction

Cliquez sur une transaction pour effectuer une hiérarchisation vers le bas pour obtenir des informations détaillées. Vous pouvez afficher les détails de transaction pour le service sélectionné, tels que :

  • Heure de début

  • Heure de fin

  • Mesures SSL

  • Communication avec les services interdépendants (avec les erreurs et le temps de réponse avec chaque service).

L’exemple suivant indique une erreur de catalogue-store-service. Cliquez sur Voir Détails du suivi pour plus de détails.

Détails du suivi

La page Détails du suivi s’affiche.

Suivi des transactions

1 — Affiche l’heure de début, le temps de réponse, le total des services et les travées totales de la transaction.

2 — Affiche les détails du service sélectionné qui a communiqué avec ses services d’interdépendance. Vous pouvez cliquer sur chaque transaction pour afficher les détails.

3 — Affiche les détails de la transaction pour chaque service.

Selon l’exemple image, catalogue-store-service a indiqué une erreur. Cliquez sur la transaction disponible pour catalogue-store-service.

Cliquez sur la transaction

Les détails de transaction entre product-catalogue-service et catalogue-store-service indiquent la réponse HTTP comme 500. Avec ces détails, en tant qu’administrateur, vous pouvez analyser le service erroné et dépanner product-catalogue-service en tant que résolution.

Vous pouvez également filtrer les résultats en sélectionnant des options dans chaque mesure sous le panneau Filtres. Par exemple, si vous souhaitez afficher toutes les transactions 5xx, cliquez sur Code de réponse et sélectionnez 500.

Panneau de filtre

  • RTT client : durée de déplacement d’un paquet à partir du client.

  • RTT du serveur : durée de déplacement d’un paquet à partir du serveur.

  • Temps deréponse de l’application : Tempsde réponse moyen de l’application

  • Temps de transfertde données : taille de transfert de données et vitesse à laquelle la transmission peut se produire depuis/vers un service.

  • Emplacement : l’emplacement du client

  • Navigateur : types de navigateur utilisés par les clients. Par exemple : Chrome, Firefox.

  • Système d’exploitation client : Système d’exploitation client basé sur les détails de l’agent utilisateur du navigateur.

  • Périphérique : Périphériques basés sur les détails de l’agent utilisateur du navigateur. Par exemple : Tablette, Mobile.

  • Type de demande : Type de demande de transaction. Par exemple : GET.

  • Code de réponse : Code de réponse reçu du serveur. Par exemple : 501, 404, 200.

  • Type de contenu de réponse : Type de contenu de transaction. Si la demande du client concerne text/html, la réponse du serveur doit être text/html.

  • Protocole SSL : Version du protocole SSL utilisée par les clients. Par exemple : SSLv3.

  • Force dechiffrement SSL : forcede chiffrement basée sur la taille de la clé de certificat SSL telle que élevée, moyenne et basse.

  • Résistance dela clé SSL : La forcede chiffrement SSL est calculée à partir de la taille de la clé de certificat SSL. La longueur de clé définit la sécurité de l’algorithme SSL. Par exemple : 2048

  • Raison d’échec SSL frontal : le message d’erreur de connexion SSL frontal. Par exemple : SSL CLIENTAUTH FAILURE

Suivi distribué