| |||||||||||||||||||||
サイト内検索
カスタム検索
|
PHP プログラミング
» Xdebug によるプロファイリングとプロファイリングログの解析
Xdebug によるプロファイリングとプロファイリングログの解析Xdebug を利用すると PHP プログラムのプロファイリング (Profiling) を行うことができます。 プロファイリングの有効化プロファイリングを有効にするには、php.ini にて xdebug.profiler_enable スイッチを On にします。 xdebug.profiler_enable = 1 xdebug.profiler_output_dir = "C:/Temp" profiler_output_dir はプロファイラログの出力先を指定します。 ログの追加ログを既存ログの上書きではなく、追加する場合は xdebug.profiler_append を On にします。 xdebug.profiler_append = 1 ファイル名の指定プロファイラログファイル名を明示的に指定する場合は、トレースファイルと同様にファイル名を指定することができます。 プロファイラでのみ利用可能な指定子としては、%s があります。これはファイル名のフルパスを意味します。 プロファイリングログの解析プロファイリングログは以下のような情報です。
==== NEW PROFILING FILE ==============================================
version: 0.9.6
cmd: C:\Temp\tracetest.php
part: 1
events: Time
fl=C:\Temp\tracetest.php
fn=foo
7 11
fl=C:\Temp\tracetest.php
fn={main}
summary: 968
0 957
cfn=foo
calls=1 0 0
7 11
これは KCachegrind または WinCachegrind で解析します。 WinCachegrind によるプロファイリングログの解析WinCachegrind の入手WinCachegrind はオープンソースのソフトウェアで、Windows の環境で Cachegrind 互換のフォーマットのログファイルを解析することができます。 あるプロファイリングログの解析画面です。
上記のログによって、ひと目で mysql_connect にて 104ms、 mysql_select_db で 29ms、mysql_query で 9.3ms 要したことが確認できます。 | ||||||||||||||||||||
© 2008-2010 小山圭介 All Rights Reserved. |
|||||||||||||||||||||