XHProf is a function-level hierarchical profiler for PHP and has a simple HTML based navigational interface. The raw data collection component is implemented in C (as a PHP extension). The reporting/UI layer is all in PHP.
Common Terms:
Inclusive Time includes the time spent in the function itself and in all the descendant functions;
Exclusive Time only measures time spent in the function itself, without including the descendant calls.
Install the PHP5 module:
graphviz Installation it's used for Displaying the execution path in a kind
of flow chart between methods.
# for centos sudo
yum install graphviz
# for ubuntu and debian
sudo apt-get install graphviz
Install PECl on centos:
yum install php-pear
But get: No package Available
For Centos 5:
rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm;
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-5.rpm;
For Centos 6:
rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm;
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm;
Install php -pear:
yum --enablerepo=remi,remi-php55 install php-pear
For Ubuntu OS:
sudo pear upgrade pear
sudo pecl install -f xhprof
Add this to php.ini
extension=xhprof.so
sudo /etc/init.d/apache2 restart
Install xhprof:
sudo pecl config-set preferred_state beta
sudo pecl install xhprof
cd /tmp
wget http://pecl.php.net/get/xhprof-0.9.4.tgz
tar zxf xhprof-0.9.4.tgz
cd xhprof-0.9.4/extension
phpize ./configure
make
sudo make install
# for centos
sudo touch /etc/php.d/xhprof.ini
# for ubuntu and debian
sudo touch /etc/php5/conf.d/xhprof.ini
Paste the below code in to xhprof.ini
[xhprof]
extension=xhprof.so
xhprof.output_dir="/tmp/xhprof"
Then restart the web server by below command
# for centos
sudo /etc/init.d/httpd restart
# for ubuntu and debian
sudo /etc/init.d/apache2 restart
Install the supporting PHP code
git clone git://github.com/preinheimer/xhprof.git
cd xhprof_lib/
cp config.sample.php config.php
Move xhprof
Move xhprof file from tmp folder to opt folder(It preserve xhprof file never delete when server restart)
mv xhprof-0.9.4 /opt
Create the alias for the xhprof at apache conf for the file location:
For Apache2:
cd /etc/apache2/sites-enabled/000-default.conf
Alias /xhprof /opt/xhprof-0.9.2/xhprof_html
For Apache:
cd /etc/httpd/conf/httpd.conf
Alias /xhprof /opt/xhprof-0.9.2/xhprof_html.
Put the entry on web interface(UI):
Save the configurations of xhprof file and alias in devel settings.
SITE_URL/admin/config/development/devel
Report
Now we can check the Xhprof process.
Ref Link: https://stojg.se/blog/2011-08-27-install-xhprof-for-php5-on-centos-ubunt...
More Details: http://techportal.inviqa.com/2009/12/01/profiling-with-xhprof/
Comment | File | Size | Author |
---|---|---|---|
report.png | 1.02 MB | arunkumark | |
xhprof_configuration.png | 14.46 KB | arunkumark |
Comments
Comment #2
arunkumarkComment #3
arunkumarkComment #4
apadernoIs this a suggestion for a new documentation page?