GitHub - odoucet/xhprof: XHProf is a function-level hierarchical profiler for PHP and has a simple HTML based user interface. The raw data collection component is implemented in C (as a PHP extension). The reporting/UI layer is all in PHP. It is capable of reporting function-level call counts and inclusive and exclusive wall time, CPU time and memory usage. Additionally, it supports ability to compare two runs (hierarchical DIFF reports), or aggregate results from multiple runs. Originally developed at Facebook, XHProf was open sourced in Mar, 2009. · GitHub
Skip to content
odoucetPublic
forked from phacility/xhprof

About

XHProf is a function-level hierarchical profiler for PHP and has a simple HTML based user interface. The raw data collection component is implemented in C (as a PHP extension). The reporting/UI layer is all in PHP. It is capable of reporting function-level call counts and inclusive and exclusive wall time, CPU time and memory usage. Additionally,…

Resources

Stars

3 stars

Watchers

1 watching

Forks

 
 

Repository files navigation

This branch/clone/whatever git calls it of the official Facebook GUI does a few things:

  • It includes a header.php document you can use with PHP's auto_prepend_file directive. It sets up profiling by initilizing a few variables, and settting register_shutdown_function with the fooder. Once started profiles are done when requested (?_profile=1), or randomly. Profiled pages display a link to their profile results at the bottom of the page (this can be disabled on a black list bases for specific documents. e.g. pages generating XML, images, etc.).
  • For tips on including header.php on an nginx + php-fpm install take a look at: http://www.justincarmony.com/blog/2012/04/23/php-fpm-nginx-php_value-and-multiple-values/
  • The GUI is a bit prettier (Thanks to Graham Slater)
  • It uses a MySQL backend, the database schema is stored in xhprof_runs.php
  • There's a front end to view different runs, compare runs to the same url, etc.

Key features include:

  • Listing 25, 50 most recent runs
  • Display most expensive (cpu), longest running, or highest memory usage runs for the day
  • It introduces the concept of "Similar" URLs. Consider:
  • Highcharts is used to graph stats over requests for an easy heads up display.

Requirements:

Work that we're still doing:

  • The aggregation functionality is ignored completely
  • The code is... a mess. Deadlines do that to you, we're working on it
  • The default table schema isn't indexed all the places it needs to be
  • Easier ways to diff URLs

About

XHProf is a function-level hierarchical profiler for PHP and has a simple HTML based user interface. The raw data collection component is implemented in C (as a PHP extension). The reporting/UI layer is all in PHP. It is capable of reporting function-level call counts and inclusive and exclusive wall time, CPU time and memory usage. Additionally,…

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages