Heron Python SDK for Business Event Monitoring
Project description
Heron — Business Event Monitoring for SaaS
Detect when your business workflows silently break.
What is Heron
Heron makes sure your critical business events are actually happening. Unlike traditional monitoring that tells you when your servers crash, Heron learns the usual frequency of your events and immediately alerts you when they stop unexpectedly.
The Problem
Most monitoring tools tell you about infrastructure failures. They do NOT tell you when your business stops working.
Examples of silent failures:
- Signup webhooks stop firing
- Payment events stop being produced
- Email jobs stop running
- Background workers silently fail
Your app looks perfectly healthy, but your business flow is broken. You usually only find out when a user complains. Heron fixes this gap.
How It Works
Your App → Heron SDK → Heron Server → Pattern Learning → Silence Detection → Slack Alerts
Quick Start
Getting started with Heron is designed to be completely frictionless.
-
Clone the repository:
git clone https://github.com/pranavkp71/Heron.git cd Heron/heron-server
-
Install dependencies:
python -m venv .venv source .venv/bin/activate pip install -r requirements.txt
-
Start the backend: Once your PostgreSQL database logic is connected via
.env, simply boot the server:python run.pyThe backend will be live at
http://localhost:8000.
Example
Instrumenting a business event only takes a single line of code!
import heron
# Initialize the SDK with your project key
heron.init(api_key="YOUR_API_KEY")
# Track an event
heron.track("payment.completed")
Heron learns that payment.completed happens every ~3 minutes.
If the event silently stops:
🚨 Heron Alert
Event: payment.completed
Last seen: 18 minutes ago
Expected interval: ~3 minutes
When the event resumes:
✅ Heron Recovery
Event: payment.completed
Downtime: 18 minutes
API
Heron provides simple REST endpoints to query and consume your own incident data.
Get all incidents:
GET /v1/incidents?api_key=YOUR_KEY
Get active incidents only:
GET /v1/incidents/active?api_key=YOUR_KEY
Contributing
We welcome contributions from everyone! Whether it's fixing bugs, improving docs, or adding new features, we'd love your help.
Please read our Contributing Guide for full instructions on how to get started, branch expectations, and how to run our backend test suite.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file getheron-0.1.0.tar.gz.
File metadata
- Download URL: getheron-0.1.0.tar.gz
- Upload date:
- Size: 12.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
09db3e5a944df3780789b799c8a58f41aa4cb76f6e357a78eaee238955e60d26
|
|
| MD5 |
0801df9f579e1d1b6bfcee661d8b251b
|
|
| BLAKE2b-256 |
b8852fe9d1cbbbec6358e1116301dc5fdb123f9c174d31babf368e52d267a8a8
|
File details
Details for the file getheron-0.1.0-py3-none-any.whl.
File metadata
- Download URL: getheron-0.1.0-py3-none-any.whl
- Upload date:
- Size: 19.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
243b2142c91abf13b49e76e58bfba1be68f8010ca3d0070fa6f4a5ca60d95810
|
|
| MD5 |
76612bf7ed6b95da15a60fa96c1d23a7
|
|
| BLAKE2b-256 |
27fa1f1f7016d00ee00e778c4be2e1370cd8c808219045b98401ba1e5eba227a
|