我已经将微服务应用 docker 化,现在正在使用Kubernetes。

有时容器以healthy状态运行,但是微服务应用程序中存在问题,因此我必须获取应用程序指标。

是否可以从容器/ pods 外部获取指标?

最佳答案

我建议您使用Observability模式设计应用程序,基本上,您将创建一个路径(例如/metrics),并且每次需要该应用程序的信息时都将使用此路径。该路径将填充您需要的所有信息(例如,被杀死的线程)。这种方法可以称为withe box monitoring:应用程序知道其状态。然后,您可以使用Prometheus之类的工具来查询路径并创建警报,也可以仅单击路径以获取想要的格式(json,yml,ecc)公开的信息。使用简单的Web服务器即可到达该路径,也可以将其集成到应用程序中。暴露容器端口80,您基本上可以运行一个简单的curl http://<container name | localhost>/metrics来获取所需的所有信息。
您可以找到一堆可以集成到应用程序中的库。

10-08 09:37
查看更多