No stackframes recorded for inproc backend #897
-
Hi, I'm trying to use sentry-native for crash reporting. Currently I'm working on a cross platform C++ based title, developing on macOS. To keep the setup as simple as possible, I decided to try the It seems that a lot of features work as expected. I can see activity on the Sentry dashboard. Crash reports are written to disk, and sent out to and received by Sentry. However there is one problem: the stack trace is missing in the recorded crash info:
The register values are there, but the stack frames are not. I tried to add the stack trace manually in an Am I missing something obvious? It seemed to me as if the stack frames should be recorded automatically, even in the I have now switched to using the Thank for any insights, |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 1 reply
-
Hi @PatrickMIK, While the It seems Apple has abandoned In short, if you have no specific reason to use |
Beta Was this translation helpful? Give feedback.
Hi @PatrickMIK,
While the
inproc
backend can be used on macOS, using eitherbreakpad
orcrashpad
on these systems is much preferable. Both backends implement mach-exception port handling, a much better supported crash-handling approach on Apple's OSes than the signal-handler we use for inproc. They also produce a minidump, providing more crash context data than currently collected via inproc (for instance, you'll get stack traces for all threads).It seems Apple has abandoned
backtrace()
support in signal handlers altogether, given that it could never correctly trace signal-handlers stack frames anyway (andbacktrace()
not being an async-safe function to begin with). This is also why call…