tinymon docs
tinymon is lightweight all-in-one monitoring: error tracking, uptime checks, and cron/heartbeat monitoring in one tool. The SDKs catch unhandled exceptions, group them into issues server-side, and alert you when something new breaks; uptime and heartbeat monitors cover when your app is down or a job didn't run. This is everything you need to integrate.
init(), add the built-in middleware for your framework (Rails, Django, FastAPI, Express…) to capture every 500 automatically — one line. See your language's Frameworks section below.
Pick your language
Browser & Node
npm install tinymonjs — works in browser, Node, Deno, Bun, and Cloudflare Workers. Zero dependencies.
Python 3.8+
pip install tinymonpy — stdlib-only. Works with Flask, Django, FastAPI, plain scripts.
Ruby 2.7+
gem install tinymonrb — zero runtime dependencies. Works with Rails, Sinatra, plain scripts.
The shape of the SDK
Every SDK exposes the same six functions so you can move between languages with no surprises:
| Function | Purpose |
|---|---|
| init | Configure the SDK with your DSN. Installs global exception handlers. |
| captureException | Send an exception to tinymon. Useful inside catch blocks. |
| captureMessage | Send a plain message (not an exception). Pick a level: error, warning, info. |
| setUser | Attach a user identifier to subsequent events. |
| setTag | Attach a tag (key/value) to subsequent events. |
| addBreadcrumb | Record a breadcrumb. Last 30 are attached to the next event. |
Method names follow each language's convention — captureException in JS, capture_exception in Python/Ruby.
There's one more you'll occasionally need: flush(), which blocks until queued events are delivered. You only need it in serverless functions or short-lived scripts that can exit before a send completes — see Delivery & flush(). For the full picture of how events reach tinymon, read Transport internals.
Beyond errors
tinymon also watches your app from the outside and keeps your scheduled jobs honest — no SDK required for either.
Uptime
Scheduled HTTP checks of a URL, with down and recovery alerts on your existing channels.
Heartbeat / cron
A ping URL for your cron jobs. Miss the window and tinymon tells you the job didn't run.
Release tracking
First-seen-in-release, issues per release, and regression auto-reopen when a fixed bug returns.
Search & filter
Text search plus environment, release, level, and status filters, sorted by recency or frequency.
GitHub integration
Create or link a GitHub issue from an error, prefilled with the stack trace and a back-link.
Next
If you're starting from scratch, the quickstart takes about 2 minutes. Otherwise jump to your language above.