Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mentos1386/zdravko
Self-Hosted multi region health check service
https://github.com/mentos1386/zdravko
flyio golang healthcheck k6 oauth2 status-page temporal
Last synced: 26 days ago
JSON representation
Self-Hosted multi region health check service
- Host: GitHub
- URL: https://github.com/mentos1386/zdravko
- Owner: mentos1386
- License: agpl-3.0
- Created: 2024-02-10T08:05:21.000Z (9 months ago)
- Default Branch: main
- Last Pushed: 2024-05-22T18:53:53.000Z (6 months ago)
- Last Synced: 2024-05-22T19:44:15.634Z (6 months ago)
- Topics: flyio, golang, healthcheck, k6, oauth2, status-page, temporal
- Language: Go
- Homepage: https://zdravko.mnts.dev
- Size: 3.43 MB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# `zdravko`
Golang selfhosted Status/Healthcheck monitoring app.
### Roadmap
- [x] SSO Support for authentication.
- [x] SQLite for database.
- This means for main app db as well as temporal db.
- [x] Single binary.
- One binary to run worker, server and temporal all together.
- [x] Abbility for multiple workers.
- Spread workers across regions to monitor latency from different locations.
- [x] Use [k6](https://github.com/grafana/k6) for checks, so that they can be written in javascript.
- [x] History and working home page.
- Kinda working atm. ~But look if all the data could be stored/fetched from temporal.~
- [x] 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)![Screenshot](docs/screenshot-index.png)
Demo is available at https://zdravko.mnts.dev. More screenshots in the [docs folder](docs/).# Development
### Dependencies
* [devbox](https://www.jetify.com/devbox)
* [justfile](https://github.com/casey/just) (optional, `devbox run -- just` can be used instead)```sh
# 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](LICENSE) file.