Line 1: |
Line 1: |
| + | {{Note/note|This is page is about development version.|If you are looking for information about stable release, follow to [[Platform_Team/sugar-stats/0.1|separate page]].}} |
| + | |
| == Summary == | | == Summary == |
| | | |
Line 8: |
Line 10: |
| | | |
| More (0.86+) Sugar versions might be added on demand. | | More (0.86+) Sugar versions might be added on demand. |
− |
| |
− | == Stats server ==
| |
− |
| |
− | 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.
| |
− |
| |
− | 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|/etc/sugar-stats.conf}} default configuration,
| |
− | * {{Code|/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 [[Sugar_Server_Kit/sugar-client#Usage statistics|client]] should use the same certificate):
| |
− |
| |
− | * {{Code|stats-keyfile}}, path to server's private key,
| |
− | * {{Code|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 {{Code|trust-users}} parameter.
| |
− |
| |
− | === Configuration ===
| |
− |
| |
− | 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
| |
− |
| |
− | 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 for placing stats;
| |
− | * {{Code|active-document/data-root <nowiki>=</nowiki> /var/lib/sugar-stats/users}}<br>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 {{Code|am.i.at.school}} hostname.
| |
| | | |
| == Getting the code == | | == Getting the code == |
| | | |
− | * Gitorious [http://git.sugarlabs.org/server/stats sources] repository. | + | * Gitorious [http://git.sugarlabs.org/desktop/stats sources] repository. |
− | * 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/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/server/stats/trees/master/examples examples/] subdirectory in the sources tree for usage examples. | + | See the [http://git.sugarlabs.org/desktop/stats/trees/master/examples examples/] subdirectory in the sources tree for usage examples. |
| | | |
− | ===Library requirements=== | + | === 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]. |
Line 57: |
Line 26: |
| == See also == | | == See also == |
| | | |
− | * [[Sugar_Server_Kit/sugar-client|sugar-client]] application that uses sugar-stats library. | + | * [[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/server/stats/blobs/master/HACKING HACKING] file to know how to contribute with code. | + | * Read the [http://git.sugarlabs.org/desktop/stats/blobs/master/HACKING HACKING] file to know how to contribute with code. |