Platform Team/Usage Statistics
Summary
Sugar usage statistics might be very useful from, e.g., an educational or research point of view. Statistics might be anonymous or personalized (by taking special efforts to keep information secure and locally used only for a particular deployment).
Statistics
All types of statistics are identified by IDs in a dot separated hierarchy. This makes it possible to refer to the particular type or level of data.
shell
Shell related stats.shell.run
Shell process is run.shell.active
Shell or activity window is active.shell.collab
Collaboration related stats in Shell.shell.collab.buddies
Number of buddies in the Neighborhood view.
activity
Activities related stats; specified only for the particular activity.activity.run
Activity is run.activity.active
Activity window is active.activity.collab
Collaboration related stats for activities.activity.collab.buddies
Number of buddies activity is interacting with.
system
System related stats.system.uptime
System uptime value.
Implementation
Monitor
The usage statistics will be gathered by sniffing DBus and X11 messages in the sugar-client program launched with the monitor
command. The sugar-client
will stay in daemon mode, and send collected and filtered data to the sugar-server, or, will keep it for later collection in server-less environments.
Journal crawler
In addition to the realtime monitoring, it might be useful to collect some stats from the Journal. It should be possible to run this code on a client side, or, on school servers using Journal backups.
This feature was implemented in Paraguay, but is not being used right now.