question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

DX: Bump stack trace limit to infinity

See original GitHub issue

This 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:closed
  • Created 6 years ago
  • Reactions:1
  • Comments:5 (5 by maintainers)

github_iconTop GitHub Comments

1reaction
HyperBraincommented, Jun 8, 2017

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.

0reactions
pmuenscommented, Jun 8, 2017

🤔 @brianneisler how would this work in a Promise context. We already have the longStackTraces option enabled.

I tried to place Error.stackTraceLimit = Infinity; in bin/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).

Read more comments on GitHub >

github_iconTop 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 >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found