Apache Web Server 如何监控
王玉松
2024-09-25 12:50:10
Apache 是老一辈 Web Server,LAMP 中的 A 就是 Apache,占据了很高的市场份额。Apache 的进程是 httpd,其服务稳定性至关重要,本文讲解如何使用 Categraf 监控 Apache 的性能指标,及时发现可能的故障,保障 Apache Web Server 的稳定性。
Apache 监控测试环境
- 操作系统 版本: Centos 8.2
- Categraf 版本: v0.3.79
安装 Apache
在基于 RHEL 的发行版中,Apache 软件包和服务被称为 httpd。想要安装 Apache,使用 root 或者其他有 sudo 权限的用户身份,运行下面的命令:
sudo yum install -y httpd
安装 httpd 可能遇到的问题
如若 yum 安装报如下错:
- 段错误
- cache错误
- Repository AppStream is listed more than once in the configuration
- Repository extras is listed more than once in the configuration
- Repository PowerTools is listed more than once in the configuration
- Repository centosplus is listed more than once in the configuration
请参考 此博客 进行排查修复。
配置 Apache stub status
编辑 Apache 的配置文件(通常位于 /etc/httpd/conf/httpd.conf
或 /etc/apache2/apache2.conf
)并确保包含以下内容:
<Location "/server-status">
SetHandler server-status
</Location>
<Location "/server-status">
:Location 指令用于匹配客户端请求的 URL 路径。在这个例子中,/server-status
是客户端请求的路径SetHandler server-status
:SetHandler 指令告诉 Apache 对该路径使用server-status
处理程序。server-status
是 Apache 提供的一个内置处理程序,负责输出服务器的状态信息。这些信息包括当前的请求处理情况、工作线程状态、系统性能等。
启动 Apache
# 设置 httpd 服务开机自启
sudo systemctl enable httpd
# 启动 httpd 服务
sudo systemctl start httpd
# 查看 httpd 服务状态
sudo systemctl status httpd
关于 Apache stub status 的详细信息,请查阅:Apache stub staus。
Categraf Apache 监控插件
Categraf Apache 监控插件的配置文件路径是:conf/input.apache/apache.toml
,配置样例如下:
[[instances]]
scrape_uri = "http://localhost/server-status/?auto"
host_override = ""
insecure = false
custom_headers = {}
log_level = "info"
完成配置之后,可以通过 Categraf test 命令来测试是否能够采集到 Apache 的性能指标:
./categraf --test --inputs apache
如果一切正常,可以看到类似如下的输出:
监控指标中包含了CPU 占用、Worker 数量、连接数等信息。之后通过 systemctl restart categraf
重启 Categraf 服务,即可开始监控 Apache 的性能指标,稍等片刻,理论上就可以在时序库中查到 Apache 的性能指标。
如此便完成了 Apache Web Server 的监控数据采集,希望对您有帮助。
关于作者
本文作者王玉松,文章可转载,转载请注明出处,尊重技术人员的成果。