logging-and-error-reporting
Installation
SKILL.md
Contains Shell Commands
This skill contains shell command directives (!`command`) that may execute system commands. Review carefully before installing.
logging-and-error-reporting
Warp has two related ways to surface what happened at runtime:
log::*(error!/warn!/info!/debug!/trace!) — local diagnostics written to the terminal/log file and, on crash-reporting builds, uploaded to Sentry as breadcrumbs (context attached to the next captured event).report_error!— captures a structured Sentry event (an actual issue) for errors worth engineering attention.
How logs reach Sentry (important)
On crash-reporting builds a SentryLogger wraps the logger (warp_logging). The filter:
Error/Warn/Info→ breadcrumb only (not their own Sentry issue).Debug/Trace→ dropped from Sentry entirely (local-only).- The
Error-level line emitted byreport_error!itself → ignored by Sentry (the macro already captured a structured event; the log line would double-report). - A few noisy targets (wgpu,
panic, redraw-frame, the crash-reporting module) are dropped.
Consequences:
log::error!does NOT create a Sentry issue — it's only a breadcrumb. If a failure should be tracked in Sentry, usereport_error!. Onlyreport_error!and panics create Sentry events.- Breadcrumbs (Info and above) are uploaded, so they must never contain secrets or PII — see "Sensitive data: safe_* macros" below.