I am looking to monitor self hosted services that can send notifications to Telegram. Are there any web service monitoring solutions that can be installed on Windows and not installed using Docker?
I checked through awesome-selfhosted and awesome-sysadmin repos and couldn’t find one. All the ones I saw were either for Linux or container based.
EDIT: For anyone that comes across this, here is how I resolved this. Thanks to u/dotmatrix for suggesting healthchecks.io
SOLUTION
On the host
- Script to check the status of the webpage. Save the file with
ps1
extension
$hc= "https://hc-ping.com/<blahblahblah>"
$url = "https://website.com/"
$response = curl $url
if ($response.StatusCode -eq 200) {
curl $hc
} else {
curl $hc/fail
}
- Set up the above script in Task Scheduler to run every 5 mins
On HealthChecks
- Create a check
- Create a Telegram integration if you want the notification in a group/direct message/channel: https://healthchecks.io/integrations/add_telegram/
- If you want to customize the message or send the message to a topic in a group, you can create a Webhook. Instructions are here: https://github.com/healthchecks/healthchecks/issues/689#issuecomment-1409847685
I don’t think this is exactly what you’re looking for, but Overseer/Jellyseerr offers notifications through Telegram for requests when they’re made, approved and available.
Right, I am looking for a solution that can alert me, if/when any of the self hosted web services goes down. Pretty much check if either the port or webpage is up and send alerts.
I saw Prometheus supports Windows. But, I think its kind of overkill for my use case. I have everything running on an old laptop. So, I am looking for a lightweight application/solution
You’ll have to write some kind of script that does the checking (I’d use curl to check the HTTP response code), healthchecks.io then handles the notifications.
Edit: Just an example of how such a script might look (haven’t tested it, but I do something similar in linux). You can let the task scheduler run it every few minutes: https://pastebin.com/rY0FPpgk
Thank you for the script. I will look in to this.
I have posted the solution above. Thank you for suggesting the above service
You’ll have to write some kind of script that does the checking (I’d use curl to check the HTTP response code), healthchecks.io then handles the notifications.