Traitement des incidents

Vous pourriez rencontrer les problèmes suivants lors de la surveillance d' Instana.

Non pris en charge JVM 8

Type de problème de surveillance : java_8_unmonitored_version

Ce problème de surveillance indique que votre application Java s'exécute sur une machine virtuelle Hotspot Java 8 non prise en charge, dont la version est antérieure à 1.8.0_40. Instana ne surveille pas les applications d' Java s qui s'exécutent sur une telle machine virtuelle Hotspot en raison de bogues graves dans cette dernière, qui entraînent des incompatibilités et des plantages.

Pour résoudre ce problème, mettez à jour le kit de développement Java ( JVM ) vers une version plus récente, de préférence JDK 8 252 ou une version ultérieure, ou vers une autre version à support à long terme d' Java.

Pour plus d'informations sur les JVM prises en charge par Instana, consultez la documentation relative à la prise en charge d' JVM.

Détection d'un agent incompatible

Type de problème de surveillance : jvm_incompatible_agent_detected

Ce problème de surveillance indique que l'agent Instana a détecté un agent incompatible connecté à l' JVM. Afin d'éviter tout problème avec l' JVM, l'agent Instana ne collecte pas les données de traçage de l'application exécutée au sein de l' JVM. Cette interruption peut entraîner l'absence de données relatives aux perspectives d'application, aux services et aux noeuds finaux, ainsi que des alertes parasites concernant la suppression des appels aux perspectives d'application, aux services et aux noeuds finaux.

Pour résoudre ce problème, supprimez l'agent incompatible de votre JVM.

Problèmes liés à l'attachement dynamique

Type de problème de surveillance : jvm_attach_socket

Ce problème de surveillance indique que la fonctionnalité de gestion des pièces jointes de l' JVM est bloquée, ce qui arrive parfois en raison de bogues de longue date de l' JVM. Par conséquent, l' JVM e ne parvient pas à se connecter à un socket de communication utilisé lors de l'attachement dynamique.

Pour résoudre ce problème, redémarrez l' JVM.

Problèmes de visibilité réseau

Type de problème de surveillance : jvm_attach_network

Ce problème indique une défaillance de l'instrumentation d' JVM, due à des problèmes de visibilité réseau au niveau de l' JVM et de l'agent hôte. Pour éviter cette erreur, assurez-vous que l'agent hôte est accessible depuis l' JVM, comme indiqué dans la documentation relative aux exigences réseau. Dans les environnements conteneurisés, vérifiez les règles réseau et les configurations pour éviter ce problème.

Répertoire « attach » introuvable

Type de problème de surveillance : jvm_attach_directory

Ce problème indique l'échec de la connexion dynamique car le répertoire des pièces jointes est introuvable.

Pour résoudre ce problème, effectuez l'une des actions suivantes:

  • Assurez-vous que le processus « JVM » de l'agent hôte et le processus « JVM » de la cible sont lancés avec les mêmes paramètres pour les variables d'environnement qui déterminent l'emplacement des répertoires temporaires
  • Indiquez au processus cible d' JVM de placer les fichiers de travail destinés à la pièce jointe dynamique à l'emplacement où l'agent s'attend à les trouver par défaut. Si IBM J9 est utilisé sur un système compatible avec POSIX, incluez l'argument de ligne de commande suivant lors du démarrage du processus cible JVM :
-Dcom.ibm.tools.attach.directory=/tmp/.com_ibm_tools_attach
 

instrumentation-shared.jar fichier manquant

Type de problème de surveillance : jvm_instrumentation_shared_absent

Ce problème de surveillance indique que le fichier /tmp/.instana/instrumentation-shared-<version>-<pid>-<string>.jar a été supprimé alors que le javaagent-loader était connecté à une instance de JVM Ce fichier est nécessaire à l'exécution pour certaines configurations. Sans ce fichier, le java-tracing risque de ne pas fonctionner correctement. Si le fichier est supprimé au moment de l'exécution, le traceur Java peut émettre des avertissements et ne se met plus à jour.

L'agent interrompt de lui-même la connexion à l' JVM e et établit une nouvelle connexion pour résoudre ce problème.

Pièce jointe non prise en charge pour JVM avec un chargeur de classes personnalisé

Type de problème de surveillance : jvm_custom_classloader_unsupported

Cet incident de surveillance indique que l'agent a détecté qu'une application cible JVM a été lancée à l'aide d'un « chargeur de classes système personnalisé ». La connexion dynamique n'est pas prise en charge pour ces JVM, car le chargeur de classes personnalisé modifie le comportement par défaut du chargement des classes, qui est nécessaire à l'instrumentation de l'agent.

Dans ce cas, l' JVM e est généralement lancé avec l'argument suivant :

-Djava.system.class.loader=com.sas.app.AppClassLoader

Cette option remplace le chargeur de classes par défaut du système par une implémentation personnalisée, ce qui peut empêcher l'agent d'instrumenter ou d'injecter des classes lors de l'exécution. Par conséquent, ces JVM sont exclues avant la mise en attache, et cet événement de surveillance est déclenché

Espace disque insuffisant pour stocker les fichiers temporaires

Type de problème de surveillance : insufficient_disk_space_for_storing_temp_files

Pendant l'exécution, l'agent hôte d' Instana crée des fichiers JAR temporaires dans le $TMP/.instana répertoire. Ces fichiers JAR sont nécessaires pour la surveillance d' JVM. Ce problème indique que les fichiers JAR nécessaires ne peuvent pas être chargés sur le système hôte ou dans des conteneurs d'application que l'agent tente de surveiller en raison de la limite de capacité de stockage.

Vous pouvez atténuer ce problème en définissant un indicateur IN_MEMORY_CLASSLOADER=true en tant que propriété système ou en tant que variable d'environnement. Une fois cette option activée, l'espace de stockage nécessaire à la surveillance d' JVM s est réduit à 3.5 Mo. Pour plus d'informations, consultez la section « Variables d'environnement - Agent hôte ».

L'agent ne peut pas se connecter au port par défaut

Type de problème de surveillance : default_agent_port_unavailable

Ce problème de surveillance indique que l'agent ne peut pas se lier au port par défaut 42699. Par conséquent, divers détecteurs tombent en panne et la surveillance en pleine capacité peut ne pas être possible. Pour plus d'informations, consultez la section « Configuration réseau requise ».

Pour résoudre le problème, vérifiez que le port 42699 est disponible et redémarrez l'agent pour récupérer la surveillance complète.

Echec de la connexion au conteneur

Type de problème de surveillance : jvm_attach_container_command

Ce problème de surveillance indique que la commande utilisée pour se connecter dynamiquement à une instance d' JVM s conteneurisée a échoué.

Pour plus d'informations, voir le code de sortie de la description d'événement spécifique.

Partage de classe IBM J9 activé

Type de problème de surveillance : ibm_jvm_class_sharing_enabled

Ce rapport de surveillance indique que la fonctionnalité de partage de classe est activée pour cette JVM. Par conséquent, vous ne pouvez pas joindre et instrumenter. Pour plus d'informations sur la manière de résoudre ce problème, consultez la page IBM J9 limitations.

Problème générique de connexion à la JVM

Type de problème de surveillance : jvm_attach_generic

Ce rapport de surveillance indique qu'un problème inconnu est associé à l'adresse JVM. Par conséquent, ce processus ne peut être suivi et aucun indicateur d' JVM n ne peut être mesuré. Les journaux de l'agent doivent fournir plus de détails sur la raison de l'échec de la connexion. Pour résoudre ce problème, file un ticket et inclut les journaux.

Type de problème de surveillance : jvm_attach_permission

Ce problème de surveillance survient lorsque l'agent d' Instana ne parvient pas à se connecter à une machine virtuelle Java ( JVM ) si le /tmp/.com_ibm_tools_attach/ répertoire dispose de droits d'accès incorrects au système de fichiers. L'agent bascule vers le contexte utilisateur de l'application cible, mais l'opération échoue lorsque la structure du répertoire ne dispose pas des autorisations appropriées. Pour résoudre ce problème, définissez l permissions.To s suivantes :
  1. Définissez les droits d'accès 777 (lecture, écriture et exécution pour tous les utilisateurs) sur le /tmp/.com_ibm_tools_attach/ répertoire afin de permettre à tout processus de l' Java de créer des fichiers d'informations de connexion.

  2. Définissez les droits d'accès 666 (lecture et écriture pour tous les utilisateurs) sur les fichiers préfixés par un trait de soulignement dans ce répertoire.

Les sous-répertoires numérotés peuvent rester la propriété de leurs utilisateurs respectifs. Le répertoire parent doit être accessible à tous pour permettre la communication interprocessus entre l'agent et les processus de l' JVM s cibles.

Problème de performances

La capture des traces de pile pour les applications présentant des piles plus profondes ou des requêtes comportant plusieurs segments peut avoir un impact sur les performances de l'application. Pour optimiser les performances, vous devez désactiver la capture des traces de pile. Pour plus d'informations, consultez la section « Désactivation de la capture de la trace de pile ».

Enregistrements de span en double

Si les dépendances Log4j et SLF4J sont toutes deux présentes dans votre classpath, vous pourriez constater l'apparition de deux segments pour un même message de journalisation, un pour chaque framework de journalisation. Ce comportement est particulièrement fréquent lorsque vous utilisez la spring-boot-starter-log4j2 dépendance, ce qui entraîne la création de segments de journal en double.

Pour éviter les segments de journalisation en double, effectuez l'une des opérations suivantes :

  • Supprimez l'une des dépendances de journalisation du pom.xml fichier.
  • Désactivez l'un des plugins d'instrumentation de journalisation comme indiqué dans l'exemple suivant :
    com.instana.plugin.javatrace:
    instrumentation:
      plugins:
        Slf4jExit: false
     
    Cette configuration désactive le plugin « SLF4J » et ne conserve que le traçage « Log4j », garantissant ainsi qu'un seul segment est généré par message de journal.

Appels manqués

Les restrictions suivantes s'appliquent lors de l'utilisation des traceurs d' Instana s dans les environnements d' Java :

  • Instana Les traceurs n'enregistrent les appels sortants que lorsqu'un intervalle d'entrée actif est présent. Si certains appels attendus ne s'affichent pas, c'est peut-être parce qu'aucune trace n'était en cours d'exécution à ce moment-là.

  • Dans « Java », la public static void main méthode ne peut pas être instrumentée car elle pourrait démarrer ou terminer son exécution avant que le traceur ne soit prêt à s'y connecter.

  • Java La fonctionnalité de traçage ne prend pas en charge l'activation des segments de sortie racine via la variable INSTANA_ALLOW_ROOT_EXIT_SPAN d'environnement.

Nom de file d'attente incorrect sur le tableau de bord d' Instana pour les messages de l' IBM MQ

Si le nom de la file d'attente s'affiche de manière incorrecte sur le tableau de bord d' Instana, vérifiez l'en-tête de destination du message « IBM MQ ». Instana détermine le nom de la file d'attente à partir de l'en-tête de destination du message « IBM MQ ». Une valeur incorrecte ou non conforme dans l'en-tête entraîne un affichage incorrect du nom de la file d'attente.

Procédure de traitement des incidents

Vérifiez l'en-tête de destination du message « IBM MQ »

  1. Ouvrez les propriétés du message dans votre système de messagerie d' IBM.
  2. Recherchez le champ d'en-tête de destination (par exemple, JMSDestination, destination ou un en-tête spécifique à l'application).
  3. Vérifiez que la valeur correspond au nom de la file d'attente ou du sujet configuré sur le serveur de messagerie.
  4. Si la valeur est incorrecte, corrigez-la et renvoyez un message pour vérifier que le tableau de bord d' Instana s affiche bien le nom correct de la file d'attente.

Contacter le support

Si la destination s'affiche toujours de manière incorrecte sur le tableau de bord d' Instana après avoir validé l'en-tête et vérifié que la configuration est correcte, contactez l'assistance d' Instana.