Skip to content

A Silverstripe module for facilitating profiling with XHProf.

License

Notifications You must be signed in to change notification settings

titledk/silverstripe-xhprof

 
 

Repository files navigation

XHProf module for Silverstripe

A Silverstripe module for facilitating profiling with XHProf.

Since the Silverstripe 3 release, Silverstripe's built-in profiling has been disabled (see this thread). Thus, this module has sprung out of neccesity for profiling in Silverstripe 3.

This is a fork from the XHProf PHP compiler, open sourced by Facebook in 2009. It has been amended for easy integration with Silverstripe as well as installation instructions in this readme.

Requirements

  • *nix environment (probably works on OSX as well)
  • Silverstripe 3+
    Would also work on older Silverstripe versions, but installation instructions need to be amended

Installation

XHProf needs to be installed and running on your system for this module to work. Once XHPprof has been installed, follow the following steps:

  • Download this module, and place it in your Silverstripe root, calling it xhprof
  • Edit /framework/main.php, adding the following lines at the very top (under <?php), and at the very bottom:
    include "../xhprof/_includes/header.php";
    include "../xhprof/_includes/footer.php";
  • Now, when running your site, you should see a Profiler output link on the very bottom of your site

Installing XHProf

On an *nix machine with PECL installed, follow this instruction:

  • [sudo] pecl config-set preferred_state beta
  • [sudo ] pecl install xhprof
  • Once installed, add this to the end of your php.ini file:
[xhprof]
extension=xhprof.so
xhprof.output_dir="/var/tmp/xhprof"`

You might need to create the dirctory

  • For the graphs to work, you need to install GraphViz:
    apt-get install graphviz

XHProf Resources

Other Solutions

Beyond XHProf another PHP profiling solution would be using xDebug, combined with a visualizer, which would either be built-in to an IDE, or using the PHP-based Webgrind web interface.

About

A Silverstripe module for facilitating profiling with XHProf.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • PHP 57.6%
  • C 26.1%
  • JavaScript 14.8%
  • CSS 1.4%
  • Shell 0.1%