0

私は、PHP スクリプトの特定の部分について高度な実行時レポートを作成するための信頼できるクリーンな方法を探していました。私がやりたいのは、スクリプトの実行中にすべてのオブジェクトのすべてのメソッド呼び出しを動的に時間追跡して追跡し、この情報をログに記録し、スクリプトの最後に出力用のテーブル/レポートを作成することです。

私は疑似コードで次の行に沿って何かをすることを考えました:

class MagicTimingClass redefines *ALL_CLASSES* {
    public function __call($name, $args) {
        log_start_time();
        $return = run_the_method();
        log_end_time();
        return $return; // return original method results
    }
}

私はこれを行うことができないことを知っています.PHPについてrunkit/classkitを調べましたが、これが私が探していることを正確に行うのに役立つかどうかはわかりません.

このレベルのデバッグ用にクラスを一時的に変更し、コードを本番環境に移行する必要があるときに再度変更を解除することなく、どのメソッドがスクリプトのボトルネックを引き起こしているかを判断できるように、レポートを取得したいと考えています。

誰かが何か考えやリードを持っていれば、それは素晴らしいことです! 前もって感謝します

4

1 に答える 1

3

Xdebugのようなプロファイラーを使用できます。これは、コードをまったく変更する必要がないことを意味します。

于 2010-03-31T14:46:32.963 に答える