如果服务没有 HTTP 服务器,则写入健康检查端点
我想为 2 个不同的服务编写运行状况检查端点,但问题是它们没有 HTTP 服务器。
如果我可以编写健康检查端点,我该如何继续。或者是否必须有一个 HTTP 服务器才能使用 Golang 来处理健康检查端点。
I want to write health check endpoints for 2 different services, but the problem is they have no HTTP server.
if I can write health check endpoints how can I proceed. or is it mandatory to have an HTTP server to work on health check endpoints with Golang.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
HTTP 服务器不是必需的。
您可以ping通您的业务服务器的IP地址。例如,我使用 ping 存储库:
It's not mandatory to have an HTTP server.
You can ping the IP address of your service server. For example I use ping repo:
是的,您可以使用类似的方法将 HTTP 运行状况检查处理程序添加到您的应用程序中。然后,在执行运行状况检查的服务中,只需确保它知道要针对哪个端口运行 HTTP 检查即可。
或者,如果您需要在单独的路径上公开您的健康检查路由,您可以执行类似的操作。
已更新
如果你想检查 goroutine 的健康状况,你可以这样做。
Yes, you can add an HTTP health check handler to your application with something like this. Then, in the service that's performing the health check, just make sure it knows which port to run the HTTP checks against.
Alternatively, if you need to expose your health check route at a separate path, you can do something like this.
Updated
If you want to check the health of a go-routine, you can do something like this.