弹性心跳响应检查TCP错误
我configuration了一个简单的心跳6.1监视器:
heartbeat.monitors: - type: http schedule: '@every 10s' urls: - 'http://service/status' mode: all check: response: status: 200
哪个工作。 监视器configuration还支持通过设置密钥check.response.body
检查响应的内容
... mode: all check: response: status: 200 body: UP
服务返回UP
(使用curl检查),但由于以下错误,心跳检测到服务正在closures:
读取tcp xyza:port-> bcde:80:使用封闭的networking连接
服务和心跳都作为docker容器运行,并共享一个共同的networking(显然,否则第一个configuration将无法正常工作)。
什么可能是错误的原因? 这是服务问题(即过早closures连接)还是心跳问题? 我有另一个服务正在运行(一个简单的node.js快速应用程序),它没有performance出这种行为(以便指出一个服务问题)。 如何解决问题?
编辑
在虚拟dockernetworking上运行tcpdump / wireshark显示该服务正确响应请求,每隔10秒(在心跳configuration中configuration)。 所以显然所有的请求都是成功的。 为什么弹性心跳仍然抱怨closures连接?