<?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 => 'ja',
  ),
  'this' => 
  array (
    0 => 'features.dtrace.introduction.php',
    1 => 'PHP および DTrace への入門',
    2 => 'PHP および DTrace への入門',
  ),
  'up' => 
  array (
    0 => 'features.dtrace.php',
    1 => 'DTrace 動的トレーシング',
  ),
  'prev' => 
  array (
    0 => 'features.dtrace.php',
    1 => 'DTrace 動的トレーシング',
  ),
  'next' => 
  array (
    0 => 'features.dtrace.dtrace.php',
    1 => 'PHP および DTrace の使用',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'ja',
    '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">PHP および DTrace への入門</h2>

  <p class="para">
   DTrace は、常に使用可能で、オーバーヘッドが少なく、
   Solaris、macOS、Oracle Linux および BSD を含む
   多数のプラットフォーム上で使用可能なトレーシング・フレームワークです。
   DTrace は、OS の挙動およびユーザー・プログラムの実行を追跡できます。
   それは、引数の値を表示したり、パフォーマンス統計を推定することに使用できます。
   プローブは、DTrace D スクリプト言語で書かれた
   ユーザー作成のスクリプトによりモニターされます。
   これにより、データ・ポイントの効率的な分析が可能になります。
  </p>

  <p class="para">
   ユーザーの DTrace D スクリプトによりアクティブにモニターされていない
   PHP プローブには計装化コードを含みません。
   それは、通常のアプリケーション実行中は、パフォーマンス低下がないからです。
   モニターされているプローブのオーバーヘッド負荷は、
   一般的に作業中の本番システム上で DTrace をモニターしてもよいほど十分な低さです。
  </p>

  <p class="para">
   PHP は、ランタイムで駆動された
   &quot;User-level Statically Defined Tracing (USDT。ユーザーレベルの静的に定義されたトレーシング)&quot;
   プローブを組み入れます。
   例えば、D スクリプトが PHP の <code class="literal">function-entry</code> プローブをモニター中の場合、
   PHP スクリプトの関数が呼ばれるたびにこのプローブは発射され、
   関連付けられた D スクリプトの実行コードが実行されます。
   この実行コードは、例えば PHP 関数のソースファイルの場所のような、
   プローブの引数を印刷したり、
   各関数が呼ばれる回数のようなデータを集計できるでしょう。
  </p>

  <p class="para">
   PHP USDT プローブの記述はここだけです。
   任意の関数をトレースするために DTrace を使用する方法、
   および OS の挙動をトレースするための使用方法については、
   外部の一般および OS 固有の DTrace の文献を参照ください。
   すべての DTrace の機能がすべての DTrace 実装で使用可能とは
   限らないことに注意してください。
  </p>

  <p class="para">
   PHP での静的な DTrace プローブは、
   一部の Linux ディストリビューションの SystemTap 機能に対して
   代わりに使用できます。
  </p>
 </div><?php manual_footer($setup); ?>