查找前 50 个传入 Apache 连接

查找前 50 个传入 Apache 连接

我们的服务器负载很重,我们想看看一天中 Apache 连接数最多的前 50 位是谁。问题是,这台服务器在 Apache 中加载了多个 IP 地址,每个 IP 上托管了多个主机名(附加域),并且每个域都有日志。

我可以临时添加到 Apache 配置中的技巧是什么,以便无论我们在给定服务器上托管的 IP 或主机是什么,我们都可以跟踪给定一天的前 50 个传入 Apache 连接?

我们使用的 Apache 2 支持 FastCGI。

(我算是替代了另一个系统操作员。我的工作主要是 PHP 程序员。我现在正在即兴发挥。)

编辑:似乎有很多正确答案。因此,我将其切换到社区 wiki。

答案1

Apache 的服务器状态是一个不错的选择。你可以查看有多少个连接处于打开状态,使用的带宽,以及一堆其他的统计数据,下面是一个演示

apache-top 也是一个值得检查的好主意。

答案2

netstat -n|grep :80|cut -c 45-|cut -f 1 -d ':'|sort|uniq -c|sort -nr|head -n 50

可能需要根据您的 netstat 版本调整列截断

答案3

如果你想要更多视觉效果,访客日志分析器具有“实时模式”,它会跟踪访问日志并在 X 时间过去后更新统计数据。

而且已经提到的 Apachetop 也非常好。

相关内容