Add the following dotdeb repos to your source.list, although you need to be ok with running the dotdeb version of potentially other packages such as PHP itself.
nano /etc/apt/sources.list deb http://packages.dotdeb.org stable all deb-src http://packages.dotdeb.org stable all deb http://php53.dotdeb.org stable all deb-src http://php53.dotdeb.org stable all
Add the dotdeb key:
wget -O- -q http://www.dotdeb.org/dotdeb.gpg | apt-key add -
Run the update for the repos:
My wheezy apt could not find the packages as previously mentioned "pinba-mysql-5.5" so I needed to search on the apt cache to find the actual name:
# apt-cache search pinba collectd-core - statistics collection and monitoring daemon (core system) php5-pinba - pinba module for php5 pinba-engine-mysql-5.5 - realtime statistics server for PHP using MySQL as a read-only interface
And a quick install of the engine, adding passwords for root user where applicable:
apt-get install pinba-engine-mysql-5.5
Now install the PHP module:
apt-get install php5-pinba
Make sure that in the PHP module config for Pinba you have the correct setting to enable its use:
; configuration for php pinba module ; priority=20 extension=pinba.so pinba.enabled = 1 pinba.server = 127.0.0.1
Checking though phpmyadmin shows that its installed and operational:
Pinba Pinboard Setup
The best tool that I know of *so far* for collating and presenting the results collected by Pinba is a PHP tool called "Pinboard" created by a Russian development firm called Intaro. It provides aggregated statistics and also realtime view of collected data. It's clever enough to separate results by requests so you can see multiple sites collated independently so that you can concentrate on application required.
Installation was a simple as following the instructions on the GitHub page and after a few mistakes of my own it was operational on a new virtualmin host having modified the vhost's
DocumentRoot to use the applications
web version, all was working.
I spotted spot a couple of oddities on my setup (fcgid and suexec) where the following needed setting for the CRON to function as it should:
- The path to the CRON job for the aggregation of statistics was incorrect
/home/pinboard/src/Pinboard/Command/console aggregateand it should have been
/home/pinboard/console aggregatein my guess.
src/init.phpneeded PHP timezone setting
Once the items above were implemented and fixed, data regarding PHP usage was being populated (based on the intervals defined in the CRON):