It draxs interactive graphs at the clients side, wich is nice since the raspberry pi isn't exactly a powerhouse of processing.
More infor about CGP on : https://github.com/pommi/CGP
Let's get crackin':
Install an HTTP server and PHP5 plugin; in this setup we'll go for nginx.
sudo apt-get install nginx php5-fpm
Lets config the NginX
sudo nano /etc/nginx/sites-enabled/default
|
##
server { listen 80; server_name localhost; root /var/www; index index.php; # This catches requests other than /CGP/rrd/ and PHP (see below) location /CGP/ { gzip on; gzip_types "application/javascript text/css"; # The static files do not change often, cache hint 1 month expires 1M; } # Assume that CGP is located at /srv/http/CGP/, directly serve the RRD data # files for use with the canvas graph type. Add compression to reduce data # usage by 70% - 80%. location /CGP/rrd/ { alias /var/lib/collectd/rrd/; gzip on; gzip_types "*"; # Cache hint: browser can recheck after 10 minutes expires 10m; #gzip_comp_level 3; } # Process PHP files through PHP-FPM location ~ \.php$ { try_files $uri =404; fastcgi_pass unix:/run/php5-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } # Disallow access to hidden files and directories (such as .git/) location ~ /\. { deny all; } } |
Yeey that's the server done; lets put some files in there
cd /var/www
sudo git clone https://github.com/pommi/CGP.git cd CGP/conf nano config.php |
Make the Highlighted changes
<?php
# collectd version $CONFIG['version'] = 5; # collectd's datadir $CONFIG['datadir'] = '/var/lib/collectd/rrd'; # location of the types.db file $CONFIG['typesdb'][] = '/usr/share/collectd/types.db'; # rrdtool executable $CONFIG['rrdtool'] = '/usr/bin/rrdtool'; # rrdtool special command-line options $CONFIG['rrdtool_opts'] = array(); # category of hosts to show on main page #$CONFIG['cat']['category1'] = array('host1', 'host2'); # default plugins to show on host page $CONFIG['overview'] = array('load', 'cpu', 'memory', 'swap'); # example of filter to show only the if_octets of eth0 on host page # (interface must be enabled in the overview config array) #$CONFIG['overview_filter']['interface'] = array('ti' => 'eth0', 't' => 'if_octets'); # default plugins time range $CONFIG['time_range']['default'] = 86400; $CONFIG['time_range']['uptime'] = 31536000; # show load averages and used memory on overview page $CONFIG['showload'] = true; $CONFIG['showmem'] = false; $CONFIG['term'] = array( '2hour' => 3600 * 2, '8hour' => 3600 * 8, 'day' => 86400, 'week' => 86400 * 7, 'month' => 86400 * 31, 'quarter'=> 86400 * 31 * 3, 'year' => 86400 * 365, ); # show graphs in bits or bytes $CONFIG['network_datasize'] = 'bytes'; # "png", "svg", "canvas" or "hybrid" (canvas on detail page, png on the others) graphs $CONFIG['graph_type'] = 'canvas'; # For canvas graphs, use 'async' or 'sync' fetch method $CONFIG['rrd_fetch_method'] = 'sync'; # use the negative X-axis in I/O graphs $CONFIG['negative_io'] = false; # add XXth percentile line + legend to network graphs # false = disabled; 95 = 95th percentile $CONFIG['percentile'] = false; # create smooth graphs (rrdtool -E) $CONFIG['graph_smooth'] = false; # draw min/max spikes in a lighter color in graphs with type default $CONFIG['graph_minmax'] = false; # The URL that provides RRD files for the "canvas" graph type. Examples: # 'rrd/{file}' is replaced by 'rrd/example.com/load/load.rrd' # 'rrd.php?path={file_escaped}' becomes 'rrd.php?path=host%3Fload%3Fload.rrd' $CONFIG['rrd_url'] = 'rrd.php?path={file_escaped}'; # browser cache time for the graphs (in seconds) $CONFIG['cache'] = 90; # page refresh (in seconds) $CONFIG['page_refresh'] = ''; # default width/height of the graphs $CONFIG['width'] = 400; $CONFIG['height'] = 175; # default width/height of detailed graphs $CONFIG['detail-width'] = 800; $CONFIG['detail-height'] = 350; # max width/height of a graph (to prevent from OOM) $CONFIG['max-width'] = $CONFIG['detail-width'] * 2; $CONFIG['max-height'] = $CONFIG['detail-height'] * 2; # collectd's unix socket (unixsock plugin) # enabled: 'unix:///var/run/collectd-unixsock' # enabled (rrdcached): 'unix:///var/run/rrdcached.sock' # disabled: NULL $CONFIG['socket'] = NULL; # flush rrd data to disk using "collectd" (unixsock plugin) # or a "rrdcached" server $CONFIG['flush_type'] = 'collectd'; # system default timezone when not set $CONFIG['default_timezone'] = 'UTC'; # load local configuration if (file_exists(dirname(__FILE__).'/config.local.php')) include_once 'config.local.php'; |
sudo service nginx restart
http://192.168.1.147/CGP/ ==> should now work
Geen opmerkingen:
Een reactie posten