A Better Way to Track JavaScript Errors
trackjs.com
trackjs.com
It is good.
Easy to deploy internally. Python server, client libs for basically everything, plugins to chat apps, issue trackers, you name it: https://github.com/getsentry/sentry
The JS reporting supports source maps too.
As a bonus, should you wind up deploying Sentry internally, you need only update the API host in Logstash.
https://github.com/errbit/errbit
https://github.com/nkashyap/console.io http://nkashyap.github.io/console.io/
One minor critique: Can you refer to yourself as "track.js" or "TrackJS" instead of {Track.js}? You're going to drive me nuts if I have to type curly braces every time I mention you somewhere.
Unfortunately, at the time, they had no plans to support source maps. We exclusively use minified JavaScript in production. Seems like not getting a proper line number or filename in a stack trace would be a huge hindrance to debugging.
Error establishing a database connection(Edit: After kicking MySql things should be back - also, the rest of our application does not use MySQL :))
I do have a few questions that went unanswered, though:
- What's the performance impact, both in terms of initial page load and in terms of tracking stuff.
- How big is the buffer of "events" in the timeline?
- You charge per hit. Is there a way I can load the javascript from my own CDN? Does it ping your server upon load?
- What prevents somebody from going to my website and triggering a large number of "hits"?
1) The performance impact should be functionally negligible. We do instrument a few of the lower level base JS objects but it's all very lightweight. We have not noticed any performance issues thus far. That said, we have some new features coming and we will make anything potentially performance impacting opt-in
2) the buffer of events is currently the latest 10 events from the console, network, and user interaction, for a total of 30. We are looking at modifying this.
3) You can certainly bundle our script, we use the same technique Google Analytics does to capture hits.
4) Nothing, although we currently don't have hard caps and would certainly be in communication with you if you were concerned that was happening!
So my question will Trackjs work with Javascript code output by Google's Closure Compiler? I have tried Tracekit in the past and other similar Saas services for client javascript error logging and nothing seems to work with minified source produced by Closure compiler. Unfortunately, I can't do without Closure compiler and minification.
edit : typo
We've always had high demand for Javascript error reporting. We've been slowly building out a new notifier which address the importance of page load and capturing errors without blocking the page load. https://github.com/airbrake/airbrake-js
One of the main problems is clients / IE, not only on how they throw errors but also standards of source-map support and standardisation of how errors should be handled.
I welcome trackjs and all over javascript errors to come together to help make it better for all developers. I'm not sure on actions yet but NewRelic has started to do great work in the Node space already.
@ToddGardner! We wish you the best of luck, the app looks great.
This looks great. At my previous company, I set up Errorception (https://errorception.com/) and it was a good step, but I'm excited by the production-side logging possibilities that track js offers, and the timeline feature.
I've just now added it to my current company (https://zoomforth.com), and would be happy to report later on how it works out!
Thanks HN, you're awesome.
side note: before posting on HN, its a good practice to see how much load the site can handle .
some easy to use tools : - https://loader.io/ ( ref link : https://loader.io/s/kXCLA )
/releases/1.2.2/tracker.js
Is it a good idea to have the version number in there?As won't that mean you'll never be able to update your customers with new versions of the script?
Nice product though, looks great, easy to use.
EDIT: Seriously, this product is awesome, amazing UI, easy to use. Try it out.
Also, really nice, simple reset process.
In fact, I'm very impressed with the UI so far, it's a dream to use, excellent get started documentation and it ended up taking me very little time to find the reset.
Re: compilation errors - It depends on where our script is concatenated in the bundle to an extent. For best results we recommend putting it as the first thing in the bundle.
Does it track these events basically in an order? JavaScript is single threaded in the browser so multiple reschedulings could easily hit different objects and events unrelated to each other.
Looks interesting nonetheless.
Arbitrary key/values and filtering these values is coming soon as well.
Good work!
I looked through your site, and couldn't find any documentation without creating an account.