DX: Bump stack trace limit to infinity
See original GitHub issueThis is a Feature Proposal
Description
Our stack traces in our error reports are often partial traces because the default in node is a measly 10 lines. It seems acceptable to incur the performance cost of bumping our stack trace limit to Infinity so that our stack traces are complete when an error occurs. This will give us much better error reporting with the recent addition of error tracking in PR #3564 and help users deliver better traces when reporting errors/bugs.
Error.stackTraceLimit = Infinity;
Issue Analytics
- State:
- Created 6 years ago
- Reactions:1
- Comments:5 (5 by maintainers)
Top Results From Across the Web
Error.stackTraceLimit
The Error.stackTraceLimit property gets or sets the stack trace limit, which is equivalent to the number of error frames to display.
Read more >Curve Fitting and Uncertainty Analysis - Bumps - Read the Docs
Bumps is a set of routines for curve fitting and uncertainty analysis from a Bayesian ... M.center.range(min(x) - 0.2*dx, max(x) + 0.2*dx).
Read more >Limiting Forms of the Trace Formula - Stanford Mathematics
limit in a trace-type formula to isolate a spectrally “small” set of forms. ... Now, as X approaches infinity, the bracketed term is...
Read more >Bumps: Curve Fitting and Uncertainty Analysis
Bumps is a set of routines for curve fitting and uncertainty analysis from a Bayesian perspective. In addition to traditional optimizers which search...
Read more >Chapter 2 Complex Analysis
infinite sums very easily via complex integration. 2.1 Analytic functions. In this section we will study complex functions of a complex variable. We....
Read more >
Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free
Top Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
The current sentry configuration only sets up the default global exception handler anyway (with raven.initialize()). This captures unhandled exceptions by default, but not unhandled rejections. If you want to propagate unhandled rejections to Sentry too, you’d have to explicitly enable the unhandled rejection handler in raven: https://docs.sentry.io/clients/javascript/usage/#promises
You have to define/overwrite the Bluebird unhandled rejection handler explicitly and call
Raven.captureException()
in there.🤔 @brianneisler how would this work in a Promise context. We already have the
longStackTraces
option enabled.I tried to place
Error.stackTraceLimit = Infinity;
inbin/serverless
but this won’t change anything about the stack traces since Bluebird seems to handle the rejections.This is already included in the sentry package (as @DavidWells mentioned).
Should this only apply for our error tracking via sentry or should users be able to see the long stack traces as well?
If it’s only for error tracking, then I agree that it’s sufficient enough to let sentry take care of that. If it’s for users then I’d vote to add it somewhere in our code again so that we don’t have a dependency on the sentry package (and this functionality won’t disappear if we decide to remove sentry later down the road).