

Exception Monitoring and Response - samlambert
http://githubengineering.com/exception-monitoring-and-response/

======
jarus
I can recommend Sentry which is open source and works great since many years!

[https://github.com/getsentry/sentry](https://github.com/getsentry/sentry) or
hosted [https://getsentry.com/](https://getsentry.com/)

~~~
gargarplex
Lovely how the copy on their homepage is "Shit happens — Be on top of it."
Trust me, that same organizational/cultural ethos applies to customer service,
wherein I dealt with petulant, arrogant and occasionally wrong 20 somethings.

~~~
gargarplex
The support rep engineer was truculent. Petulant was the wrong word.

------
brianr
Great to see some more brainpower going into this problem. We at Rollbar
([https://rollbar.com](https://rollbar.com)) have been at this as well for the
past 3 years, and I'm still stunned from time to time at how useful exception
monitoring is.

For anyone looking to implement something like Haystack, definitely give
Rollbar a look -- you'll find most of these capabilities there (and much
more). And if any of the Haystack or GitHub devs have had a chance to play
around with both, I'd be really interested to hear any feedback; drop me a
line (email in profile).

------
stympy
I have to chime in and offer up Honeybadger
([https://www.honeybadger.io](https://www.honeybadger.io)) as a hosted option
for monitoring, since I'm a co-founder. :)

Our goal is to make dealing with errors so awesome that you'll want to get
more of them. :)

~~~
Linell
I'm a Honeybadger user and love it! Extremely useful.

------
roytomeij
Dropping this here: [https://appsignal.com](https://appsignal.com) — looks
great, works even better. And it's one of the few tools that treats exceptions
and performance both as first class citizens (full disclosure: I'm a co-
founder).

------
ersoft
Also, there is Opbeat ([https://opbeat.com](https://opbeat.com)), which also
does release/deploy tracking (you can see which errors come from/after which
release).

------
spo81rty
I would suggest looking at Stackify. We track exceptions similar to all the
other mentioned tools in this thread, but we also provide log management.
Having exceptions & logs together is a lot more powerful.

For example, we can show you all of your logging statements that happened
before and after the error on the same web request.

[http://stackify.com/errors-log-management/](http://stackify.com/errors-log-
management/)

-Founder of Stackify

------
RA_Fisher
Rather than take a z-score, which is symmetrical, one idea for a small
improvement might be to use a critical value from a chi-squared distribution.
Since it's asymmetric, it'll probably fit the distribution better and offer a
higher signal-to-noise ratio.

EDIT: or actually, since this is a count, might as well go straight for the
poisson distribution or negative binomial -- same idea.

------
bra-ket
what are some Javascript libraries that allow creating such pretty dashboards?

~~~
zeeg
My personal favorite is Highcharts, but it's a paid solution. Otherwise
generally people build things on top of D3 these days. jQuery's Flot is also
an easy entry tool for charts, but it's not as fancy out of the box.

------
fundead
Looks like a top notch implementation that's had some serious effort put into
it for solving their unique pain points around deploys and monitoring. My
colleagues and I at Raygun ([https://raygun.io](https://raygun.io)) have
created an error tracking service that from an overview ticks the boxes that
Haystack supports, and a whole bunch more besides for dev teams who don't
happen to be GitHub :)

Tools like these become pretty invaluable when releasing code into the wild,
and aside from lifecycle benefits like greatly reducing the cost of the
maintenance phase, an error tracker can also alert and hand the data needed to
fix the bug right to the person who can, greatly increasing dev sanity (no
more relying on support ticket ping pong, and removes the onus on the end user
to report the bug). Also, surfacing the attack vectors and the frequency of
which adversaries attack code exposed to the web is rather eye opening.

------
marcinkuzminski
There's also [http://appenlight.com](http://appenlight.com) which has some
really unique features, like custom graphs and performance monitoring. Also
written in python :)

------
spydum
well, disappoint.. show a shiny tool, then say how it took 6+ years to
develop, and wont likely be open sourced. yes.. lot of us would like to
implement something similar, just dont have the engineering resources to flush
it out.

if I had to take a stab at it, I'd say a good place to start is some ELK
platform. Seems like it has almost all of the right components to build
something like this. Just curious if they have their apps directly feeding
exceptions, or if they are slurping logs.

~~~
aroben
We send exceptions to Haystack directly. It usually happens in a begin/rescue
block or via a middleware that reports uncaught exceptions.

