测量Apache带宽的仙人掌

我已经在我的Web服务器上设置了Cacti,它给了我负载均衡和内存使用情况等图表,但是我也想监视我的网站使用的带宽。

我一直在阅读一些Cacti文档,并试图用Google进行search,但似乎无法find任何解释我如何做到这一点的东西。

更新:

难道我不应该在考虑Apache的带宽测量,而是在较低级别的设备? 我目前正在EC2实例上运行LAMP堆栈,如果这有所作为。

更新2:

既然问了这个问题,我已经从仙人掌切换到了慕宁。 并不是说一个人比另一个人好,而是因为Munin从盒子里出来的更适合我的需要,它向我展示了我需要知道的一切。 不过,我仍然可以在将来使用仙人掌。

假设你在同一台机器上运行Cacti,而不是通过SNMP查询,你将不得不:

1)将响应大小logging添加到Apache

2)编写parsingApache日志的脚本,总结过去5分钟(Cacti的轮询间隔)的所有请求/响应大小,并以Cacti理解的格式打印结果:

sent:321 received:123 other_field:other_value ... 

3)在Cacti的Web界面中创build一个新的Data Input Method

  • 名称= Apachestream量
  • type = script / command
  • 输出字段=列出您可能想到的所有sent/received/other_field字段字段

4)创build一个使用新的Apache Trafficinput法的Data Source

5)创build一个图表,你的新数据源

您将不得不检查Cacti的文档,以获取步骤3和步骤4的更多详细信息。如果其他人想要参加,我将把它作为社区wiki离开。

我不熟悉Cacti,但Apache应该能够logging“响应大小”,它应该以字节为单位给出返回文档的大小,这应该给你相当准确的带宽使用统计。

如果你在一个混合的networking上(比如一个连接共享多个Web服务器,或者一个VPN或者其他的东西),像NIC或路由器这样的底层设备通常要困难得多,你必须过滤我们唯一的stream量到/从networking服务器。