Breakpad/Design: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
No edit summary
Line 1: Line 1:
'''[[Airbag|« back to Airbag main page]]'''
== Development Team & Schedule ==
== Development Team & Schedule ==
'''The Team'''
'''The Team'''
Line 13: Line 14:
** Milestones for each component
** Milestones for each component


== Airbag Components ==
== Airbag Client ==
'''Airbag Client'''
* Platform integration for Windows, Mac OS X, Linux
* Platform integration for Windows, Mac OS X, Linux
* UI parity with Mozilla products
* UI parity with Mozilla products
Line 23: Line 23:
* Store incident queue/history
* Store incident queue/history


'''Airbag Crash/Blackbox Manager (Repeater + Collector?) [need good name]'''
== Airbag Crash/Blackbox Manager (Repeater + Collector?) [need good name] ==
* Apache web server to manager incoming blackboxes through HTTPS  
* Apache web server to manager incoming blackboxes through HTTPS  
* Pass blackbox data through the firewall
* Pass blackbox data through the firewall
Line 29: Line 29:
* Check client version and state and be able to serve config changes to Airbag Client (e.g. send message to disable client)
* Check client version and state and be able to serve config changes to Airbag Client (e.g. send message to disable client)


'''Airbag Symbols Store'''
== Airbag Symbols Store ==
* Infrastructure should allow build systems to push symbols to the Symbols Store
* Infrastructure should allow build systems to push symbols to the Symbols Store
* Store symbols for each build/release based on product information (similar to AUS URLs).  Key parameters should include:
* Store symbols for each build/release based on product information (similar to AUS URLs).  Key parameters should include:
Line 35: Line 35:
** Currently don't use Product or OS Versions with Talkback, but might want to consider doing it with Airbag.
** Currently don't use Product or OS Versions with Talkback, but might want to consider doing it with Airbag.


'''Airbag Digester [need better name]'''
== Airbag Digester [need better name] ==
* Grab blackboxes from Crash/Blackbox Manager
* Grab blackboxes from Crash/Blackbox Manager
* Process blackboxes
* Process blackboxes
Line 42: Line 42:
** Store crash information to Airbag Database
** Store crash information to Airbag Database


'''Airbag Database'''
== Airbag Database ==
* Pick appropriate database (not Oracle)
* Pick appropriate database (not Oracle)
* Define schema that works well with current query/reporting needs
* Define schema that works well with current query/reporting needs
** [need to dig up all common queries - jay]
** [need to dig up all common queries - jay]

Revision as of 00:05, 13 February 2007

« back to Airbag main page

Development Team & Schedule

The Team

  • Airbag Client (limited scope) - Airbag Project Team/Google
  • Airbag Client Customization - dcamp (Dave Camp)
  • Airbag Server
    • Crash/Blackbox Manager (Repeater + Collector) - morgamic (Mike Morgan) & TBD
    • Digester - luser (Ted Mielczarek) & TBD
  • Airbag Tools & Reporting - coop (Chris Cooper) & jay (Jay Patel)

The Schedule

  • TBD - We should try to set some dates for:
    • Setting product/component requirements
    • Defining component specifications
    • Milestones for each component

Airbag Client

  • Platform integration for Windows, Mac OS X, Linux
  • UI parity with Mozilla products
  • Collect and send data to Airbag Server
    • Product info (product, version, platform, build id, airbag version)
    • System information (os version, processor, memory, diskspace, etc.)
    • Stability statistics (total runtime, time since last crash, crash frequency, etc.)
  • Store incident queue/history

Airbag Crash/Blackbox Manager (Repeater + Collector?) [need good name]

  • Apache web server to manager incoming blackboxes through HTTPS
  • Pass blackbox data through the firewall
  • Monitor queue and blackbox status
  • Check client version and state and be able to serve config changes to Airbag Client (e.g. send message to disable client)

Airbag Symbols Store

  • Infrastructure should allow build systems to push symbols to the Symbols Store
  • Store symbols for each build/release based on product information (similar to AUS URLs). Key parameters should include:
    • Vendor/Project, Product, Product Version (?), Platform, OS Version (?), Build ID
    • Currently don't use Product or OS Versions with Talkback, but might want to consider doing it with Airbag.

Airbag Digester [need better name]

  • Grab blackboxes from Crash/Blackbox Manager
  • Process blackboxes
    • Extract info from blackbox
    • Map stack trace to symbol info from Symbols Store to decipher function names, file paths and line no.
    • Store crash information to Airbag Database

Airbag Database

  • Pick appropriate database (not Oracle)
  • Define schema that works well with current query/reporting needs
    • [need to dig up all common queries - jay]