Capture every unhandled error, fingerprint for dedup, group into issues, link to the trace that produced it. Across the whole portfolio in one search box.
Each SDK auto-captures unhandled exceptions, unhandled promise rejections (Node, Browser, Python), panics (Go), and (optionally) console errors. Every capture is rich: stack trace with frame metadata, runtime info, environment, release, user (when set), tags, last 100 breadcrumbs, and the trace ID of the request that triggered it.
The fingerprint is computed from (exception.type, exception.value, top-of-stack file + line + function) with a couple of normalizations (anonymous functions normalized, framework frames de-prioritized). Override per event by setting fingerprint: ["..."].
Events with the same fingerprint group into an issue. The issue list shows count, user count, first-seen, last-seen, and severity for each. Click into an issue to see the event timeline, breadcrumb traces for sample events, and the affected releases.
Browser stack traces are minified. The dashboard fetches the source map matching the event's release and re-resolves the stack to original source. Maps are uploaded at release time via the SDK release hook or the CLI; kept for the configured retention window (default 30 days), then deleted.
Every event is stamped with the release it occurred in. The dashboard charts error volume per release so you can spot regressions visually. A regression rule (fingerprint.was_resolved == true) fires automatically when a previously-resolved fingerprint shows up again, reopens the issue, and pings your channel.
Eight states (captured → ingested → alerted → acknowledged → triaged → fix-in-flight → resolved → regressed). All transitions are optional; the system records what happened. See the homepage workflow section for details.
Search across every project, or scope to one. Filters on level, environment, release, runtime, browser, OS, fingerprint, user, country, and arbitrary tags. Save queries; pin them; turn pins into alerts.