So I wanted stats on who was using what.

I decided to get there. The gentoo stats code that was previously written is fine but I thought would not suit my needs.

My goals were:
* Finish in under 14 days.
* Non-complicated
* Easy
* Fast enough

I came up with gstats.

gstats is:

* a multi-threaded python webserver (from Paste).
* that takes in POST requests of ASCII data (Colubrid and Routes)
* Has a data injection thread that injects uploaded data into the in-memory cache and then serializes the cache to disk.
* Has some views to view the data in the in-memory cache (Mako Templates)
* uses the new dev-cpp/gflags ;)

Currently gstats only supports ARCH and CPV data (so who is using what packages on what arch).
The POST format is ASCII and is still being iterated on. I plan on running this in a public ‘alpha’ in a bit.
The Mako templates need work.

There is no SQL involved. The disk format is:

uploaded/ - contains files uploaded by clients.
procesesd/ - contains files we have added to the cache.
archived/ - contains files that are old.

The queries are not complex enough to require anything else. The in-memory cache probably has some nasty memory requirements but is probably OK for now.

If you are a dev you can git clone git.gentoo.org:/var/gitroot/gstats.git

Otherwise you are SOL until I push the code to anongit.gentoo.org, which will happen when I get time.