Closed Bug 324558 Opened 18 years ago Closed 18 years ago

Build data collection service to gather browser metrics

Categories

(Firefox :: General, enhancement)

enhancement
Not set
normal

Tracking

()

RESOLVED FIXED
Firefox 2

People

(Reporter: darin.moz, Assigned: darin.moz)

Details

Attachments

(1 file, 2 obsolete files)

Build data collection service to gather browser metrics.

It would be nice if we had a way to learn more about how users use our browser.  Often times, we end up making guesses about usage patterns or typical system constraints.  It'd be great if we had a way to collect data from live instances of Firefox and analyze that to improve the product.

Some requirements:
1) This service must be *disabled by default* in release builds.  Users should be given the choice to enable this feature "to help make Firefox better" or something along those lines.
2) It should be easy for components to add data items to the set being collected.
3) Upload data to a collection server periodically and flush local copy.
4) Make data available server-side for easy analysis.
Status: NEW → ASSIGNED
Target Milestone: --- → Firefox 2
Attached patch checkpoint (obsolete) — Splinter Review
Attached patch v1 patch (obsolete) — Splinter Review
This is an initial version suitable for check-in.  There's some code in place to upload the complete data file, but I haven't fully tested that functionality.  It isn't enabled by default.
Attachment #209792 - Flags: review?(bryner)
Comment on attachment 209792 [details] [diff] [review]
v1 patch

clearing review; darin's going to code up a different approach for this to allow easier logging of a sequence of events
Attachment #209792 - Flags: review?(bryner)
Attached patch v2 patchSplinter Review
OK, here's the heavily revised version per discussion with bryner and marria.
Attachment #209660 - Attachment is obsolete: true
Attachment #209792 - Attachment is obsolete: true
Attachment #210313 - Flags: review?(bryner)
Comment on attachment 210313 [details] [diff] [review]
v2 patch

you might expect to encounter random template problems on different compilers, but otherwise looks good.
Attachment #210313 - Flags: review?(bryner) → review+
OK, this is now checked-in on the trunk.  It is not built by default.  I removed the nsScoped<T> class because it isn't that useful in this particular instance, and anyways it is something that is better added to xpcom/.

Marking this bug fixed.  Let's use other bugs for follow-up work, which includes things like:

 *) defining profile, load, and ui events
 *) building data collectors that generate load and ui events
 *) other polish
Status: ASSIGNED → RESOLVED
Closed: 18 years ago
Resolution: --- → FIXED
(In reply to comment #6)
>  *) defining profile, load, and ui events
>  *) building data collectors that generate load and ui events
>  *) other polish

Darin, the code is awful (and I mean totally utterly disgustingly dirty), but I wrote a tool last summer that tries to summarise user events. http://eventlogger.mozdev.org

I don't know if it'll be any use at such a low level, but it might be.
You need to log in before you can comment on or make changes to this bug.