Server Stats

From OpenSimulator

Jump to: navigation, search


Region Service memory consumption
Monitoring of OpenSimulator threads...
Check out the CPU-load

Installation steps

  • Get Serverstats from Berlios
  • Install rrdtool (depending on your distro, it should be in the repository. Otherwise download here)
  • Copy serverstats to /my/apache/root/serverstats
  • Move ./serverstats/config.sample/ to ./serverstats/config/
  • Get the OpenSimulator serverstats module, and place in the config directory:
cd ./serverstats/config
svn checkout http://forge.opensimulator.org/svn/serverstats/trunk .
  • Edit ./serverstats/config/sources.php, and add this code:
include "opensim.php";
$config['opensim']['module'] = new opensim();
  • Edit ./serverstats/config/graph.php, and add this code:
$config['list'][] = array(
        'title' => 'OpenSimulator CPU',
        'lowerLimit' => 0,
        'altAutoscaleMax' => true,
        'content' => array(
                array(
                        'type' => 'AREA',
                        'source' => 'opensim',
                        'ds' => 'opensim_cpu_sys',
                        'cf' => 'AVERAGE',
                        'legend' => 'OpenSimulator Sys CPU%',
                        'color' => 'FF0000',
                ),
                array(
                        'type' => 'AREA',
                        'source' => 'opensim',
                        'ds' => 'opensim_cpu_user',
                        'cf' => 'AVERAGE',
                        'legend' => 'OpenSimulator User CPU%',
                        'color' => '00FF00',
                        'stacked' => true,
                ),
        )
);
 
$config['list'][] = array(
	'title' => 'OpenSimulator Threads',
	'lowerLimit' => 0,
	'altAutoscaleMax' => true,
	'content' => array(
		array(
		 'type' => 'AREA',
                        'source' => 'opensim',
                        'ds' => 'opensim_threads',
                        'cf' => 'AVERAGE',
                        'legend' => 'number of opensim threads',
                        'color' => '0000BB',
		),
        )
);
 
$config['list'][] = array(
	'title' => 'OpenSimulator Memory',
        'lowerLimit' => 0,
        'altAutoscaleMax' => true,
	'content' => array(
		array(
			'type' => 'AREA',
                        'source' => 'opensim',
                        'ds' => 'opensim_virt',
                        'cf' => 'AVERAGE',
                        'legend' => 'OpenSimulator Memory (Virt)',
                        'color' => '00BB00'
                ),
		array(
                        'type' => 'AREA',
                        'source' => 'opensim',
                        'ds' => 'opensim_real',
                        'cf' => 'AVERAGE',
                        'legend' => 'OpenSimulator Memory (Real)',
                        'color' => 'BB0000'
                ),
        )
);

now find the following bit of code at the bottom:

// Define what Graphes we want in the detail view (detail.php)
$config['types'] = array(
//	array('title' => 'Hour', 'period' => 3600), // only useful if you have a small step
	array('title' => 'Day', 'period' => 86400),
	array('title' => 'Week', 'period' => 604800),
	array('title' => 'Month', 'period' => 2678400),
	array('title' => 'Year', 'period' => 31536000)
);
// The period uses in the graph overview (index.php)
$config['defaultperiod'] = 86400;

and change it to:

// Define what Graphes we want in the detail view (detail.php)
$config['types'] = array(
	array('title' => 'Hour', 'period' => 10800), // only useful if you have a small step
	array('title' => 'Day', 'period' => 86400),
	array('title' => 'Week', 'period' => 604800),
	array('title' => 'Month', 'period' => 2678400),
	array('title' => 'Year', 'period' => 31536000)
);
// The period uses in the graph overview (index.php)
$config['defaultperiod'] = 10800;
  • Edit ./serverstats/config/main.php, and change this code:

from:

'step' => 300

to:

'step' => 60
  • Make sure you allow php to access /proc . Edit php.ini and set open_basedir = ..:/proc
  • Add a crontab with 'crontab -e', and enter a cronjob for update.php:
* * * * * php /my/apache/root/serverstats/update.php
  • Check out if the script executes the way it's supposed to be, by running it from the shell.
php update.php

Done! Now check out if the graphs are generated, by pointing your browser to the serverstats directory. You'll see some nice stats if everything went right.

Personal tools
General
About This Wiki