> Tech > Les ficelles du métier

Les ficelles du métier

Tech - Par iTPro - Publié le 24 juin 2010
email

Les services de déboguage

Dépanner des travaux est une tâche relativement simple, mais il est surprenant de constater le nombre de personnes qui ne savent pas comment faire. Un travail de déboguage offre simplement un moyen d'accéder à  une tâche à  partir d'un travail différent. Si par exemple

Les ficelles du métier

un utilisateur se plaint du blocage de son écran, un
travail de déboguage peut permettre à  un opérateur du service d’assistance d’accéder
à  la pile d’appel de l’utilisateur bloqué, voire même de dépanner la session en
cours. L’AS/400 permet de dépanner les travaux tant interactifs que batch.

L’utilisation d’un service de déboguage pour déboguer impose quelques étapes.
Pour commencer, tapez STRSRVJOB (Start Service Job) puis appuyez sur la touche
F4. A l’invite qui apparaît, saisissez les informations concernant le travail
que vous souhaitez dépanner, qu’il s’agisse d’un travail batch ou du travail interactif
d’un autre utilisateur. Une fois le travail de déboguage démarré, on peut entamer
une session de déboguage et entrer toutes les commandes de déboguage de son choix.
En fait, les points d’arrêt seront déclenchés à  partir du travail de l’autre personne,
et donneront accès aux variables et au code. Lorsqu’on a terminé, il suffit d’interrompre
la session de déboguage en tapant ENDSRVJOB (End Service Job), et de passez au
job suivant.

Une autre manière d’utiliser les services de déboguage consiste à  passer par l’utilitaire
STRISDB (Start Interactive Source Debugger). Sur cette commande, si vous indique
*SELECT en lieu et place du paramètre représentant le travail à  dépanner, une
liste de tous les travaux du système s’affiche et on peut sélectionner un travail
donné. Lorsque le travail que l’on a sélectionné accède au programme à  déboguer,
la fenêtre de déboguage s’afficher automatiquement.

Query Management

SQL est un outil de déboguage puissant parce qu’il permet d’exécuter desrequêtes
complexes sur une base de données ou des journaux pour extraire des informations
pertinentes. Malheureusement, SQL n’est pas disponible en standard sur toutes
les plates-formes.

Si on débogue une plate-forme qui ne dispose pas de l’utilitaire SQL interactif,
Query Management (QM), fonction intégrée dans l’OS/400 de tous les AS/400, est
la réponse à  vos problèmes. En utilisant QM, on peut envoyer une instruction SQL
à  PDM (Program Development Manager), SEU (Source Entry Utility), ou à  tout autre
outil d’édition de membres sources, puis exécuter deux commandes. La première,
qui permet de compiler l’instruction SQL, est CRTQMQRY (Create QM Query). La seconde,
qui permet d’exécuter l’instruction compilée, est STRQMQRY (Start QM Query).

Pour en savoir plus sur ce puissant outil, référez-vous au manuel DB2 for AS/400
Query Management Programming
(SC41-5703), et à  l’article « Pass Parameters
to Queries with DB2/400’s Query Management », NEWS/400, mai 1997.

Afficher les journaux avec Query/400

L’un des problèmes qui se posent avec les journaux est qu’ils ne scindent pas
les informations spécifiques aux fichiers dans des champs formatés. On peut utiliser
différents outils externes pour réaliser ce travail, mais Query/400, un progiciel
AS/400 optionnel qui permet de créer des requêtes complexes, fournit également
une méthode simple et rapide.

En utilisant Query/400, on peut créer un fichier vide qui servira de « modèle »
pour le formatage des informations d’un journal. D’abord, utilisez la commande
DSPJRN (Display Journal) pour décharger le contenu du journal dans un fichier.
Ensuite, lancez Query/400 en tapant WRKQRY (Work With Query) sur la ligne de commandes,
appuyez sur la touche Entrée et sélectionnez 1 pour créer une nouvelle requête.
Pour la sélection du fichier dans la requête, indiquez aussi bien le fichier journal
que vous avez créé que le fichier dans lequel se trouvait le journal. Par exemple,
si vous avez déversé le contenu d’un journal du fichier CSTMST dans un fichier
journal en sortie appelé CSTMSTJR, sélectionnez ces deux fichiers dans la requête.

Ensuite, définissez l’option de « jointure primaire » entre deux champs qui ne seront
jamais équivalents. En général, le fait de mettre en relation la totalité du format
de fichier donne de bon résultats. Par exemple, utilisez un champ nommé JOESD
dans le fichier journal de sortie et un champ alphanumérique quelconque du fichier
principal (set JOESD EQ CSTNAM). Après avoir spécifié le critère de jointure,
passez à  la sélection des champs, sélectionnez tous les champs et ensuite désélectionnez
le champ JOESD.

On est en train de créer un fichier identique au journal de sortie excepté que
le fichier créé propose les noms de tous les champs au lieu de la zone unique
très longue contenant toutes les informations du journal ! Indiquez que le résultat
de la requête sera enregistré dans un fichier, puis exécutez cette requête. Elle
devrait créer un fichier vide contenant les champs dont vous avez besoin, mais
sans sélectionner d’enregistrement.

Pour terminer, copiez le journal de sortie vers le fichier modèle que vous venez
de créer, en utilisant la commande CPYF (Copy File) et avec le paramètre FMTOPT
(Format Option) placé à  *NOCHK (No Check). Cela créera un fichier journal très
bien mis en forme, et que vous pourrez manipuler comme bon vous semble ! JL

Téléchargez gratuitement cette ressource

Endpoint Security : Guide de Mise en œuvre

Endpoint Security : Guide de Mise en œuvre

Détournement d’applications légitimes, élévation de privilèges, logiciels malveillants furtifs : comment les solutions de Endpoint Security permettent elles de faire face aux nouvelles techniques d'attaques complexes ? Découvrez, dans ce Guide Endpoint Security, les perspectives associées à leur mise en œuvre.

Tech - Par iTPro - Publié le 24 juin 2010