В экосистеме Kubernetes / Docker существует соглашение об использовании /healthz
в качестве конечной точки для проверки работоспособности приложений.
Откуда взялось название «healthz» и связана ли с этим именем какая-то особая семантика?
В экосистеме Kubernetes / Docker существует соглашение об использовании /healthz
в качестве конечной точки для проверки работоспособности приложений.
Откуда взялось название «healthz» и связана ли с этим именем какая-то особая семантика?
Исторически он исходит из внутренней практики Google. Их называют «z-страницами».
Причина, по которой он заканчивается на z
, состоит в том, чтобы уменьшить коллизии с фактическими конечными точками приложения с тем же именем (например, /status
). Дополнительную информацию см. В этом выступлении: https://vimeo.com/173610242
Аналогичные конечные точки (по крайней мере, внутри Google): /varz
, /statusz
, /rpcz
. Сервисы, разработанные в Google, автоматически получают эти конечные точки для экспорта их работоспособности и метрик, и есть инструменты, которые собирают открытые метрики / статусы со всех развернутых сервисов.
Инструменты с открытым исходным кодом, такие как Prometheus, реализуют этот шаблон (поскольку оригинальные авторы Prometheus также являются бывшими гуглерами), обращаясь к хорошо известной конечной точке для сбора метрик из вашего приложения. Аналогичным образом OpenCensus позволяет вам открывать z-страницы из вашего приложения (в идеале на другом порту) для диагностики проблем.