Back
Kyrylo Silin

Kyrylo Silin

@kyrylo

Hacking on telebugs.com, self-hosted error tracker without a subscription · Previously senior engineer at Airbrake, maintainer of the Pry REPL
8
Joined July 2024

What for? Why?

Just woke up one day and decided to self-host:

  • All pages load instantly
  • Faster CI builds (GitHub Actions-compatible btw)
  • No UI changes
  • "What if GitHub is down when I need it?"

Are you German, by any chance? I’ve noticed that Germans really love self-hosting - much more than others. Could you explain this phenomenon to me?

Yes, I am :D Yeah, it's a bigger trend there. Depending on the social and tech circle.
It's mostly about control, data privacy and sometimes about cost as well. Commercial services have feature creep, remove features, change prices, use your data and might vanish at any moment.

One theory why open-source in general is more popular in Germany that made it's round is that the standard of living is pretty high, especially for devs. So they have the time to work on open-source and self-hostable software.

And it's also fun :)

I’ve used ClickHouse on the cheapest Hetzner server with an app that was never in production (basically a test environment) under artificial load, and I didn’t have any OOM errors.

Plausible also uses it and did have some hiccups, so I chose one tier above the cheapest.

Have you heard of Kamal? It makes deployments on your own hardware a breeze.

I didn't have OOM errors, but it's still more RAM usage than I'm going to tolerate. No reason it should eat multiple gigs doing absolutely nothing. I reserve as much RAM as possible for my own apps.

I tried Kamal some time ago and it was very buggy with terrible documentation. I think it improved but I don't care since I already started using Dokku which works fine for me.

  1. In terms of features, does it make you happy - too many, not enough, or just right?
  2. ClickHouse doesn’t really consume much memory, but I hear you. I built my error tracker on the same stack (SQLite + Rails). Rust is probably friendlier toward memory than Ruby, though.
  1. Good enough

  2. I’d call consuming multiple gigs of ram while zero logs are being ingested (system at idle) way too much.
    Openobserve eats an order of magnitude less RAM and cpu at idle. Ultimately higher resource consumption leads to higher power bills so it’s something I pay close attention to (I own my own hardware)

I’ve used ClickHouse on the cheapest Hetzner server with an app that was never in production (basically a test environment) under artificial load, and I didn’t have any OOM errors.

Plausible also uses it and did have some hiccups, so I chose one tier above the cheapest.

Have you heard of Kamal? It makes deployments on your own hardware a breeze.

I didn't have OOM errors, but it's still more RAM usage than I'm going to tolerate. No reason it should eat multiple gigs doing absolutely nothing. I reserve as much RAM as possible for my own apps.

I tried Kamal some time ago and it was very buggy with terrible documentation. I think it improved but I don't care since I already started using Dokku which works fine for me.

I'm curious about Uptime Kuma. What makes it feel amateur, and what would make it professional?

I’ve never heard of OpenObserve. I just checked their landing page. Do you actually deal with petabytes of data (as they claim there)?

  1. Fonts look stupid, uptime history (in terms of what is shown on the status page) is limited to like 30 days or something, theming is not perfect

  2. No, but it works great for my log volume which is like 3 GB/mo. They're the only solution I found with reasonable resource consumption and a simple software architecture (just sqlite and a rust backend), everything else is like "you have to have clickhouse as a dependency plus 3 other things" -> multiple gigs of ram eaten up immediately for no reason

  1. In terms of features, does it make you happy - too many, not enough, or just right?
  2. ClickHouse doesn’t really consume much memory, but I hear you. I built my error tracker on the same stack (SQLite + Rails). Rust is probably friendlier toward memory than Ruby, though.
  1. Good enough

  2. I’d call consuming multiple gigs of ram while zero logs are being ingested (system at idle) way too much.
    Openobserve eats an order of magnitude less RAM and cpu at idle. Ultimately higher resource consumption leads to higher power bills so it’s something I pay close attention to (I own my own hardware)

I’ve used ClickHouse on the cheapest Hetzner server with an app that was never in production (basically a test environment) under artificial load, and I didn’t have any OOM errors.

Plausible also uses it and did have some hiccups, so I chose one tier above the cheapest.

Have you heard of Kamal? It makes deployments on your own hardware a breeze.

I didn't have OOM errors, but it's still more RAM usage than I'm going to tolerate. No reason it should eat multiple gigs doing absolutely nothing. I reserve as much RAM as possible for my own apps.

I tried Kamal some time ago and it was very buggy with terrible documentation. I think it improved but I don't care since I already started using Dokku which works fine for me.

This is the first time I’m hearing about it 👀
Does it actually track errors? The landing page doesn’t seem to mention that.

So you offer a SaaS that you charge for, but users can also self-host it for free. Did I get that right?

As for 37signals’ Once philosophy, I built #telebugs exactly along those lines :)

Regarding keeping the code private while publishing a Docker image - that won’t really work with interpreted languages, since the code can easily be extracted from the image.

So you offer a SaaS that you charge for, but users can also self-host it for free. Did I get that right?

Yep. That's right.

That sounds like an adventure. How would you charge for it?

The plan is to charge monthly for hosting, a custom domain, and automated features that run on schedules or based on triggers.
So the paid features are ease of use, but anyone could do it themselves if the wanted to.

Home
Search
Messages
Notifications
More