我已经在我的网络服务器上设置了 Cacti,它为我提供了平均负载和内存使用情况等图表,但我还想监控我的网站使用了多少带宽。
我一直在阅读一些 Cacti 文档,并尝试使用 Google 进行搜索,但似乎找不到任何可以向我解释如何执行此操作的内容。
更新:
难道我不应该在 Apache 上进行带宽测量,而是在较低级别的设备上?如果这会有所不同,我目前正在 EC2 实例上运行我的 LAMP 堆栈。
更新 2:
自从问了这个问题后,我实际上已经从 Cacti 转到了 Munin。并不是说一个比另一个更好,而仅仅是因为穆宁更适合我的需求,因为它开箱即用,它向我展示了我需要知道的一切。不过,我将来可能仍会使用 Cacti。
假设您在同一台机器上运行 Cacti,而不是通过 SNMP 查询,您必须:
1) 将响应大小日志记录添加到 Apache
2)编写一个脚本来解析你的 Apache 日志,总结过去 5 分钟(Cacti 的轮询间隔)的所有请求/响应大小,并以 Cacti 理解的格式打印结果:
Data Input Method
3)在 Cacti 的 web 界面中新建一个:sent/received/other_field
您可以在上面提出的所有字段4)创建一个
Data Source
使用新Apache Traffic
输入法的5)创建一个图表来绘制您的新数据源
您必须查看 Cacti 的文档以获取有关第 3 步和第 4 步的更多详细信息。如果其他人想加入,我将把它作为社区 wiki 保留。
我对 Cacti 不熟悉,但 Apache 应该能够记录“响应大小”,它应该以字节为单位为您提供返回文档的大小,这应该为您提供非常准确的带宽使用统计信息。
如果您在混合网络上(例如,为多个 Web 服务器共享的一个连接,或者可能是 VPN 或其他东西),则查看较低级别的设备,如 NIC 或路由器,通常更难以监控且成本更高,因为您必须过滤我们唯一的发往/来自 Web 服务器的流量。