frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

Open in hackernews

Track Errors First

https://www.bugsink.com/blog/track-errors-first/
55•GarethX•1d ago

Comments

vanschelven•1d ago
Hey, that's me!

Dicussed on r/programming this morning[0] (on my side of the world) where someone probably picked it up

I'll be in the thread for a while I guess

[0] https://www.reddit.com/r/programming/comments/1l3sj8g/track_...

oulipo•1d ago
Is this available only for Python? or can I send stacktraces from JS/Rust/etc?
vanschelven•1d ago
It's Sentry-SDK-compatible [0] which means that there's like a 100 integrations available. The amount of work one needs to do server-side to enrich events is language-dependent and driven by demand, which means that JS support is "pretty good" and for Rust you'll probably be looking at something that's not very "rich" (since symbol info will be missing[1]).

[0] https://www.bugsink.com/sentry-sdk-compatible/

[1] https://github.com/bugsink/bugsink/issues/20

JimDabell•1d ago
I’ve used Sentry to track bugs from client-side JavaScript, server-side Python, native iOS apps, and native Android apps.

You say you’re compatible with the Sentry SDKs, but it’s not at all clear to me which of these platforms will do useful things with Bugsink and which will not.

vanschelven•1d ago
Fair enough; I'll update the documentation to reflect the state of the art a bit more clearly. In the meantime, I'd say the best way is simply to try the 30 second-install and send over a test-event (a matter of switching out the DSN) to see how it shows up.
bmo-at•1d ago
Thanks for creating this! I would love to contribute to this a little bit, maybe if I can get into python I will try and make a useful contribution, but for now I am using it to make all my go services alert me faster and more easily when shit hits the fan.
jtwaleson•1d ago
Awesome to see a self-hosted alternative to Sentry. Can't wait to try it out.

In practice most companies are always sending some PII (or even PHI....) to Sentry because filtering is always one step behind. Having it self-hosted would be my strong preference, but self hosting that is a PITA.

boxed•1d ago
You can self host sentry. Although I hear it's a bit of a pain.
vanschelven•1d ago
You might have even heard that right here on hacker news: https://news.ycombinator.com/item?id=43725815
bheesink•1d ago
We are testing Bugsink for a few (Django) projects now and it works great. Implementation is very easy, in two steps, if you are already using the Sentry SDK (there is no third step, as the documentation states :) We value the privacy of our end users and therefore it is important to us that the data stays within the EU.
bmo-at•1d ago
I agree, I was trying to set up self-hosted centry recently and while it is possible, it has a lot of moving parts which might be overkill if your priority is error tracking. With bugsink I was up and running in a few minutes and the compatability with the sentry sdk is great!
vanschelven•1d ago
Gotta admit these kinda overly-enthousiastic endorsements (parent & grandparent) make me blush slightly but I guess I shouldn't and should just stick 'm on the website under the testimonials section :-)
bmo-at•10h ago
Can't speak for grandparent but you can happily use mine
emptysea•1d ago
Pretty sure you can get EU data residency with sentry

https://docs.sentry.io/organization/data-storage-location/

jensenbox•1d ago
I love Sentry but it has become a bit over-the-top complicated as of late (for my taste).

Glad to see one more on the market. I only knew about GlitchTip prior to today.

lawgimenez•1d ago
Tried Sentry, then went back to BugSnag again. For me Sentry is just too much for a single developer.
valenterry•1d ago
For a single developer? What do you mean?
stronglikedan•1d ago
Don't get your hopes up.
vanschelven•1d ago
Not the parent but I imagine something like "the more software caters to big orgs, the worse fit it becomes for individuals"
lawgimenez•23h ago
Sorry, what I meant was the features on BugSnag’s free plan is enough for me. I feel like Sentry caters more on their business customer.
drcongo•1d ago
Agreed. We use both Sentry and Bugsnag (or whatever terrible name it has now) on different projects, and over time Sentry's interface has gotten considerably worse while Bugsnags got slightly better. I don't know if Sentry is aimed at significantly different users to us (an agency with many projects, mostly Django), but the sheer information overload when trying to understand an error is so bad that I ended up building a tool that receives Sentry webhooks and displays the information in a logical, sparse and easily digestible way.

Bugsink looks nice and straight forward, and if anything other than email - the absolute worst medium for notifications - lands in there I'll probably make the switch.

arp242•1d ago
I have rarely found logs useful to debug or track down any production issue. Errors on the other hand are almost always useful. I never understood why some people focus so strongly on logs, which tend to always just get ignored, and errors never get noticed.

Maybe one reason is that in many organisations I've seen a lot of "noise" in the error logs, logging things as errors that really aren't errors, which hugely reduces the usefulness. It requires a bit of discipline to keep the error logs clean, but honestly, it's not that hard.

vanschelven•1d ago
I had a section "Why" in one of the drafts but scrapped it because I thought it was maybe a bit too harsh. But the gist of it is (IMHO):

* For vendors logging is _awesome_. There's basically no upper limit, you can log all kinds of things, and you can bill them by usage. And because of the scale it's hard to do locally, which is also good news for vendors.

* On the developer-side, there's always the "let's not think about it too much right now, let's just collect a bunch of info" argument for logging. Which is great if you don't want to think (more kindly: if you're facing deadlines)

I'm sure there's good cases for logging (I read logs occasionally too) but it wouldn't be my _first_ thing to heavily invest in (hence the article)

strken•1d ago
Looking at the article, I'm not convinced logs and errors are different enough to change the taxonomy. I agree that a stack trace linked to source code is a useful tool, but don't understand why e.g. a warning can't have a stack trace too, or why your logging system is the wrong place to put this tool.

I've found logs of successes, rather than errors, to be useful for understanding attacks or gnarly performance issues. Seeing that you have a lot of long-running requests for a particular user or tenancy when you're running out of database connections is an example that springs to mind.

827a•1d ago
What's everyone using for error reporting these days?
vanschelven•1d ago
I didn't want to put a "now that you're here" banner over the screen or at the bottom (I hate those myself) but as the OP I can heartily recommend https://www.bugsink.com/
dbunskoek•1d ago
We're currently moving multiple projects from Sentry to Bugsink, and so far it's looking great, thanks for making this @vanschelven :)

No hate on Sentry by the way, but we (and some of our clients in the Netherlands) also like to have a European alternative, and it's a big bonus that this has a very low switching cost.

SoftTalker•1d ago
User complaints.
bugsense•1d ago
Passing the torch
vanschelven•1d ago
your username made me do a double-take as it's a portmanteau of my current and previous startup (both in founder role)... but I see your actual story is basically the real-life version of the OP:

> Bugsense is a crash reporter [..] In September 2013, Bugsense was acquired by Splunk

arnsholt•1d ago
Semi-relatedly, this is why I'm quite liberal about throwing errors while developing programs. During development it makes sure I'm reminded of my slipups when I inevitably forget some invariant that needed to be upheld, and then towards the end of the process any throws remaining are easily found and vetted. And in production, the closer to the source the error occurs the easier it is to fix; if you're especially unlucky, the error doesn't occur until after state has been persisted and read back, in which case you not only need to fix the bug but also have to figure out how to handle and/or remediate the bogus state written to your database.
latchkey•1d ago
I used to code this way, then I started to write tests, as I was writing my code. I could ensure the behavior was expected with the test. If the code wasn't easily testable, I would refactor it right way and that would generally leave me with easier to read and follow code as well. The end benefit being that if I wanted to change the behavior later, now I knew if I was breaking anything. With everything tested, very little made it to production that wasn't working.
4hg4ufxhy•1d ago
It's not about being easily testable, it's about being in an invalid state for an unexpected reason, you can't test that trivially.

You can try to avoid it by architecture or abstractions, but it only works to some extent.

latchkey•1d ago
Testing isn't trivial, it can be downright difficult. But if you test for those invalid states, the reasons are expected.
18172828286177•1d ago
> All of those are useful. But none of them tell you where the code broke.

Good logs do

vanschelven•1d ago
For some definition of "where" :-)

it's my experience that a full stacktrace is needed (or at least super-helpful) when debugging, since the innermost (triggering) level is not always the level where the problem was introduced. Getting full context (including the values of local variables) all the way up the stack makes that puzzle a whole lot easier.

rco8786•1d ago
I try and lean on Sentry and error tracking for as long as possible. And I'm happy to see some competition (and a simpler looking option).
edelbitter•1d ago
> An exception isn’t just another event. It’s your code telling you it failed, in a specific place, with a specific context.

No! The other way around! All the other events should have context as well. I want to cry every time when I get a random warning-severity log that may or may not indicated something I need to look into.. without collecting the context which is collected on error-severity logging.

So the text was truncated? What? Where? Why? (don't truncate passwords before comparison, please!?) So the kernel logged some WARN dump? In response to what operation? Does only the 6.12 do that, or am I receiving this one from 6.14 machines as well? So the library says the "update()" method is deprecated? Which one of 10 update() methods in that library? Called from where?

vanschelven•1d ago
Maybe... I even wrote about how to do this in the case of Python and the Sentry SDK [0], so I don't fully disagree... but: in the general case this might get very expensive data-wise. So you have to cut off somewhere/start somewhere and/or budget how much info you send per type of log

[0] https://www.bugsink.com/blog/capture-stacktrace-no-exception...

marcosdumay•1d ago
So, the observability community is finally so full of ungrounded astronauts that "log" isn't the place you go to look for errors anymore and it's so full of noise that if you push the errors there, you will lose them.

Well, they've going that way for ages. But officially entering the stage where it's better to always ignore whatever they have to say is an important landmark anyway.

ahofmann•1d ago
I'm doing both. A line of logging that looks like "[date without timezone] Foo: bar additional stuff, almost no context" so, almost all lines found in /var/log/*/*.log, are mostly useless.

Right now, I'm playing with the idea to log json in those files and send this also to Signoz, Sentry, graylog, or whatever. This way, my logfiles are still tail-able and grep-able. Very important for development and "the customer is furious, WTF is going on in production" situations.

And also some other software can email me, according to some rules. This helps to have less furious customers. And maybe it can draw some cute graphs, so I can tell management that prod runs great!

marcosdumay•22h ago
If you need an activity log as complementary information, you can send it into another stream. You can have more than 1.

Logs should be readable. What that means you should get the relevant information by reading the file after maybe searching for something a few times. That requires that the information there should be about a single topic. If that's too much, it should be tagged so that your tooling can make it readable, but this is for huge services.

MattSayar•1d ago
I like the acronym MELT for Metrics, Errors, Logs, and Traces.

What the failure of a superstar student reveals about economics

https://www.economist.com/finance-and-economics/2025/05/22/what-the-failure-of-a-superstar-student-reveals-about-economics
1•georgecmu•1m ago•0 comments

AI can now stalk you with just a single vacation photo

https://www.vox.com/future-perfect/415646/artificial-intelligencer-chatgpt-claude-privacy-surveillance
2•rolph•2m ago•0 comments

One-Shot AI Voice Clones vs. LoRA Finetunes

https://gabber.dev/blog/not-all-voice-clones-are-created-equal-understanding-one-shot-vs-premium-cloning
1•jackndwyer•2m ago•0 comments

'Tastes like water': how a US facility is recycling sewage to drink

https://www.theguardian.com/environment/2025/jun/06/water-scarcity-us-facility-recycling-sewage-to-drink
1•mitchbob•3m ago•0 comments

Cursor's Anysphere nabs $9.9B valuation, soars past $500M ARR

https://techcrunch.com/2025/06/05/cursors-anysphere-nabs-9-9b-valuation-soars-past-500m-arr/
1•skeptrune•4m ago•0 comments

4D Gaussian Splatting Built on Top of the PlayCanvas Engine

https://www.4dv.ai/en
1•fidotron•4m ago•0 comments

Get ready for less-efficient and more-polluting vehicles in the US

https://arstechnica.com/cars/2025/06/gop-intensifies-war-against-evs-and-efficient-cars/
2•rntn•4m ago•0 comments

The 'China Shock'

https://www.wsj.com/opinion/the-real-story-of-the-china-shock-manfuacturing-employment-trade-af12ef3a
1•surprisetalk•5m ago•0 comments

WxWidgets 3.3.0 Released

https://wxwidgets.org/news/2025/06/wxwidgets-3.3.0-released/
1•P_qRs•5m ago•0 comments

Overlooked Films

https://scottsumner.substack.com/p/overlooked-films
1•surprisetalk•5m ago•0 comments

Indianapolis 500 could be dramatically reshaped by jolts of electric juice

https://techxplore.com/news/2025-05-hybrid-power-indianapolis-reshaped-jolts.html
1•PaulHoule•5m ago•0 comments

Virginia Tech researchers develop recyclable, healable electronics

https://news.vt.edu/articles/2025/05/eng-me-bartlett-worch-recyclable-circuits.html
1•giuliomagnifico•6m ago•0 comments

Show HN: Solomon's Agent - a CLI to simplify the web

https://github.com/jadbox/solomonagent
1•jadbox•7m ago•1 comments

Roundcube ≤ 1.6.10 Post-Auth RCE via PHP Object Deserialization [CVE-2025-49113]

https://fearsoff.org/research/roundcube
2•speckx•8m ago•0 comments

Show HN: Hood Ball – Multiplayer car-based soccer battle (v2)

https://miguelripoll23.github.io/hood-ball/
1•PhilDunphy23•8m ago•0 comments

Connecting you to local markets for cheaper VPS

https://vpscellar.com
1•hellishcopper•8m ago•1 comments

GameStop store accidentally staples receipts into pre-ordered Switch 2 screens

https://www.eurogamer.net/switch-2-launch-ends-in-disappointment-for-some-as-major-retailer-accidentally-staples-receipts-into-consoles-screen
2•bstsb•9m ago•0 comments

Nemotron-H-47B-Reasoning-128k

https://developer.nvidia.com/blog/nemotron-h-reasoning-enabling-throughput-gains-with-no-compromises/
1•bcatanzaro•9m ago•0 comments

Experimenting with New Comment UI Features on Stack Overflow

https://meta.stackoverflow.com/q/433817/303363
1•susam•9m ago•0 comments

Is OpenAI's 4o Snake Oil?

https://gametorch.app/blog/snake-oil
1•gametorch•12m ago•2 comments

It's Time Hospitals Communicated as Clearly as Domino's

https://reviews.ofb.biz/safari/article/1321.html
2•trbutler•12m ago•0 comments

Debugging Azure Networking for Elastic Cloud Serverless

https://www.elastic.co/observability-labs/blog/debugging-aks-packet-loss
1•bumblehean•13m ago•0 comments

Series C and Scale (Cursor)

https://www.cursor.com/en/blog/series-c
2•fidotron•13m ago•0 comments

Agent Runtimes > Agent Libraries: Modus v1

https://hypermode.com/blog/modus-v1-agent-runtime-production
2•iamtherhino•14m ago•0 comments

AI and User Privacy: Here's What You Need to Know

https://www.mozillafoundation.org/en/blog/ai-privacy-data-chatgpt/
1•miles•16m ago•0 comments

Trump preparing large-scale cancellation of grants and funding for California

https://www.cnn.com/2025/06/06/politics/trump-california-federal-funding
7•ar813•16m ago•1 comments

Smithy API models for all AWS services

https://aws.amazon.com/blogs/aws/introducing-aws-api-models-and-publicly-available-resources-for-aws-api-definitions/
1•stich0602•21m ago•0 comments

Show HN: I built a tool called BitCache that backs up Entra BL keys locally

https://github.com/pawellakomski/bitcache
1•pawellakomski•22m ago•1 comments

Show HN: Lightweight Durable Workflows Built on Postgres

https://github.com/dbos-inc/dbos-transact-python
1•qianli_cs•22m ago•0 comments

Medroid: AI Doctor, Always on Call

https://app.medroid.ai/join-founders
1•raja159•24m ago•1 comments