Apache监控繁忙与闲置的工作人员

对于Apache,我想监视

  1. 繁忙的工人
  2. 空闲工人
  3. 排队的请求

全天监测,每分钟采样一次,graphics化。

如果这样的工具不是免费的,那么任何可以以表格格式转储这些数据的脚本,我可以以CSV格式导入这些数据就足够了。

有没有什么工具可以做到这一点?

对于忙碌和空闲的工作人员,可以从状态页面parsing它,如下所示:

busy_workers=`lynx -dump http://domain.com/server-status?auto | awk '/BusyWorkers/ { print $2 }'` idle_workers=`lynx -dump http://domain.com/server-status?auto | awk '/IdleWorkers/ { print $2 }'` 

对于等待请求,您可以计算并发连接的数量并减去MaxClients指令:

 concurrent_connections=`netstat -natp | grep httpd | grep ESTABLISHED | grep -v grep | wc -l` 

从这个结果,你可以绘制任何你想要的监测工具的graphics:gmetric(Ganglia),PNP4Nagios,…

我们使用Apache统计脚本的cacti ,基本上它分析服务器状态页面,并生成仙人掌rrd图。

仙人掌前端是在PHP和存储数据在MySQL中。 还需要snmp( 安装 )。