crsym

command module
v0.0.0-...-c4863fd Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 30, 2014 License: Apache-2.0 Imports: 7 Imported by: 0

README

crsym: The Chrome Symbolizer

crsym is a tool that can parse crash report data and symbolize it using Google Breakpad symbol files (produced by the dump_syms program). While most crash reports should be caught by your product's automated crash reporting system (e.g. Breakpad), sometimes crash data comes from other sources. It is crash reports from these other sources that crsym specializes in symbolizing.

Types of Crash Reports

The crsym tool has parsers for the following kinds of crash reports:

  • Apple crash and hang reports for Mac OS X and iOS (typically found in ~/Library/Logs/DiagnosticReports).
  • Breakpad minidumps formatted using mimidump_stackwalk.
  • Android crash reports written to logcat.
  • Arbitrary addresses, where the module load address is specified by the user.

Code Organization

In the initial open source release, only three libraries are provided and not a buildable server. The server component used internally by Google relies on non-public infrastructure and thus cannot be open sourced, but it is a goal of the project to reuse the libraries to create an open-source version of the server.

The first library is the breakpad library, and it provides a parser for Breakpad symbol files produced by dump_syms. It also defines interfaces for "backends" which can vend these symbol files, from e.g. an RPC service or the file system. Currently no implementation of these interfaces exist in the open-source project.

The second library is parser, which defines an interface parser.Parser. It contains a collection of Parsers, one for each type listed above, along with a battery of test data.

The third library is the frontend library, which contains handlers for an (yet unwritten) HTTP server, and the actual web interface.

See the TODO file for the active tasks for the open source project.

Documentation

Overview

atobs (Address to Breakpad Symbol) is a drop-in replacement for the atos tool on Mac OS X that uses Breakpad symbol files instead of dSYMs.

atobs only supports the -o and -l flags of atos. Slide addresses and header printing are not supported.

Directories

Path Synopsis
Package breakpad supplies two interfaces: Supplier and SymbolTable.
Package breakpad supplies two interfaces: Supplier and SymbolTable.
Package context defines an interface that can be passed between the frontend HTTP handler and any backend servicing the request.
Package context defines an interface that can be passed between the frontend HTTP handler and any backend servicing the request.
Package frontend provides a HTTP server that accepts input for symbolization in various formats and returns the symbolized output.
Package frontend provides a HTTP server that accepts input for symbolization in various formats and returns the symbolized output.
Package testutils provides an interface for handling testdata files.
Package testutils provides an interface for handling testdata files.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL