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 local for use only by 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.session
Running Activities related stats.activity.session.run
How many instances active right now.activity.session.new
How many running instances with new Journal entity.activity.session.resumed
How many running instances with resumed Journal entity.activity.session.active
Is Activity window active.
activity.journal
Journal related Activity's activities.activity.journal.total
Total number of Journal entries for the Activity.activity.journal.shared
Total number of Journal entries shared with buddies.
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.