@z428 it's useful to analyse why you want this:
1. do you want to know whether a service is up or down; or
2. do you want to know whether the service is available from outside
For 1, internal monitoring is probably the way to go: Prometheus+Grafana (optionally). For 2, you'd be better off with an external service with a network of global monitors to check availability of your service from different locations.
Anyway, Grafana/Prometheus has some plugins for this. Alternatively Monit can serve you well there too: https://mmonit.com/monit/
@z428 Another one I had some good experience with was Munin: https://munin-monitoring.org/
It really depends on what you are after.