<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/features.dtrace.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'fr',
  ),
  'this' => 
  array (
    0 => 'features.dtrace.introduction.php',
    1 => 'Introduction &agrave; PHP et DTrace',
    2 => 'Introduction &agrave; PHP et DTrace',
  ),
  'up' => 
  array (
    0 => 'features.dtrace.php',
    1 => 'DTrace Tra&ccedil;age dynamique',
  ),
  'prev' => 
  array (
    0 => 'features.dtrace.php',
    1 => 'DTrace Tra&ccedil;age dynamique',
  ),
  'next' => 
  array (
    0 => 'features.dtrace.dtrace.php',
    1 => 'Utiliser PHP et DTrace',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'fr',
    'path' => 'features/dtrace.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="features.dtrace.introduction" class="sect1">
  <h2 class="title">Introduction à PHP et DTrace</h2>

  <p class="para">
   DTrace est un framework de traçage toujours disponible, à faible surcharge,
   disponible sur plusieurs plateformes, incluant Solaris, macOS,
   Oracle Linux et BSD.  DTrace peut tracer le comportement du système d&#039;exploitation
   et l&#039;exécution des programmes utilisateurs. Il peut afficher les valeurs des arguments et être
   utilisé pour déduire des statistiques de performance.  Les sondes sont contrôlées par des scripts
   créés par l&#039;utilisateur et écrits dans le langage de script DTrace D. Cela
   permet une analyse efficace des points de données.
  </p>

  <p class="para">
   Les sondes PHP qui ne sont pas activement surveillées par le script DTrace
   D de l&#039;utilisateur ne contiennent pas de code instrumenté, il n&#039;y a donc
   pas de dégradation des performances lors de l&#039;exécution normale de l&#039;application.
   Les sondes qui sont surveillées ont un coût de fonctionnement assez faible pour
   généralement permettre la surveillance de DTrace sur les systèmes de production.
  </p>

  <p class="para">
   PHP incorpore des sondes de &quot;Traçage Statique Défini par l&#039;Utilisateur&quot; (USDT)
   qui sont déclenchées au moment de l&#039;exécution. Par exemple, lorsqu&#039;un script D
   surveille la sonde <code class="literal">function-entry</code> de PHP, alors,
   chaque fois qu&#039;une fonction du script PHP est appelée, cette sonde est déclenchée et
   le code d&#039;action du script D associé est exécuté.  Ce code d&#039;action
   pourrait, par exemple, imprimer les arguments de la sonde tels que l&#039;emplacement du fichier
   source de la fonction PHP. L&#039;action peut également regrouper des données
   comme le nombre de fois où chaque fonction est appelée.
  </p>

  <p class="para">
   Seules les sondes PHP USDT sont décrites ici.  Se référer à la documentation externe
   générale et spécifique au système d&#039;exploitation pour voir comment
   DTrace peut être utilisé pour tracer des fonctions arbitraires, et comment il peut être utilisé
   pour tracer le comportement du système d&#039;exploitation. Il est à noter que toutes les fonctionnalités
   de DTrace ne sont pas disponibles dans toutes les implémentations de DTrace.
  </p>

  <p class="para">
   Les sondes DTrace statiques dans PHP peuvent alternativement être utilisées avec la fonction
   SystemTap sur certaines distributions Linux.
  </p>
 </div><?php manual_footer($setup); ?>