It would be nice to have some sort of health check API. We recently faced an issue with an update and Discourse was producing 500 errors.
However, curl returned 200:
curl -I https://forum.gitlab.com
HTTP/2 200
server: nginx
It would be nice to have some sort of health check API. We recently faced an issue with an update and Discourse was producing 500 errors.
However, curl returned 200:
curl -I https://forum.gitlab.com
HTTP/2 200
server: nginx
This exists, see
/srv/status
Ah, thank you! I was searching “health check” and that didn’t yield any results.
Post is 404. What are the endpoints?
I’ve updated my post.
Actually I don’t think /srv/status would catch migration issues like the one mentioned above…
(and it would be pretty hard to build a check that does catch issues like that one)
Yes… /srv/status is there as a very cheap test, all it does is ensures the apps middleware stack is working.
To catch issues where you auto deploy I would recommend monitoring 200s, if there is a large increase in non 200s alert.
「https://discourse.example.org/srv/status」をアップタイムモニターの監視先として指定するのは良いアイデアでしょうか?「サイトが稼働しているか」 reliably を測るためには不十分かもしれませんが、システムへの負荷が少ない監視方法があればと思います。
(あるいは、このエンドポイントに記載されているコンポーネントを拡張する予定はありますか?)
そうですね、それは妥当な場所です。より高度なことをしたい場合は、特定のトピックを指してテキストを検索することもできます。
はい、以前は /about を使っていましたが、こちらを使う方向で検討しています。
昔のオペレーションやオンコール対応の経験から、以下のような形式にすると、場合によってはトラブルシューティングに役立ったり、興味深いものになったりするかもしれないと考えました。
db ok
middleware ok
whatever-else ok
...
all systems ok