![Cacti 测量 Apache 带宽](https://linux22.com/image/506424/Cacti%20%E6%B5%8B%E9%87%8F%20Apache%20%E5%B8%A6%E5%AE%BD.png)
我已经在我的网络服务器上设置了 Cacti,它为我提供了平均负载和内存使用情况等图表,但我还想监控我的网站使用了多少带宽。
我一直在阅读一些 Cacti 文档,并尝试使用 Google 搜索,但似乎找不到任何可以向我解释如何做到这一点的内容。
更新:
是不是我不应该查看 Apache 进行带宽测量,而应该查看较低级别的设备?如果这有区别的话,我目前正在 EC2 实例上运行我的 LAMP 堆栈。
更新2:
自从问了这个问题之后,我实际上已经从 Cacti 换到了 Munin。并不是说一个比另一个好,而是因为 Munin 更适合我的需求,因为它开箱即用,向我展示了我需要知道的一切。不过,我将来可能仍会使用 Cacti。
答案1
假设您在同一台机器上运行 Cacti,而不是通过 SNMP 进行查询,那么您必须:
1)向 Apache 添加响应大小日志记录
2) 编写一个脚本来解析您的 Apache 日志,总结过去 5 分钟(Cacti 的轮询间隔)内的所有请求/响应大小,并以 Cacti 理解的格式打印结果:
sent:321 received:123 other_field:other_value ...
3)Data Input Method
在Cacti的Web界面上创建一个新的:
- 名称 = Apache 流量
- 类型 = 脚本/命令
- 输出字段 = 列出
sent/received/other_field
上面你能想到的所有字段
4)创建Data Source
使用新Apache Traffic
输入法的
5)创建一个图表来绘制你的新数据源
您必须查看 Cacti 的文档以获取有关步骤 3 和 4 的更多详细信息。如果其他人想加入,我会将其保留为社区维基。
答案2
我不熟悉 Cacti,但 Apache 应该能够记录“响应大小”,它应该以字节为单位提供返回文档的大小,这应该会为您提供相当准确的带宽使用情况统计数据。
查看较低级别的设备,例如 NIC 或路由器,如果您在混合网络上(例如,为多个 Web 服务器共享的一个连接,或者可能是 VPN 等),监控通常会更加困难且成本更高,因为您必须过滤仅发往/来自 Web 服务器的流量。