En Bref

HookTrack est le fruit de 13 ans d'expériences de débogage d'applications NatStar™.
Il a pour objectif de vous faire gagner du temps... beaucoup de temps. Il s'utilise directement sur vos applications clientes NatStar™ sous Windows™, sans modifier vos lanceurs.

HookTrack est un outil de développeur à développeur : l'ergonomie a été particulièrement soignée : ergonomie = productivité !

Une trace détaillée à souhait et ultra rapide (x20)

Un débogueur professionnel

Un visualiseur (browser) de code

Un visualiseur de variables, segments, objets

Un profileur de code (analyse des temps de réponse, des fuites mémoire)

... Les traces

Le temps perdu à écrire des traces est divisé par un facteur 20 en utilisant HookTrack. De plus en les voyant défiler à l'écran, vous pouvez avoir – même sans lancer l'outil d'analyse (profiler) – une petite idée d'un temps perdu dans un appel.
Vous avez en plus le choix entre différents types de trace :

  • aucune
  • la trace classique (Things_Trace)
  • la trace des appels de méthodes, de 'ressources'
  • les traces des paramètres d'appels
  • les buffers Tuxedo
  • les requêtes SQL
  • ...

Tout cela étant activable/désactivable à la volée, sans arrêter votre application cliente et sans polluer votre application avec une nième variable d'environnement.

Dans la zone de trace,  un simple clic droit vous fera gagner du temps :

  • Aller sur la trace d'appel / de sortie
  • Afficher la source correspondante
  • Rechercher dans la trace (avec comme résultat une liste 'cliquable' des lignes trouvées)

... Le débogueur

 L'ergonomie du débogueur a été travaillée tout particulièrement pour vous permettre d'analyser le plus efficacement possible le comportement du code, la visualisation du code vous permet d'avoir des bulles d'aide sur tous les éléments significatifs du code, et des liens 'cliquables' sur toutes les ressources/méthodes.

  • Sur un point d'arrêt, par un clic sur le bouton "Break" ou lors d'un problème détecté : HookTrack affiche le code source et surligne le code sur le point d'être executé
  • Vous avez accès aux valeurs des variables locales/paramètres/objets par simple survol avec la souris – mais vous pouvez aussi les afficher dans une liste : leurs valeurs seront alors mises à jour à chaque arrêt
  • La 'pile des appels' peut être affichée ainsi que le numéro de ligne courant dans chaque appel
  • Les ressources et les méthodes sont accessibles par simple clic droit
  • Vous pouvez aussi afficher la pile des appels et pour chaque appel, voir le source correspondant, les paramètres et les variables locales
  • Si votre client plante (Dr Watson) vous pouvez (dans la plupart des cas) voir où et encore accéder aux valeurs des variables
  • Les pointeurs non valides (ne correspondant pas à une zone mémoire allouée ) sont signalés comme tel dans les bulles d'aide
  • Le débogueur est 'multithread' : il gère de manière transparente les différents threads que vous auriez pu démarrer au sein de votre application
  • Le mode debug est désactivable en cours d'exécution
 agrandir

... Le 'browser' de code

 C'est un des composants de base de HookTrack, il permet de naviguer dans le code du dictionnaire 'NatStar' de manière très intuitive, son ergonomie est le fruit des retours des développeurs qui l'utilisent. 

  • Comme son nom l'indique le browser de code vous permet de 'Naviguer' dans votre code comme vous le feriez sur un site internet
  • Affichage de toutes les entités et de tous les liens du dictionnaire
  • Bulles d'aide descriptives sur les ressources, méthodes ...
  • Liens cliquables dans le code source 
  • Affichage pertinent des TypeDefs 
  • Positionnement / Suppression des points d'arrêts
agrandir 

Télécharger HookDict Essayez HookDict, un logiciel gratuit, indépendant de HookTrack qui vous donnera un bon aperçu des fonctionnalités du composant 'browser' de code

...Visualisation de variables

HookTrack intègre un système de visualisation qui s'adapte de manière transparente à la catégorie de la variable (locale, globale, variable de classe, paramètre) et à son type (types de bases, tableaux, segments, objets).

  • Affichage des types complexes (segments, typedefs, objets, tableaux) sous forme arborescente
  • Détection et affichage des pointeurs vers des zones de mémoire non allouées
  • Interprétation automatique des handles d'objets en tant qu'objets
  • Interprétation des index 'littéraux' (par exemple 'monTableau[i%]', et pas seulement 'monTableau[0]' )
  • Interprétation du caractère NCL '@'  (par exemple '@monTableau[1]' correspond à l'adresse du 2ième élément de la variable 'monTableau[1]' )
  • Possibilité de 'caster' (trans-typer) une variable comme vous le feriez en NCL (par exemple 'S_Segment(hd_segment%)' ) pour n'importe quel type de segment
  • Possibilité de 'caster' avec des types simples (ou tableaux) ( par exemple CSTRING(10)[5](hd_segment%), affichera un tableau de 5 chaînes de 10 caractères dont l'adresse sera la valeur de hd_segment% )

... Le profileur

 HookTrack intègre également un profileur de code, il permet d'afficher les statistiques des temps d'exécution de votre application et ainsi de déterminer très aisément les parties du code sur lesquels doivent porter vos efforts d'optimisation des temps de réponses.

  • Affichage du nombre d'appel pour une ressource / méthode / service tuxedo
  • Du temps total et moyen par appel
  • Du temps total et moyen 'propre' par appel (i.e. le temps hors appels internes vers d'autres ressources / méthodes)