We have used Sentry for a long time with JavaScript. The main issues for us are:
* Obese JavaScript code. We had to write our own custom code to log events.
* Aimed at large scale companies. We only have 1000s of users, and we care about each individual exception, but I think it is really aimed at consolidating large numbers of events.
* Meaningless percentages on data. Tagged data is processed, but the end percentage value has little meaning e.g. send through 1000 similar events, with 1 event with a tag with value X, and 1 event with a tag with value Y, and 998 with no value. Sentry reports 50% X and 50% Y!
But they have given us really excellent service, especially given we are not paying enterprise rates.
Edit: also we are not in a US timezone, which makes the UI weird. And I do love the email integration: have a bug, get an email, fix it.
> * Obese JavaScript code. We had to write our own custom code to log events.
For what it's worth we spent a lot of time to reduce bundle sizes recently. It's ultimately a tradeoff between how rich and complete the data is one wants to capture (and from how many browsers) and how big one wants to have the bundle :(
> Aimed at large scale companies. We only have 1000s of users, and we care about each individual exception, but I think it is really aimed at consolidating large numbers of events.
What you're saying here confuses my slightly. Sentry is aimed at consolidating large numbers of equivalent events. It looks at things like the stack trace to determine when to merge events into a single issue. If you deploy a bug that results in one exception occurring a thousand times per second you want sentry to create one issue with thousands of events, not thousands of issues, right?
I'm not sure how familiar you are with segment.io, but it's a super easy data piping service. So we use Segment to define all of our events across our stack, front-end, middle-ware, backend and then we just connect segment to sentry using the integration they provide. FWIW, we use segment for all of our data piping needs...errors, interaction tracking, traffic analytics, etc. This way we can not only have the errors show up in sentry for us to review, but we can also review in other services where in an event stream any given user ran into the error for easier debugging.
How do you get errors to other services in Segment?
Did you write some custom code to catch errors and then send them as segment's track calls?
We use Sentry with Segment, but on client segment just loads sentry and the errors are caught by sentry only, they do not appear in other integrations.
Interesting, thanks for sharing that. What other services are you using? Is there anything I can read up on for this kind of operational stuff? It would be interesting to learn about the landscapes of tools people use for their production setups.
We use a variety of tools, and often when we add a new tool it's because we review the integrations for segment and discover a service that we can leverage. For a good starter setup though, I really enjoy segment, sentry, mixpanel, and heap.io. We use a few other services, but when it comes to troubleshooting for customers these are our main goto services.
* Obese JavaScript code. We had to write our own custom code to log events.
* Aimed at large scale companies. We only have 1000s of users, and we care about each individual exception, but I think it is really aimed at consolidating large numbers of events.
* Meaningless percentages on data. Tagged data is processed, but the end percentage value has little meaning e.g. send through 1000 similar events, with 1 event with a tag with value X, and 1 event with a tag with value Y, and 998 with no value. Sentry reports 50% X and 50% Y!
But they have given us really excellent service, especially given we are not paying enterprise rates.
Edit: also we are not in a US timezone, which makes the UI weird. And I do love the email integration: have a bug, get an email, fix it.