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