Stack traces you can read
Frames are parsed, your own code is highlighted and library frames fold away. Errors are grouped by where they happen, not by line numbers that change with every deploy.
LightyErrors is a lightweight, self-hosted alternative to Sentry: a familiar client, readable stack traces and one e-mail when something new breaks. Deploy it to Caprover in minutes.
5,000 events a month free. No credit card.
cartTotal (src/cart/total.ts) alerted chargeCard (src/payments/stripe.ts) alerted withTimeout (src/lib/timeout.ts) alerted loadConfig (src/config.ts) pending Frames are parsed, your own code is highlighted and library frames fold away. Errors are grouped by where they happen, not by line numbers that change with every deploy.
The first time an error appears, your team gets one e-mail. When it happens again, LightyErrors counts it and keeps quiet.
One Node process, Postgres for the queue, CouchDB for the data. No Kafka, no ClickHouse, no twelve containers to babysit.
Stack traces contain user data and secrets. Keep them on your own server, behind your own login.
Attach your own fields to every event or to one error, like Sentry's extra, and get the app's last log lines with it. You see what the error was about and what led up to it.
Every step is retried and idempotent. If your mail service or database blinks, events and alerts wait and go out once it is back.
init, captureException, flush. Events are batched and sent in the background, retried when
the network fails, and flushed before your process exits. Uncaught errors are reported automatically, with your
extra context and the recent console lines.
fetch// npm i lighty-errors-client import { Lighty } from 'lighty-errors-client'; Lighty.init({ dsn: 'https://3f9a…@errors.example.com/shop', environment: 'production', extra: { service: 'shop-api' }, }); try { checkout(cart); } catch (err) { Lighty.captureException(err, { extra: { cartId: cart.id } }); } await Lighty.flush(2000);
The repository ships a Dockerfile and a captain-definition. Add Postgres and CouchDB as one-click apps, set a few variables, run npm run deploy.
Send alerts through any mail server or provider: host, port, TLS and login. Mailpit catches everything while you develop.
Already have a mail service? Point the server's configuration at it: LightyErrors posts { to, subject, body } as JSON, one request per recipient, and retries when it is down.
Start free with 5,000 events a month. Need more? Pro gives you 100,000 events for $10 a month.
$0 forever
5,000 events / month
$10 per month
100,000 events / month