Difference between revisions of "Platform Team/sugar-stats"

From Sugar Labs
Jump to navigation Jump to search
Line 7: Line 7:
 
* 0.94
 
* 0.94
  
More (0.86+) Sugar version might be added on demand.
+
More (0.86+) Sugar versions might be added on demand.
  
 
== Stats server ==
 
== Stats server ==
  
Project contains also a server which is based on [[Sugar_Server_Kit/Active_Document|active-document]] and [[Sugar_Server_Kit/RESTful_Document|restful-document]] and designed to be a part of [[Platform_Team/Sugar_Network|Sugar Network]] and [[Sugar Server Kit/sugar-server|sugar-server]] implementations.
+
This project also contains a server, which is based on [[Sugar_Server_Kit/Active_Document|active-document]] and [[Sugar_Server_Kit/RESTful_Document|restful-document]], and is designed to be a part of the [[Platform_Team/Sugar_Network|Sugar Network]] and [[Sugar Server Kit/sugar-server|sugar-server]] implementations.
  
Standalone server might be launched using {{Code|sugar-stats-server}} command from project sources. The easiest way is using binary package [http://download.sugarlabs.org/packages/Server:/Factory/ sugar-stats-server]. The package contains:
+
A standalone server might be launched using the {{Code|sugar-stats-server}} command from project sources. The easiest way is using the binary package [http://download.sugarlabs.org/packages/Server:/Factory/ sugar-stats-server]. The package contains these components:
  
 
* {{Code|sugar-stats-server}} command,
 
* {{Code|sugar-stats-server}} command,
Line 19: Line 19:
 
* {{Code|/etc/init.d/sugar-stats}} daemon.
 
* {{Code|/etc/init.d/sugar-stats}} daemon.
  
For stats transfering from clients, it is useful to use secure SSL connection. Server configuration needs to be tweaked (the [[Sugar_Server_Kit/sugar-client#Usage statistics|client]] should use the same certificate):
+
For stats transferring from clients, it is useful to use secure, SSL connections. The server configuration needs to be tweaked (and the [[Sugar_Server_Kit/sugar-client#Usage statistics|client]] should use the same certificate):
  
 
* {{Code|stats-keyfile}}, path to server's private key,
 
* {{Code|stats-keyfile}}, path to server's private key,
 
* {{Code|stats-certificate}}, path to server's certificate file.
 
* {{Code|stats-certificate}}, path to server's certificate file.
  
Server will authenticate clients using SSH keys generated on client side by Sugar Shell. To let server check client signatures, OpenSSH-5.6+ should be installed on server side. For less than 5.6 versions, authentication needs to be disabled using {{Code|trust-users}} parameter.
+
Server will authenticate clients using SSH keys generated on the client side by Sugar Shell. To let the server check client signatures, OpenSSH-5.6+ should be installed on the server side. For versions lower than 5.6, authentication needs to be disabled using the {{Code|trust-users}} parameter.
  
 
=== Configuration ===
 
=== Configuration ===
  
Read the {{Code|/etc/sugar-stats.conf}} for explanation or run the following command to get current configuration with comments:
+
Read the {{Code|/etc/sugar-stats.conf}} for explanation, or run the following command to get the current configuration with comments:
  
 
  sugar-stats-server config
 
  sugar-stats-server config
  
The important parameters that need to be set before using the server (for sugar-stats-server installed from packages there are initialized by meaningful values):
+
These important parameters need to be set before using the server. (When sugar-stats-server is installed from packages, they are initialized to meaningful values.):
  
* {{Code|stats/stats-root <nowiki>=</nowiki> /var/lib/sugar-stats/rrd}}<br>Path to the root directory to place stats;
+
* {{Code|stats/stats-root <nowiki>=</nowiki> /var/lib/sugar-stats/rrd}}<br>Path to the root directory for placing stats;
* {{Code|active-document/data-root <nowiki>=</nowiki> /var/lib/sugar-stats/users}}<br>Path to the root directory to place documents' data and indexes;
+
* {{Code|active-document/data-root <nowiki>=</nowiki> /var/lib/sugar-stats/users}}<br>Path to the root directory for placing documents' data and indexes;
  
 
== Getting the code ==
 
== Getting the code ==
Line 42: Line 42:
 
* Binary [http://download.sugarlabs.org/packages/Server:/Factory/ packages] build for distributions [[Sugar_Server_Kit#Supported_platforms|supported]] by SSK.
 
* Binary [http://download.sugarlabs.org/packages/Server:/Factory/ packages] build for distributions [[Sugar_Server_Kit#Supported_platforms|supported]] by SSK.
  
Library requires:
+
===Library requirements===
  
 
* RRDtool [http://oss.oetiker.ch/rrdtool/prog/rrdpython.en.html python binding].
 
* RRDtool [http://oss.oetiker.ch/rrdtool/prog/rrdpython.en.html python binding].
  
For using, library does not require any building routines, just provide full path to the {{Code|active_document/}} subdirectory via {{Code|PYTHONPATH}} environment variable.
+
In use, the library does not require any building routines, just provide the full path to the {{Code|active_document/}} subdirectory via the {{Code|PYTHONPATH}} environment variable.
  
See [http://git.sugarlabs.org/server/stats/trees/master/examples examples/] subdirectory in the sources tree for usage examples.
+
See the [http://git.sugarlabs.org/server/stats/trees/master/examples examples/] subdirectory in the sources tree for usage examples.
  
 
== See also ==
 
== See also ==

Revision as of 15:44, 28 January 2012

Summary

Library to gather Sugar usage statistics. The gathering method is based on sniffing DBus and X11 events.

Supported Sugars

  • 0.94

More (0.86+) Sugar versions might be added on demand.

Stats server

This project also contains a server, which is based on active-document and restful-document, and is designed to be a part of the Sugar Network and sugar-server implementations.

A standalone server might be launched using the sugar-stats-server command from project sources. The easiest way is using the binary package sugar-stats-server. The package contains these components:

  • sugar-stats-server command,
  • /etc/sugar-stats.conf default configuration,
  • /etc/init.d/sugar-stats daemon.

For stats transferring from clients, it is useful to use secure, SSL connections. The server configuration needs to be tweaked (and the client should use the same certificate):

  • stats-keyfile, path to server's private key,
  • stats-certificate, path to server's certificate file.

Server will authenticate clients using SSH keys generated on the client side by Sugar Shell. To let the server check client signatures, OpenSSH-5.6+ should be installed on the server side. For versions lower than 5.6, authentication needs to be disabled using the trust-users parameter.

Configuration

Read the /etc/sugar-stats.conf for explanation, or run the following command to get the current configuration with comments:

sugar-stats-server config

These important parameters need to be set before using the server. (When sugar-stats-server is installed from packages, they are initialized to meaningful values.):

  • stats/stats-root = /var/lib/sugar-stats/rrd
    Path to the root directory for placing stats;
  • active-document/data-root = /var/lib/sugar-stats/users
    Path to the root directory for placing documents' data and indexes;

Getting the code

Library requirements

In use, the library does not require any building routines, just provide the full path to the active_document/ subdirectory via the PYTHONPATH environment variable.

See the examples/ subdirectory in the sources tree for usage examples.

See also

Getting involved

  • Report on bugs.
  • Read the HACKING file to know how to contribute with code.