I’m kind of new to gitlab and I’d love to know which would be the best way to keep an eye on the health of the system. It has gone down a couple of times and I just realized out of pure luck.
Surely, there should be an easy way to say “hey, if RAM is close to 90% send an e-mail to firstname.lastname@example.org” or anything equivalent.
Thanks for any help you may provide!
Have you taken a look at using Prometheus? If you used the GitLab Omnibus, it should be bundled in the package already. You just have to enable it and start monitoring. I’m not sure about getting emails but I’m assuming it has some similar functionality.
specifically with Prometheus, you’ll need to configure the alert manager, like described here in order to trigger thresholds and send notification emails.
Another possibility would be Grafana and its annotations and alerts.
If you are planning to use an external and/or existing monitoring tool, you can use the REST API for health checks as well. In the service monitoring world with Icinga, Nagios, etc. you can e.g. use the check_gitlab plugin in combination with other service checks for the GitLab host to be alerted in case.
Still, external monitoring applications also add additional maintenance. Keep that in mind when going this direction. Another “simple” approach is to just call check_gitlab via cronjob and send an email in case of failure.