Manuel de suivi dynamique Solaris

Chapitre 16 Options et paramètres réglables

Pour permettre une personnalisation, DTrace propose à ses clients plusieurs degrés de liberté importants. Pour réduire au maximum la nécessité d'un réglage spécifique, DTrace est mis en œuvre à l'aide de valeurs par défaut standard et de stratégies flexibles par défaut. Cependant, certaines situations peuvent nécessiter le réglage du comportement de DTrace au cas par cas. Ce chapitre décrit les options et paramètres réglables DTrace ainsi que les interfaces disponibles pour les modifier.

Options client

DTrace est réglé en définissant ou en activant des options. Les options disponibles sont décrites dans le tableau ci-dessous. Pour certaines options, dtrace(1M) propose une option de ligne de commande correspondante.

Tableau 16–1 Options client DTrace

Nom de l'option 

Valeur 

Alias dtrace(1M)

Description 

Voir le chapitre 

aggrate

time

 

Vitesse de lecture de groupement 

Chapitre9Groupements

aggsize

size

 

Taille du tampon de groupement 

Chapitre9Groupements

bufresize

auto ou manual

 

Stratégie de redimensionnement du tampon 

Chapitre11Tampons et mise en tampon

bufsize

size

-b

Taille du tampon principal 

Chapitre11Tampons et mise en tampon

cleanrate

time

 

Vitesse de nettoyage. À spécifier en nombre par seconde avec le suffixe hz.

Chapitre13Suivi spéculatif

cpu

scalar

-c

CPU sur laquelle activer le suivi 

Chapitre11Tampons et mise en tampon

defaultargs

— 

 

Autorise des références à des arguments de macro non spécifiés 

Chapitre15Scripts

destructive

— 

-w

Autorise des actions destructrices 

Chapitre10Actions et sous-routines

dynvarsize

size

 

Taille d'espace de variable dynamique 

Chapitre3Variables

flowindent

— 

-F

Indente une entrée de fonction et la préfixe avec -> ; annule l'indentation du retour de fonction et la préfixe avec <-

Chapitre14Utilitaire dtrace(1M)

grabanon

— 

-a

Revendique un état anonyme 

Chapitre36Suivi anonyme

jstackframes

scalar

 

Nombre de cadres de la pile jstack() par défaut

Chapitre10Actions et sous-routines

jstackstrsize

scalar

 

Taille d'espace de chaîne par défaut pour jstack()

Chapitre10Actions et sous-routines

nspec

scalar

 

Nombre de spéculations 

Chapitre13Suivi spéculatif

quiet

— 

-q

Ne fournit que des données explicitement suivies 

Chapitre14Utilitaire dtrace(1M)

specsize

size

 

Taille du tampon de spéculation 

Chapitre13Suivi spéculatif

strsize

size

 

Taille de chaîne 

Chapitre6Chaînes de caractères

stackframes

scalar

 

Nombre de cadres de la pile 

Chapitre10Actions et sous-routines

stackindent

scalar

 

Nombre d'espaces à utiliser pour l'indentation de la sortie de stack() et de ustack()

Chapitre10Actions et sous-routines

statusrate

time

 

Vitesse de vérification du statut 

 

switchrate

time

 

Vitesse de commutation du tampon 

Chapitre11Tampons et mise en tampon

ustackframes

scalar

 

Nombre de cadres de la pile utilisateur 

Chapitre10Actions et sous-routines

Les valeurs exprimant des tailles peuvent être accompagnées d'un suffixe (facultatif) k, m, g ou t pour indiquer des kiloctets, mégaoctets, gigaoctets et téraoctets, respectivement. Les valeurs exprimant des heures peuvent être accompagnées d'un suffxe (facultatif) ns, us, ms, s ou hz pour indiquer des nanosecondes, microsecondes, millisecondes, secondes et nombre par seconde, respectivement.

Options modificatrices

Des options peuvent être définies dans un script D à l'aide de #pragma D suivi de la chaîne option et du nom de l'option. Si l'option prend une valeur, son nom doit être suivi d'un signe égal (=) et de la valeur. Les exemples suivants illustrent tous des paramètres d'option valides :

#pragma D option nspec=4
#pragma D option grabanon
#pragma D option bufsize=2g
#pragma D option switchrate=10hz
#pragma D option aggrate=100us
#pragma D option bufresize=manual

La commande dtrace(1M) accepte également la définition d'option via la ligne de commande en tant qu'argument pour l'option -x. Exemple :


# dtrace -x nspec=4 -x grabanon -x bufsize=2g \
    -x switchrate=10hz -x aggrate=100us -x bufresize=manual

Si une option non valide est spécifiée, dtrace indique que le nom de l'option n'est pas valide et se ferme :


# dtrace -x wombats=25
dtrace: failed to set option -x wombats: Invalid option name
#

De même, si une valeur d'option n'est pas valide pour l'option concernée, dtrace indique que la valeur n'est pas valide :


# dtrace -x bufsize=100wombats
dtrace: failed to set option -x bufsize: Invalid value for specified option
#

Si une option est définie plusieurs fois, les paramètres suivants remplacent les paramètres précédents. Certaines options, comme grabanon, peuvent uniquement être définies. La présence d'une telle option la définit et vous ne pouvez pas l'annuler ultérieurement.

Les options définies pour une activation anonyme seront honorées par le client DTrace revendiquant l'état anonyme. Pour plus d'informations sur l'activation du suivi anonyme, reportez-vous au Chapitre36Suivi anonyme.