Debug production without redeploying
Add dynamic logs to live traffic. Capture variable state, stack traces, and execution context without restarting your application or adding log statements to your codebase.
Why live debugging changes everything
Traditional debugging requires reproduce, add logs, deploy, wait, repeat. Live debugging skips all of that.
No redeploy required
Add dynamic logs from the dashboard. They activate on the next matching request. No code changes, no restarts, no CI/CD pipeline.
Non-breaking by design
Dynamic logs capture data without pausing execution. Zero impact on latency or throughput. Safe for production traffic at any scale.
Full variable capture
See local variables, function arguments, and object state at the exact line you care about. No more guessing from log output.
Conditional log points
Trigger only when conditions match. Capture data only for specific user IDs, error codes, or request parameters.
Trace-linked snapshots
Every snapshot is linked to its distributed trace. Jump from a slow span directly to the variable state at that moment.
Snapshot diff comparison
Compare two snapshots side-by-side to see what changed between a working request and a broken one.
How it works
Pick a file and line
Browse your source code in the dashboard. Click any line to add a dynamic log point.
Traffic fires the log point
The SDK captures variable state, stack trace, and trace context on the next matching request.
Inspect the snapshot
View captured data in the dashboard. Expand objects, compare snapshots, and jump to the linked trace.
Tracekit vs the alternatives
Stop adding log statements to debug production
Add a dynamic log, capture the data, fix the bug. No redeploy required.