•
We use Sentry for crash reporting and diagnostics.
•
When you are signed in, Sentry error reports are linked to your account identifier, email address, and name.
•
If your session expires, Sentry error reports stay linked to your account identifier until you sign in again or erase the data on this device, including while you keep using the app on this device. Until the app next restarts, they may also stay linked to your email address and name.
•
Sentry reports, and the short app-session records Sentry uses to measure how often the app crashes, also carry random identifiers for your app installation and app session. These are not linked to your account, name, or email unless you are signed in or your session has expired as described above.
•
Sentry may record your IP address, and the approximate location it derives from it, with error reports and app-session records in every mode, whether or not you are signed in.
•
Unhandled application errors, and errors that make the app show its error screen, are also recorded by Expo's EAS Observe service: the error type, message, and stack trace.
•
If the app crashes in its native code, a crash report is also sent to EAS Observe on a later launch: the exception or signal type, the error message or the operating system's termination reason, and, where available, up to 50 frames of the native stack trace, normally the crashing thread's. On iOS the report comes from Apple's MetricKit and also carries the technical details needed to read that stack trace: the names and build identifiers of the app and system code it passes through, the number of threads, and, for a crash caused by an invalid memory access, a description of the memory region involved. On Android it comes from the app's own crash handler and the system's record of why the app exited.
•
These EAS Observe reports are associated with the same random installation and app-session identifiers as the performance metrics below, not with your account, name, or email. Because they share the session identifier, an error can be placed in the sequence of screens opened in the session where it occurred.
•
Sentry reports include device and app information (such as device model, OS version, memory, storage and battery state, network connection type, language and time zone settings, app version, and installed update) and a short trail of technical events from before the error: app lifecycle and system events (for example the app moving to the background, the keyboard opening, low memory, or a change in network connectivity); on iOS, the title of each screen shown and the kind of control tapped (with the fixed caption of a native button, such as "Save"); the web address without query parameters, method and status code of the app's network requests; diagnostic log messages written by the app and the libraries it uses; and app update checks.
•
Used only for troubleshooting and improving stability.
•
Crash reports do not include what you type or your financial data: no transactions, account or category names, amounts, or balances.