intaro / pinboard

Realtime PHP monitoring system which aggregates and displays Pinba data.
http://intaro.github.io/pinboard/
MIT License
477 stars 90 forks source link
php pinba silex

Intaro Pinboard

Intaro Pinboard (Pinba Board) is a realtime PHP monitoring system which aggregates and displays pinba data.

Intaro Pinboard

Developed on Silex framework and works with PHP 5.3.3 or later.

Installation

Before Pinboard installation you should already be installed pinba. Since the version 1.5 Intaro Pinboard requires Pinba 1.1 or higher.

  1. Download application:

    $ git clone git://github.com/intaro/pinboard.git --branch=v1.5.2
  2. Download composer:

    $ curl -sS https://getcomposer.org/installer | php
  3. Install dependency libraries through composer (and enter the parameters of connection to Pinba database):

    $ php composer.phar install
  4. Initialize app (command will create additional tables and define crontab task):

    $ ./console migrations:migrate
    $ ./console register-crontab
  5. Point the document root of your webserver or virtual host to the web/ directory. Read more in Silex documentation. Example for nginx + php-fpm:

    server {
        listen 80;
        server_name pinboard.site.ru;
        root /var/www/pinboard/web;
    
        #site root is redirected to the app boot script
        location = / {
            try_files @site @site;
        }
    
        #all other locations try other files first and go to our front controller if none of them exists
        location / {
            try_files $uri $uri/ @site;
        }
    
        #return 404 for all php files as we do have a front controller
        location ~ \.php$ {
           return 404;
        }
    
        location @site {
            fastcgi_pass unix:/tmp/php-fpm.sock;
            include fastcgi_params;
            fastcgi_param  SCRIPT_FILENAME $document_root/index.php;
            fastcgi_param HTTPS $https if_not_empty;
        }
    
        location ~ /\.(ht|svn|git) {
            deny  all;
        }
    }

More details in section Installation of the documentation.

Update

Update from 0.1 to 1.0

Branch 1.0 brings migrations machinery which allows to update Pinboard easy when it requires database schema transformation.

Switch to branch 1.0

$ git fetch
$ git checkout v1.0

Update vendors

$ php composer.phar update

Register migration

$ ./console migrations:version --add 20131013132150

Update between 1.x versions

Switch to branch 1.x

$ git fetch
$ git checkout v1.x

Update vendors

$ php composer.phar update

Apply changes to database

$ ./console migrations:migrate

Add to parameters.yml new options from parameters.yml.dist.

More Information

Documentation in Wiki.

License

Intaro Pinboard is licensed under the MIT license.