Rubrique précédente: API générales de l'agentRubrique suivante: API de transaction d'agent


API de détection d'agents

La classe com.itko.lisa.remote.client.DiscoveryClient fournit des méthodes liées à la détection de données sur un agent. Vous pouvez obtenir la classe DiscoveryClient à l'aide de l'appel suivant : AgentClient.getInstance().getDiscoveryClient().

Remarque : Vous pouvez consulter des informations détaillées sur cette classe dans le document JavaDocs pour l'agent. Les documents JavaDocs sont disponibles dans le répertoire LISA_HOME\doc.

/**
  * Propriétés système de l'agent spécifié
  * @param info
  * @return
  * @throws JMSInvocationException
  */
 public Map getVMProperties(IAgentInfo info) throws JMSInvocationException;
 
 /**
  * Renvoie une liste de StatsFrames enregistrés pour l'agent spécifié entre les dates From (Du) et To (Au).
  * @param agentInfo l'agent qui requiert la récupération des statistiques
  * @param from      date de début du filtre
  * @param to        date de fin du filtre
  * @return          renvoie le liste des StatsFrames requis, classés par date décroissante (commençant à partir de la date To (Au))
  */
 public List getStatistics(IAgentInfo agentInfo, Date from, Date to);
 
 /**
  * Renvoie une liste de StatsFrames enregistrés pour l'agent spécifié entre les dates From (Du) et To (Au).
  * @param agentInfo l'agent qui requiert la récupération des statistiques
  * @param from      date de début du filtre
  * @param to        date de fin du filtre
  * @param interval   méthode de cumul des résultats en secondes. 10 signifie la moyenne des résultats toutes les 10 secondes, etc...
  * @param limit     nombre maximum de résultats
  * @return          renvoie le liste des StatsFrames requis, classés par date décroissante (commençant à partir de la date To (Au))
  */
 public List getStatistics(IAgentInfo agentInfo, Date from, Date to, int interval, int limit);
 
 /**
  * TODO : implémenter de nouveau - actuellement renvoie
  * @param info
  * @return
  * @throws JMSInvocationException
  */
 public Topology getTopology(IAgentInfo info) throws JMSInvocationException;
 
 /**
  * Les points de sortie sont des MethodInfo qui capturent des classes/méthodes qui effectuent des appels réseau au bas de la pile
  * @param info
  * @return
  * @throws JMSInvocationException
  */
 public Set getExitPoints(IAgentInfo info) throws JMSInvocationException;
 
 /**
  * Renvoie le nom du conteneur J2EE (ou Java s'il ne s'agit pas d'un conteneur J2EE)
  * @param info
  * @return
  * @throws JMSInvocationException
  */
 public String getServerInfo(IAgentInfo info) throws JMSInvocationException;
 
 /**
  * Renvoie les applications Web déployées dans le conteneur J2EE spécifié
  * @param info
  * @return
  */
 public WebApplication[] getWebApps(IAgentInfo info) throws JMSInvocationException;
 
 /**
  * Renvoie la hiérarchie JNDI sur l'agent spécifié représenté par une arborescence ClassNode (noeud de classes)
  * @param info
  * @return
  * @throws JMSInvocationException
  */
 public ClassNode getJNDIRoot(IAgentInfo info) throws JMSInvocationException;
 
 /**
  * Threads actuels sur la machine virtuelle de l'agent
  * @param info
  * @return
  * @throws JMSInvocationException
  */
 public ThreadInfo[] getThreadInfos(IAgentInfo info) throws JMSInvocationException;
 
 /**
  * Piles de threads actuels sur la machine virtuelle de l'agent
  * @param info
  * @return
  */
 public String[] dumpThreads(IAgentInfo info) throws JMSInvocationException;
 
 /**
  * Ensemble de tous les fichiers dans le classpath de l'agent spécifié
  * @param info
  * @return
  * @throws JMSInvocationException
  */
 public Set getClasspath(IAgentInfo info) throws JMSInvocationException;
 
 /**
  * Renvoie la hiérarchie de classes sous le chemin spécifié
  * @param info
  * @param fromPath
  * @return
  */
 public ClassNode getClassNodes(IAgentInfo info, String fromPath) throws JMSInvocationException;
 
 /**
  * Hiérarchie de classes détectée dans l'archive à l'URL indiquée
  * @param info
  * @param url
  * @return
  * @throws JMSInvocationException
  */
 public ClassNode getArchiveNodes(IAgentInfo info, URL url) throws JMSInvocationException;
 
 /**
  * Ensemble contenant des données sur la classe (fields/methods/src)
  * @param info
  * @param className
  * @return
  * @throws JMSInvocationException
  */
 public Set getClassInfo(IAgentInfo info, String className) throws JMSInvocationException;
 
 /**
  * Décompile et renvoie la source vers une classe
  * @param info
  * @param clazz
  * @param loc décompile sur le client ou l'agent
  * @return
  * @throws JMSInvocationException
  */
 public String getClassSrc(IAgentInfo info, String clazz, boolean loc) throws JMSInvocationException, IOException;
 
 /**
  * Renvoie la hiérarchie à laquelle cette classe appartient, à savoir, tous les ancêtres, mais également tous les responsables d'extension/implémentation
  * @param info
  * @param className
  * @return
  * @throws JMSInvocationException
  */
 public ClassNode[] getClassHierarchy(IAgentInfo info, String className) throws JMSInvocationException;
 
/**
  * Renvoie (référence) tous les objets dans le segment de mémoire de la classe spécifiée - utiliser avec précaution
  * @param info
  * @param className
  * @return
  * @throws JMSInvocationException
  */
 public ClassNode getInstancesView(IAgentInfo info, String className) throws JMSInvocationException;
 
 /**
  * Renvoie (référence) tous les objets sur le segment de mémoire suivi par l'agent.
  * @param info
  * @return
  * @throws JMSInvocationException
  */
 public ClassNode getTrackedObjects(IAgentInfo info) throws JMSInvocationException;
 
 /**
  * Une représentation graphique rudimentaire d'un objet (champs calculés de façon récursive)
  * @param info
  * @param clazz
  * @param hashCode
  * @return
  * @throws JMSInvocationException
  */
 public ClassNode getObjectGraph(IAgentInfo info, String clazz, int hashCode) throws JMSInvocationException;
 
 /**
  * Obtient le chemin d'un objet vers une racine GC
  * @param info
  * @param clazz
  * @param hashCode
  * @return
  * @throws JMSInvocationException
  */
 public ClassNode getRootPath(IAgentInfo info, String clazz, int hashCode) throws JMSInvocationException;
 
 /**
  * Obtient un fichier sur le système de fichiers de l'agent, le télécharge vers le client à un emplacement temporaire et lui renvoie un descripteur
  * @param info
  * @param file
  * @return
  * @throws JMSInvocationException
  */
 public File getFile(IAgentInfo info, String file) throws JMSInvocationException, IOException;