mirror of
https://github.com/mentos1386/zdravko.git
synced 2024-11-24 16:48:16 +00:00
Self-Hosted multi region health check service
.github/workflows | ||
build | ||
cmd/zdravko | ||
database | ||
deploy | ||
docs | ||
internal | ||
pkg | ||
web | ||
.envrc | ||
.gitignore | ||
.prettierrc | ||
CONTRIBUTING.md | ||
devbox.json | ||
devbox.lock | ||
example.env | ||
go.mod | ||
go.sum | ||
justfile | ||
LICENSE | ||
package-lock.json | ||
package.json | ||
README.md |
zdravko
Golang selfhosted Status/Healthcheck monitoring app.
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).
- Allow CronJob monitoring by checking that there was an event at expected time.
- Allow Heartbeat monitoring to alert when events stop coming.
- Allow integration with other services by alerting/transforming when events come.
- Notifications (webhooks, slack, etc).
- Incidents (based on script that is triggered by monitors/crobjobs).
- Prepare i18n.
- Alpha Version (3Q 2024)
- ??
- Beta Version (4Q 2024)
- ??
- Stable Release (1H 2025)
Demo is available at https://zdravko.mnts.dev. More screenshots in the docs folder.
Development
Dependencies
# Configure
# You will need to configure an SSO provider
# This can be github for example:.
cp example.env .env
# Generate JWT key
just generate-jwt-key
# Start development environment
just run
# Or build binaries, packages, docker images...
just build
# Or build only one binary.
just build-only-binary
License
Under AGPL, see LICENSE file.