mirror of
https://github.com/mentos1386/zdravko.git
synced 2024-11-21 23:33:34 +00:00
Self-Hosted multi region health check service
Tine
bb1ba5ed58
KeyValue store will be used by Incidents, so that the functions can decide based on history not just on the event that triggered them. |
||
---|---|---|
.github/workflows | ||
build | ||
cmd/zdravko | ||
database | ||
deploy | ||
docs | ||
internal | ||
pkg | ||
web | ||
.envrc | ||
.gitignore | ||
.prettierrc | ||
devbox.json | ||
devbox.lock | ||
example.env | ||
go.mod | ||
go.sum | ||
justfile | ||
LICENSE | ||
README.md |
zdravko
Golang selfhosted Status/Healthcheck monitoring app.
Mostly just a project to test temporal.io.
Roadmap
- SSO Support for authentication.
- SQLite for database.
- This means for main app db as well as temporal db.
- Single binary.
- One binary to run worker, server and temporal all together.
- Abbility for multiple workers.
- Spread workers across regions to monitor latency from different locations.
- Use k6 for checks, so that they can be written in javascript.
- History and working home page.
- Kinda working atm.
But look if all the data could be stored/fetched from temporal.
- Kinda working atm.
- Edit/Delete operations for healthchecks and workers.
- CronJob Healthchecks (via webhooks).
- Notifications (webhooks, slack, etc).
- Incidents (based on script that is triggered by monitors/crobjobs).
- Prepare i18n.
- Alpha Version (1H 2024)
- ??
- Beta Version (2H 2024)
- ??
- Stable Release (2025)
Demo is available at https://zdravko.mnts.dev.
Development
Dependencies
# Configure
cp example.env .env
# Generate JWT key
just generate-jwt-key
# Start development environment
just run
License
Under AGPL, see LICENSE file.