-
-
Notifications
You must be signed in to change notification settings - Fork 201
feat: external crash reporter #1303
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
Conversation
|
@sentry review |
|
On it! We are reviewing the PR and will provide feedback shortly. |
PR DescriptionThis pull request introduces the ability to launch a separate feedback handler process upon application crashes. This allows for collecting user feedback or performing custom actions outside the main application process, ensuring that these operations don't interfere with crash reporting or application stability. Click to see moreKey Technical Changes
Architecture Decisions
Dependencies and Interactions
Risk Considerations
Notable Implementation Details
|
75ba1e8 to
d89a33f
Compare
b7b5a7f to
272c93c
Compare
5daca98 to
ffda5f9
Compare
To distinguish from the existing "system" crash reporter options API.
8682918 to
a41d48a
Compare
|
The reference GUI made with .NET 9.0 + Uno Platform is now available here: https://github.com/getsentry/sentry-desktop-crash-reporter (WIP!) For example, launching it straight from the build directory on Windows: sentry_options_set_external_crash_reporter_pathw(options, L"C:\\path\\to\\sentry-desktop-crash-reporter\\Sentry.CrashReporter\\bin\\Release\\net9.0-desktop\\Sentry.CrashReporter.exe"); |
supervacuus
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks again, @jpnurmi. LGTM
Context:
Depends on:
Works with:
TODO:
sentry__path_get_mtime()#1317sentry__process_spawn()#1318Usage:
On startup, register a path to an external crash reporter executable
When a crash is captured, the external crash reporter process is spawned and detached, and the path to a crash event envelope is passed as an argument.
Note
The external crash reporter is responsible for submitting the envelope to Sentry. It may ask for user consent or feedback, and attach additional data to the envelope.
The command-line argument allows using almost any app for debugging and testing. Text editor, web browser, anything that is capable of handling a single argument and displaying a plain-text JSON(L) file.
See
tests/fixtures/crash_reporter/crash_reporter.cfor a minimal crash reporter implementation used for integration tests.Examples:
Close: #1223