计算打开的连接数

时间:2015-03-17 20:28:57

标签: linux networking ubuntu-12.04 tcpdump netstat

我已经通过结构自动部署了我的应用程序,并且需要添加一个新步骤,我需要在负载均衡器中将应用程序从轮换中取出,然后观察来自平衡器的入站连接,直到它们变为0。是的,我不知道如何获得入站连接的数量。

我可以使用tcpdump来观看我的端口POST。然而,这在织物中很难使用。我想要的是只运行一个带有计时器的循环,该循环不断获得有效入站连接的数量并且退出为0.有人做过这样的事吗?或者也许有人会知道我怎样才能从shell中实现这一点,我可以把它放在面料中?

1 个答案:

答案 0 :(得分:1)

netstat是获取此信息的最简单方法之一,但正如您所指出的,只需使用grep来解析netstat的输出就会产生次优结果,因为它将匹配传入和传出连接(至少没有足够复杂的搜索表达式,或者使用cut等进行预处理)。我会建议这条路线,而不是:

netstat -ap | awk '$1 == "tcp" && $4 ~ /:(80|443)$/' | wc -l

这将计算基于TCP的连接,并且本地端连接到端口80或443,这将与传入连接相对应。将$4替换为$5,以便捕获传出连接。