EVERYTHING XIAOMI
Get listed
Breakpad logo

Breakpad

Breakpad is a free library and tool suite for capturing application crashes and turning them into readable C and C++ stack traces.

Place
#15 of 24
Score
6.8

What Breakpad is

Breakpad is a free library and tool suite for capturing application crashes and turning them into readable C and C++ stack traces. Its client can save compact minidump files when a crash occurs or when an application requests one. A symbol dumper converts compiler debugging information, including DWARF, STABS, and Windows PDB files, into Breakpad symbol files; a processor uses those files to interpret dumps. The sender can transmit dumps and application-defined key-value parameters to a crash server using multipart HTTP POST, with HTTPS supported. Breakpad’s documentation describes client integration for Windows, macOS, and Linux, while listed platforms also include Android and self-hosted use. Teams supply the crash server and keep symbol files where the processor can access them. Windows out-of-process dump generation requires a separately run crash generation server. The Linux guide cautions that crash callbacks should do as little as possible because application state may be unsafe. Breakpad is hosted in the Chromium source repository.

Good

  • Free plan with no trial.
  • Creates minidumps on crashes or by request.
  • Processes dumps into readable C and C++ traces.
  • Sender supports HTTPS transfers.
  • Documentation covers Windows, macOS, and Linux integration.

Watch out

  • Teams must provide a server for dump analysis.
  • Symbol files must be made accessible to the processor.
  • Windows out-of-process handling needs a separate crash server.
  • Crash callbacks should avoid substantial work or resource allocation.

Who it suits

Breakpad suits developers who need crash capture and symbolicated C or C++ traces and can manage their own server and symbol files. It is intended for application teams integrating crash handling on supported systems.

Verdict

Breakpad provides the core pieces for collecting and processing crash reports, but the application team handles server and symbol-file setup. Its crash-time constraints and platform-specific integration requirements are worth considering before adoption.

Plans and prices

From Breakpad's own pricing page, checked 4 Oct 2001.

All about pricing
PlanPriceWhat it gives you
BreakpadFreeOpen-source crash-reporting library and tool suite · self-built and self-hosted components

The facts

Each one read from Breakpad's own pages, with the date it was checked.

What it does

Build and install
The repository instructions build Breakpad with ./configure and make, and optionally install built libraries with make install.checked 4 Oct 2001
Components
Its three main components are a client library, a symbol dumper, and a processor that creates human-readable stack traces from minidumps and symbol files.checked 4 Oct 2001
Crash capture
Its client library records crashes in compact minidump files and can also write minidumps on request when a program has not crashed.checked 4 Oct 2001
Crash-time constraint
The client design cautions that code running after an exception should avoid heap use and resource allocation because application state may be unsafe.checked 4 Oct 2001
Crash upload
The sender library transmits a minidump and application-defined key-value parameters to a crash server using a multipart HTTP POST request.checked 4 Oct 2001
Current release tag
The repository lists v2024.02.16 among its tags.checked 4 Oct 2001
Minidump contents
A minidump can include loaded executable and library identities, thread register and stack data, and system details such as processor and operating system versions.checked 4 Oct 2001
On-demand dumps
The client can write a minidump when a crash occurs or when the application requests one.checked 4 Oct 2001
Out-of-process handling
Windows out-of-process dump generation requires a separately run crash generation server, whose process logistics are left to the integrator.checked 4 Oct 2001
Purpose
Breakpad is a library and tool suite that records crashes as compact minidump files, sends them to a server, and produces C and C++ stack traces.checked 4 Oct 2001
Self-hosted processing
The processor uses symbol files that developers store where the minidump processor can find them; the documentation describes uploading symbols to a server developers have written.checked 4 Oct 2001
Support and community
The project lists a discussion mailing list for questions and a separate mailing list for development and reviews.checked 4 Oct 2001
Support channel
The repository lists a Google Breakpad discussion group for questions and a separate developer group for reviews.checked 4 Oct 2001
Supported operating systems
The project documentation describes client integration for Windows, macOS, and Linux.checked 4 Oct 2001
Supported systems
The getting-started documentation describes crash handling on Windows, OS X, and Linux.checked 4 Oct 2001
Symbol formats
The symbol dumper reads compiler debugging information including DWARF, STABS, and Windows PDB files and creates Breakpad symbol files.checked 4 Oct 2001
Symbolicated traces
The processor uses symbol files to turn minidumps into human-readable C and C++ stack traces.checked 4 Oct 2001
Symbol upload
The documentation describes symupload as a tool for sending symbol files to a server that accepts them, including via HTTP POST on macOS.checked 4 Oct 2001
Transport security
The sender supports HTTPS because crash dumps may contain sensitive data.checked 4 Oct 2001
Upload workflow
Breakpad provides upload-related code and tools, but its documentation expects the application team to send minidumps to a server for analysis.checked 4 Oct 2001

Where it runs

Linux build
The Linux guide says the Autotools build produces client and processor libraries, and describes linking the client library into an application.checked 4 Oct 2001
Linux callback constraint
The Linux guide says to do as little work as possible in the crash callback because the application may be in an unsafe state.checked 4 Oct 2001
Mac integration
The Mac guide describes adding Breakpad.framework to an Xcode project and using dump_syms to create symbol files during the build.checked 4 Oct 2001

The company

Maker details
The pages opened identify Breakpad as a project hosted in the Chromium source repository and do not state a company headquarters or founding date.checked 4 Oct 2001

Alternatives to Breakpad

All alternatives
  1. 1Countly logo

    Countly

    Free planOpen sourceAndroidiOSWebAPI
    8.6From $175 a month
  2. 2GameAnalytics logo

    GameAnalytics

    Free planAndroidiOSWebAPI
    8.2From $49 a month
  3. 3Unity Version Control logo

    Unity Version Control

    Free planWebAPILinuxmacOS
    8.1Free plan
  4. 4AppMetrica logo

    AppMetrica

    Free planOpen sourceAndroidiOSWebAPI
    8.0Free plan
  5. 5BugSplat logo

    BugSplat

    Free planAndroidiOSWebAPI
    8.0From $37 a month
  6. 6Embrace logo

    Embrace

    Free planAndroidiOSWebAPI
    8.0From $0.80 a month