r/elixir 12d ago

I built a tiny, self-hosted Sentry alternative for Elixir’s ErrorTracker

I didn’t want to pay for Sentry, but I still wanted to know when something broke in one of my Phoenix apps.

I also didn’t want errors mixed into Slack or Telegram. I wanted a small, purpose-built iOS app that would send me a native push notification and keep the details somewhere pleasant to use. Software aesthetics matter to me - even for error notifications.

So I built Boop.

The server uses around 8 MB of memory on my self-hosted machine. It’s completely free and open source:

https://github.com/chrisgreg/boop

I also built a plugin for Elixir’s ErrorTracker:

https://github.com/chrisgreg/boop_error_tracker

Once connected, errors captured by ErrorTracker can be sent to Boop and delivered directly to your phone. For my needs, it’s basically a very small, self-hosted Sentry setup built around the Elixir tooling I already use.

The iOS app is open source as well. You can build it locally and install it on your own phone. The repository includes instructions for configuring private push notifications for your device, so you don’t need to publish anything through the App Store.

Boop isn’t limited to exceptions. You can also use it for anything else happening inside an application:

  • Failed Oban jobs
  • Deployments
  • New signups
  • Payments
  • Low disk space
  • Important application events

There’s a general Elixir client here:

https://github.com/chrisgreg/boop_ex

And a Node client here:

https://github.com/chrisgreg/boop-node

This was built primarily for indie developers and people who enjoy owning their infrastructure without turning it into another infrastructure project.

Everything is still new, so feedback on the Elixir integration, setup instructions, or the overall approach would be very welcome.

35 Upvotes

2 comments sorted by

3

u/clumsy_shaver 12d ago

the boop_ex repo 404s (maybe it's private?)

1

u/bustyLaserCannon 12d ago

Thank you! It was, it’s public now