Difference between revisions of "Platform Team/sugar-stats"
Line 11: | Line 11: | ||
== Stats server == | == Stats server == | ||
− | This project also contains a server, which is based on [[ | + | This project also contains a server, which is based on [[Platform_Team/Active_Document|active-document]] and [[Platform_Team/RESTful_Document|restful-document]], and is designed to be a part of the [[Platform_Team/Sugar_Network|Sugar Network]] and [[Platform_Team/Server_Kit/sugar-server|sugar-server]] implementations. |
− | 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/ | + | 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/SweetsDistribution:/Factory/ sugar-stats-server] from [[Sweets Distribution]]. The package contains these components: |
* {{Code|sugar-stats-server}} command, | * {{Code|sugar-stats-server}} command, | ||
Line 45: | Line 45: | ||
== Getting the code == | == Getting the code == | ||
− | * Gitorious [http://git.sugarlabs.org/ | + | * Gitorious [http://git.sugarlabs.org/shell/stats sources] repository. |
− | * Binary [http://download.sugarlabs.org/packages/ | + | * Binary [http://download.sugarlabs.org/packages/SweetsDistribution:/Factory/ packages] from [[Sweets Distribution]]. |
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. | 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 the [http://git.sugarlabs.org/ | + | See the [http://git.sugarlabs.org/shell/stats/trees/master/examples examples/] subdirectory in the sources tree for usage examples. |
===Library requirements=== | ===Library requirements=== | ||
Line 58: | Line 58: | ||
== See also == | == See also == | ||
− | * [[ | + | * [[Platform_Team/Server_Kit/sugar-client|sugar-client]] application that uses sugar-stats library. |
== Getting involved == | == Getting involved == | ||
* [http://bugs.sugarlabs.org/newticket?component=sugar-server-kit Report] on bugs. | * [http://bugs.sugarlabs.org/newticket?component=sugar-server-kit Report] on bugs. | ||
− | * Read the [http://git.sugarlabs.org/ | + | * Read the [http://git.sugarlabs.org/shell/stats/blobs/master/HACKING HACKING] file to know how to contribute with code. |
Revision as of 01:08, 25 March 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 from Sweets Distribution. The package contains these components:
sugar-stats-server
command,/etc/init.d/sugar-stats-server
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):
keyfile
, path to server's private key,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
Run the following command to get the current configuration with comments:
sugar-stats-server config
To tweak current configuration, change/create /etc/sugar-stats-server.conf
configuration file.
The following 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-network/rrd
Path to the root directory for placing stats;active-document/data-root = /var/lib/sugar-network/users
Path to the root directory for placing users' metadata;
Implementation notes
- Calculating network.school stat.
- Detecting if client host is in school network or not is based on resolving
am.i.at.school
hostname.
Getting the code
- Gitorious sources repository.
- Binary packages from Sweets Distribution.
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.
Library requirements
- RRDtool python binding.
See also
- sugar-client application that uses sugar-stats library.