Trace

De wiki.nexiat.fr
Aller à la navigation Aller à la recherche
Fiche express
Domaine Trace noyau (subsystème trace)
Commande trace / trcstop / trcrpt
Contexte AIX — trace système-wide, plus bas niveau qu'un traçage de process unique
Voir aussi Truss (trace un process utilisateur précis, pas le noyau)

Le sous-système trace capture les événements noyau AIX (appels système, interruptions, E/S...) au niveau système entier, contrairement à truss qui trace uniquement les appels système d'un process utilisateur donné. À réserver aux diagnostics bas niveau (pilotes, ordonnanceur, sous-systèmes comme MQSeries) quand le périmètre d'un seul process ne suffit pas.

Cycle d'usage

Le cycle habituel comporte trois étapes : démarrer la capture en ciblant des hooks précis, l'arrêter, puis générer un rapport lisible à partir du fichier de trace brut.

trace -a -j<hooks> -o fichier_trace   # démarrer (hooks = identifiants d'événements noyau ciblés)
trcstop                               # arrêter la capture en cours
trcrpt fichier_trace > rapport.txt    # générer le rapport lisible depuis le fichier brut
  • -a — lance la capture en arrière-plan (asynchrone)
  • -j hooks — restreint la capture à une liste de hooks (identifiants d'événements noyau), plutôt que de tout capturer
  • -o — fichier de sortie où écrire la trace brute
  • trcstop — arrête une capture démarrée avec -a
  • trcrpt — relit le fichier de trace brut et produit un rapport texte exploitable

Exemple : trace MQSeries

Lancer une trace ciblée sur les hooks MQSeries (30D, 30E), avec une taille de fichier bornée et rotative via -L :

trace -a -j30D,30E -L 268435368 -o $TRACE

-L fixe la taille maximale (en octets) du fichier de trace : au-delà, l'écriture reprend en boucle depuis le début du fichier (trace rotative), ce qui évite de saturer le disque sur une capture longue.

Une fois la capture arrêtée (trcstop), extraire un rapport lisible en utilisant le fichier de format propre à MQSeries :

trcrpt -t /usr/mqm/lib/amqtrc.fmt trc > trc.txt

Voir aussi

  • Truss — trace les appels système d'un process utilisateur précis (portée bien plus restreinte que trace)