首页主机资讯LNMP怎样监控状态

LNMP怎样监控状态

时间2025-12-02 09:10:03发布访客分类主机资讯浏览973
导读:LNMP状态监控实操指南 一 系统与服务快速巡检 系统资源与连接 资源概览:top/htop(CPU、内存、进程)、vmstat 1(进程/内存/IO/CPU)、iostat -x 1(磁盘IO)、free -h(内存)、df -h(磁...

LNMP状态监控实操指南

一 系统与服务快速巡检

  • 系统资源与连接
    • 资源概览:top/htop(CPU、内存、进程)、vmstat 1(进程/内存/IO/CPU)、iostat -x 1(磁盘IO)、free -h(内存)、df -h(磁盘空间)。
    • 连接与端口:ss -tulpennetstat -tulpen(监听端口与连接状态)。
  • 服务存活与端口监听
    • systemd 系统:sudo systemctl status nginx mysql php-fpm;必要时用 sudo systemctl restart < 服务> 恢复。
    • SysVinit/Upstart:sudo service nginx status 等。
    • 端口确认:ss -lntp | egrep ‘:(80|443|3306|9000)’(按实际 PHP-FPM 端口调整)。
  • 配置与日志
    • 配置语法:sudo nginx -t;优雅重载:sudo nginx -s reload
    • 关键日志:/var/log/nginx/error.log/var/log/mysql/error.log/var/log/php-fpm/error.log(路径随发行版/PHP版本可能不同)。

二 组件级关键指标与查看方法

组件 关键指标 快速查看方法
Nginx 连接数、请求数、处理状态 启用模块 ngx_http_stub_status_module,配置 location /status 后访问;配合 tail -f /var/log/nginx/access.log 观察吞吐与异常
MySQL 连接数、线程、慢查询 mysqladmin -u root -p statusSHOW STATUS LIKE ‘Threads_connected’; SHOW PROCESSLIST; ;慢查询分析用 pt-query-digest /var/log/mysql/slow.log
PHP-FPM 进程池状态、排队、慢请求 sudo systemctl status php-fpm;查看 /var/log/php-fpm/error.log;按需配置 pm.status_path 暴露状态页并用 Nginx 访问
Linux CPU、内存、IO、网络 top/htop、vmstat、iostat、free、df、ss 等系统工具
以上方法覆盖日常排障与容量判断的高频指标,适合作为值班巡检清单。

三 日志与慢查询分析

  • Nginx:实时查看 tail -f /var/log/nginx/access.log(观察 5xx/4xx、响应时间、UA/来源);错误集中检索 grep -i “error” /var/log/nginx/error.log
  • MySQL:错误日志 /var/log/mysql/error.log 定位启动/运行故障;慢查询日志配合 pt-query-digest 找出耗时SQL并优化索引/语句。
  • PHP-FPM:错误与告警集中在 /var/log/php-fpm/error.log,关注 WARNING/ERROR、慢请求与进程异常退出。

四 可视化与告警方案

  • Prometheus + Grafana
    • 采集:部署 node_exporter(主机)、mysqld_exporter(MySQL)、nginx-exporter 或 Nginx stub_statusphp-fpm-exporter 等。
    • 展示与告警:Grafana 导入 Node Exporter FullMySQL Overview 等面板;Prometheus 配置 Alertmanager 实现阈值/异常告警。
  • Zabbix
    • 架构:Server/Agent;在 模板 中预置 Nginx/MySQL/PHP-FPM 监控项与触发器,结合邮件/企业微信/钉钉 Webhook 通知。
  • 开箱即用的实时监控
    • Netdata:一键安装,提供 CPU/内存/磁盘/网络/数据库 等实时图表,适合临时接入与快速定位。
  • 商业与托管
    • New Relic / Datadog:应用与基础设施全链路可观测,支持 Nginx/PHP/MySQL 指标与分布式追踪。

五 自动化巡检与自恢复脚本

  • 场景:在无完整监控平台时,做“保底”存活检测与自动拉起。
  • 示例(每分钟检查一次,异常则重启并记录日志)
    • 保存为 /usr/local/bin/check_lnmp.sh,赋权 chmod +x,加入 crontab -e“* * * * * /usr/local/bin/check_lnmp.sh > > /var/log/check_lnmp.log 2> & 1”
    • 脚本要点:
      • systemctl is-active --quiet nginx & & systemctl is-active --quiet mysql & & systemctl is-active --quiet php-fpm 判定存活;
      • 任一失败即 systemctl restart < 服务> ,并写入时间戳与事件到日志;
      • 建议增加“连续失败次数”与“告警抑制/升级”逻辑,避免抖动重启。
  • 风险提示:自动重启可能掩盖根因,务必配合日志与告警,生产环境优先使用带持久化与收敛能力的监控系统。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: LNMP怎样监控状态
本文地址: https://pptw.com/jishu/760953.html
Debian下C++项目如何部署 Debian中C++库如何管理

游客 回复需填写必要信息