Error & crash tracking
Nohmo captures errors and crashes automatically — it's on by default, no setup required. Because every error is just an event, it carries the same session and device context as everything else: the Errors page groups errors by signature and shows the exact journey leading up to each crash — the pages, screens, clicks and taps right before it broke.
What's captured
| Event | Platform | Trigger |
|---|---|---|
| JS_ERROR | Web + RN | Uncaught exceptions and unhandled promise rejections |
| HTTP_ERROR | Web | Failed fetch/XHR requests (4xx/5xx) and resource 404s |
| APP_CRASH | React Native | Fatal JS crashes and native crashes — reported on next launch |
Native crashes (React Native)
The JS error handler can't see crashes that happen in native code. Nohmo installs native crash handlers too — no extra packages, it's built into the SDK. A crashing process can't do network I/O, so the crash is written to disk and reported as an APP_CRASH on the next launch, attributed back to the session it happened in.
| Platform | Catches |
|---|---|
| Android | Uncaught Java/Kotlin exceptions (any thread) |
| iOS | Objective-C exceptions, plus Swift fatalError, force-unwraps, and memory crashes (signal handlers) |
Configuration
Error capture is enabled by default. To turn it off, set autoErrors: false:
// React / Next.js / React Native<NohmoProvider projectId="..." apiKey="..." options={{ autoErrors: false }}><YourApp /></NohmoProvider>
For the plain HTML / script-tag build, add data-errors="false":
<scriptsrc="https://cdn.jsdelivr.net/npm/nohmo@latest/dist/n.min.js"data-project="proj_xxxx"data-api-key="pk_xxxx"data-errors="false"defer></script>
Where it shows up
Errors page
Errors are grouped by signature with occurrence counts, affected users and devices, and a sample stack trace. Open one to see every occurrence.
Journey to the crash
Each occurrence shows the session timeline up to the moment it broke — what the user did right before the error, so you can reproduce it.
Real-time alerts
Add an Event Match webhook (Settings → Webhooks) on JS_ERROR or APP_CRASH to get notified the instant errors happen.
Privacy & scope
Captured errors are bounded for safety: messages are truncated, query strings are stripped from request URLs, and Nohmo never reports failures of its own tracking endpoint. Stack traces are raw / unsymbolicatedfor now (dSYM & ProGuard mapping are planned).
Native capture covers uncaught JVM exceptions (Android) and Objective-C exceptions + signal crashes (iOS). Android NDK/C++ crashes, ANRs, and out-of-memory terminations are not captured in this version.
Note: Error tracking is on by default on every platform — you don't need to add anything to start seeing errors in your dashboard.