以下是CentOS下Nginx监控与报警系统的常见方案,涵盖工具配置与实现要点:
Nginx内置模块
stub_status
模块,通过http://服务器IP:端口/nginx_status
查看实时状态(需在配置文件中添加location /nginx_status
并设置allow
权限)。tail -f /var/log/nginx/access.log
实时查看访问日志,或使用logrotate
进行日志轮转管理。命令行工具
ps aux | grep nginx
:检查Nginx进程状态。nginx -t
:测试配置文件语法是否正确。systemctl status nginx
:查看服务运行状态。nginx/nginx-prometheus-exporter
)将Nginx指标(如请求量、响应时间、错误率)导出至Prometheus。crontab
定时执行脚本,异常时发送邮件或重启服务。location /nginx_status {
stub_status on;
allow 127.0.0.1;
deny all;
}
- alert: HighErrorRate
expr: rate(nginx_http_requests_total{status=~"5.."}[2m]) / rate(nginx_http_requests_total[2m]) > 0.05
for: 1m
annotations:
summary: "Nginx高错误率"
description: "错误率超过5%,请立即处理"
以上方案可根据实际需求组合使用,重点关注请求量、响应时间、错误率等核心指标,确保Nginx服务稳定运行。