Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Parse minidump crashpad metadata #1095

Draft
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

timfish
Copy link
Collaborator

@timfish timfish commented Mar 10, 2025

This PR adds parsing to pull annotations from the crashpad stream in the loaded minidumps and include them in the event context.

Electron includes additional v8 context in the crashpad metadata (like electron.v8-oom.detail which gives details about the OOM reason):
https://github.com/electron/electron/blob/d987bee0073310c0bf114dd5e5c9db5e9c68ee59/shell/common/node_bindings.cc#L193
This PR reads that data from the minidump and includes it in the electron context and prepends the keys with crashpad.. This allows users to use this info in beforeSend filters and in other sampling decisions.

The parser code was mostly aided by the rust-minidump crate which has great documentation but I've credited it fully in the source because it would have been a lot more complicated without such a comprehensive library to test against.

I still want to add:

  • Unit tests with sample minidumps

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Attach information from minidumps as contexts before they are sent to Sentry
1 participant