Breakpad/Design/Reporter: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
(Separate reporter info from the main breakpad design doc)
 
(Dump out reporting requirements from Jay's email)
Line 1: Line 1:
'''[[Breakpad/Design|« back to Breakpad design page]]'''
'''[[Breakpad/Design|« back to Breakpad design page]]'''


== Breakpad Analysis and Reporting System(s) ==
= Breakpad Analysis and Reporting System(s) =
4) The query engine provides reporting and querying from the database
  Requires read access to the database


* Two different kinds of reporting
The query engine provides reporting and querying from the database. It requires read access to the database. There are two basic kinds of reporting:
** Querying individual data to find specific information
** Report generation aggregating large volumes of data


* System status information
* Querying individual data to find specific information
* Report generation aggregating large volumes of data


== System Status ==
To verify that the system is running efficiently:
* Number of reports collected
* Number of reports processed
* Number of reports collected but not yet processed (backlog)
== Querying ==
* For talkback parity, ability to query reports by the standard metadata (see notes below): http://talkback-public.mozilla.org/search/start.jsp
* Ability to query by extensions enabled
* Ability to query by DLLs loaded in process (especially plugin DLLs)
== Reporting ==
* Make sure that private data (email address, IP address) are kept behind a login
* Topcrash table: reimplement http://talkback-public.mozilla.org/reports/firefox/FFTrunk/FFTrunk-topcrashers.html
* Topcrashes by URL: http://talkback-public.mozilla.org/reports/firefox/FFTrunk/url-analysis-all.html
* Smart analysis report: http://talkback-public.mozilla.org/reports/firefox/FFTrunk/smart-analysis.all
* the ability to quickly find and isolate when crash regressions appeared in nightly builds or between major releases.
* the ability to quickly find and isolate when crash regressions appeared in nightly builds or between major releases.
*
** Need specific information here! (UI mockup would be good)
* ability to find common themes behind crash reports by looking at things like common comments, common configuration characteristics such as OS version, graphics systems, process lists, time since last crash, most frequently visited sites, etc...
* ability to find common themes behind crash reports by cross-referencing against metadata:
** common comments and comment fragments
** OS version
** graphics systems
** process lists
** time since last crash
** uptime of the crashing session
** most frequently visited sites
** memory usage
** available system memory
** number of CPUs
* Calculate the MTBF numbers for particular releases; analyze across releases and branches; graph the data
* find trends
** number of crashes versus total users
** crashes/normal quits
** all of the metadata listed above
 
== Notes ==
 
Currently, "stack signature" means the top stackframe. In the future, it may make sense to make this more specific or more general, or allow individual queries to widen/narrow the scope.
 
Instead of running the reports on request, it may make sense to generate them from a cron script.
 
Product metadata includes:


* http://talkback-public.mozilla.org/reports/firefox/FF2001/url-analysis-all.html
* Product -> Firefox
* Properly segregate "public" data (stacks and system information) and "private" data (email address)
* Branch -> 1.8
* Version -> 2.0.0.3
* OS
* OS version
* BuildID

Revision as of 16:03, 16 March 2007

« back to Breakpad design page

Breakpad Analysis and Reporting System(s)

The query engine provides reporting and querying from the database. It requires read access to the database. There are two basic kinds of reporting:

  • System status information
  • Querying individual data to find specific information
  • Report generation aggregating large volumes of data

System Status

To verify that the system is running efficiently:

  • Number of reports collected
  • Number of reports processed
  • Number of reports collected but not yet processed (backlog)

Querying

Reporting

Notes

Currently, "stack signature" means the top stackframe. In the future, it may make sense to make this more specific or more general, or allow individual queries to widen/narrow the scope.

Instead of running the reports on request, it may make sense to generate them from a cron script.

Product metadata includes:

  • Product -> Firefox
  • Branch -> 1.8
  • Version -> 2.0.0.3
  • OS
  • OS version
  • BuildID