webgrind: xdebug php profiling

a web-based xdebug profiling frontend for php, similar to kcachegrind.

webgrind provides a simple php-powered interface for examining the output of xdebug’s profiling reports, for a quick and simply overview of the performance costs in various areas of your php application.

this was designed to be a simple drop-in-place script to allow relatively hassle-free profiling, especially owing to the lack of php profiling tools on os x. webgrind provides a usable report on functions, methods, file includes and more.

xdebug is a debugging platform for php implemented as a php extension. it can watch the execution of a php script, then generate a profile information report. the profile info file can then be opened with kcachegrind. the profiling report includes calls to and time spent within functions, which functions are calling a given function and the overall cost of a procedure as part of the total script execution time. webgrind is simply an alternative to kcachegrind for examining the output report.

post-webgrind_large

the output isn’t as detailed as a desktop based debugging and profiling system, such as the plugin for eclipse pdt / zend studio for eclipse. on the other hand, installation is as simple as dropping a php script into the webroot and loading it up in a browser. since its release, webgrind has had a number of updates from the authors, including the current 0.7 release which offers version checking and support for loading a specific report.

see the google code page for more details.