Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Potential support for heartbeats? #251

Open
kashalls opened this issue Feb 7, 2025 · 5 comments
Open

Potential support for heartbeats? #251

kashalls opened this issue Feb 7, 2025 · 5 comments

Comments

@kashalls
Copy link

kashalls commented Feb 7, 2025

Is your feature request related to a problem? Please describe.

Some services like Prometheus's Alert Manager allows you to send out a request at a set interval as sort of a keep alive. It would be cool to allow kener to allow receiving HTTP GET/POST requests to mark a monitor as up. Super helpful for endpoints where you can't exactly jump a firewall or allow traffic.

Describe the solution you'd like

Kind of like the badge endpoints: GET/POST http://[hostname]/heartbeat/[tag]/status with an optional query parameter that acts like a key for proof of identity.

@rajnandan1
Copy link
Owner

Hi

There is an api for this. PoSt /status

@kashalls
Copy link
Author

kashalls commented Feb 7, 2025

Hi

There is an api for this. PoSt /status

I don't think that's what we want in this case. I was referring to a type of monitor here: https://kener.ing/docs/monitors/#monitor-type

@rajnandan1
Copy link
Owner

Hi
There is an api for this. PoSt /status

I don't think that's what we want in this case. I was referring to a type of monitor here: https://kener.ing/docs/monitors/#monitor-type

Just to be clear can you please help me what this new monitor type would do. If there is an example of someone else who gives this option I will be able to figure it out. Thanks

@pskuza
Copy link

pskuza commented Feb 18, 2025

+1 from me, since I want to switch from Uptime Kuma. It would work like the Push Passive Monitor there.
Some more info here

@kashalls
Copy link
Author

Just to be clear can you please help me what this new monitor type would do. If there is an example of someone else who gives this option I will be able to figure it out. Thanks

A good example would be UptimeRobot's Heartbeat Monitoring. Essentially, the server expects to see a GET/POST request to a per-negotiated url. A device can be configured with a cronjob to automatically curl that endpoint at a set interval.

*/5 * * * * wget --spider "https://<fqdn>/heartbeat/<uuid>" >/dev/null 2>&1

Optionally, you can pass a secret in the post data to "authenticate" the curl job.
This type of job is usually helpful for workloads that don't necessarily expose endpoints to the internet, rather rely on the device to be monitored to make that call.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants