宝哥软件园

Apache实时监控虚拟主机进程

编辑:宝哥软件园 来源:互联网 时间:2020-05-06

Apache有没有办法像top一样实时监控虚拟主机的进程呢?Apache的mod_status模块正好能解决这个问题,我们可以开启mod_status模块以html页面的形式来显示出各虚拟主机的进程状态。
这些html页面包含:

正在伺服请求的工作者(线程或进程)数量 空闲的工作者数量 每个工作者的状态:已完成的请求数、已发送的字节数。(*) 总访问数和已发送的字节总数(*) 服务器自启动/重启以来经过的时间,服务器已经运行的时间。 平均每秒请求数,平均每秒发送的字节数,平均每个请求发送的字节数。(*) 每个工作者的当前CPU使用百分率,以及Apache的当前总计CPU使用百分率。(*) 当前正在被处理的主机和请求(*)

下面我们来介绍如何安装mod_status和使用它。
1、检查是否加载mod_status模块
执行如下命令会列出当前加载的所有模块。

httpd -M

如果没有找到mod_status模块,请参考这篇文章加载http://www.centos.bz/2011/09/linux-apache-load-mod_status-module/
2、开启ExtendedStatus指令和启用状态报告
编译配置文件httpd.conf,加入如下代码:

ExtendedStatus On
<Location /server-status>
SetHandler server-status
 
Order Deny,Allow
Deny from all
Allow from .foo.com
</Location>

.foo.com是允许指定的域名访问状态页面,也可以允许IP。
保存退出,重启apache。
3、查看状态报告
通过http://your.server.name/server-status查看状态页面,也可以通过http://your.server.name/server-status?refresh=N隔N秒刷新页面,这样就可以达到实时监控了。

更多资讯
游戏推荐
更多+