【运维知识进阶篇】zabbix5.0稳定版详解3(监控Nginx+PHP服务状态信息)(一)

简介: 【运维知识进阶篇】zabbix5.0稳定版详解3(监控Nginx+PHP服务状态信息)

这篇文章继续给大家介绍zabbix监控,监控Nginx、PHP等服务,其实非常简单,难点在于如何去取这个值,包括监控业务,难点在于思路是否清晰,思维是否活跃,如何去进行判断是否有这个业务,并且业务正常运行。

监控Nginx服务状态信息

通过Nginx监控模块,监控Nginx的7种状态

1. Nginx 的状态模块展示了七种不同的状态(四种计数器和三种状态)。以下是这七种状态的含义:
2. 1. active:当前 Nginx 正在处理的连接数,包括等待请求处理或正在响应请求的连接数。
3. 2. accepts:Nginx 启动后已经接受的连接总数。
4. 3. handled:Nginx 工作进程已成功处理的连接总数。与 accepts 计数器不同,此计数器可能会多个小于 accepts 数量,在某些情况下,客户端可能已经断开了连接而无法正常处理。
5. 4. requests:已经接收到、处理并响应的请求数量,该值通常应与 handled 值相等。
6. 5. reading:当前正在读取客户端请求头部字段的连接数。
7. 6. writing:当前正在向客户端发送响应数据的连接数。
8. 7. waiting:空闲 keep-alive 连接,既没有读也没有写。可以处理下一个请求的连接。
9. 通过理解这些状态可以帮助我们了解 Nginx 正在处理哪些连接,并且在调试和优化性能时非常有用。 当 active 连接数随着来自客户端的请求增加而增加时,可能需要考虑优化配置以确保足够的性能水平和稳定性。

1、开启Nginx状态模块

1. [root@Web01 ~]# cat /etc/nginx/conf.d/status.conf
2. server {
3.  listen 88;
4. location /nginx_status {
5.          stub_status;
6.  }
7. }
8. [root@Web01 ~]# systemctl restart nginx

2、配置监控项

1. [root@Web01 ~]# curl -s 127.0.0.1:88/nginx_status
2. Active connections: 1
3. server accepts handled requests
4. 4 4 3
5. Reading: 0 Writing: 1 Waiting: 0

用awk以此取值,并设置为key

1. [root@Web01 ~]# cat /etc/zabbix/zabbix_agentd.d/nginx.conf
2. UserParameter=nginx.connections,curl -s 127.0.0.1:88/nginx_status|awk 'NR==1{print $NF}'
3. UserParameter=nginx.accepts,curl -s 127.0.0.1:88/nginx_status|awk 'NR==3{print $1}'
4. UserParameter=nginx.handled,curl -s 127.0.0.1:88/nginx_status|awk 'NR==3{print $2}'
5. UserParameter=nginx.requests,curl -s 127.0.0.1:88/nginx_status|awk 'NR==3{print $3}'
6. UserParameter=nginx.Reading,curl -s 127.0.0.1:88/nginx_status|awk 'NR==4{print $2}'
7. UserParameter=nginx.Writing,curl -s 127.0.0.1:88/nginx_status|awk 'NR==4{print $4}'
8. UserParameter=nginx.Waiting,curl -s 127.0.0.1:88/nginx_status|awk 'NR==4{print $6}'
9. [root@Web01 ~]# systemctl restart zabbix-agent.service

测试取值

1. [root@Zabbix ~]# zabbix_get -s 172.16.1.7 -k nginx.connections
2. 1

3、创建模板

基于模板创建监控项,也可以先添加监控项在复制到模板

其他六项也同理,不再截图

4、用默认键值添加Nginx-status端口监控项,并配置触发器

配置触发器

5、基于模板创建图形

5、模板创建完毕后关联被监控的主机

Web02同理


目录
打赏
0
0
0
0
36
分享
相关文章
今日小结通过aliyun的本地容器镜像部署我的nginx和php环境
简介: 本教程介绍如何基于 Dragonwell 的 Ubuntu 镜像创建一个运行 Nginx 的 Docker 容器。首先从阿里云容器镜像服务拉取基础镜像,然后编写 Dockerfile 确保 Nginx 作为主进程运行,并暴露 80 端口。最后,在包含 Dockerfile 的目录下构建自定义镜像并启动容器,确保 Nginx 在前台运行,避免容器启动后立即退出。通过 `docker build` 和 `docker run` 命令完成整个流程。
90 24
今日小结通过aliyun的本地容器镜像部署我的nginx和php环境
智能运维实战:Prometheus与Grafana的监控与告警体系
【10月更文挑战第26天】Prometheus与Grafana是智能运维中的强大组合,前者是开源的系统监控和警报工具,后者是数据可视化平台。Prometheus具备时间序列数据库、多维数据模型、PromQL查询语言等特性,而Grafana支持多数据源、丰富的可视化选项和告警功能。两者结合可实现实时监控、灵活告警和高度定制化的仪表板,广泛应用于服务器、应用和数据库的监控。
456 3
当你的nginx服务器和php服务器不在一起的时候,这个nginx 的root目录问题
两个服务器的网站代码目录需要对齐,docker容器里面也是一样
HTTPS 证书自动化运维:https证书管理系统- 自动化监控
本文介绍如何设置和查看域名或证书监控。步骤1:根据证书状态选择新增域名或证书监控,线上部署推荐域名监控,未部署选择证书监控。步骤2:查询监控记录详情。步骤3:在详情页查看每日定时检测结果或手动测试。
HTTPS 证书自动化运维:https证书管理系统- 自动化监控
Prometheus+Grafana+NodeExporter:构建出色的Linux监控解决方案,让你的运维更轻松
本文介绍如何使用 Prometheus + Grafana + Node Exporter 搭建 Linux 主机监控系统。Prometheus 负责收集和存储指标数据,Grafana 用于可视化展示,Node Exporter 则采集主机的性能数据。通过 Docker 容器化部署,简化安装配置过程。完成安装后,配置 Prometheus 抓取节点数据,并在 Grafana 中添加数据源及导入仪表盘模板,实现对 Linux 主机的全面监控。整个过程简单易行,帮助运维人员轻松掌握系统状态。
307 3
智能运维实战:Prometheus与Grafana的监控与告警体系
【10月更文挑战第27天】在智能运维中,Prometheus和Grafana的组合已成为监控和告警体系的事实标准。Prometheus负责数据收集和存储,支持灵活的查询语言PromQL;Grafana提供数据的可视化展示和告警功能。本文介绍如何配置Prometheus监控目标、Grafana数据源及告警规则,帮助运维团队实时监控系统状态,确保稳定性和可靠性。
430 0
Grafana+prometheus+php 自动创建监控图
版权声明:作者:汤青松 https://blog.csdn.net/u013431141/article/details/81488180 背景 在grafana+ prometh...
1935 0
如何排查和解决PHP连接数据库MYSQL失败写锁的问题
通过本文的介绍,您可以系统地了解如何排查和解决PHP连接MySQL数据库失败及写锁问题。通过检查配置、确保服务启动、调整防火墙设置和用户权限,以及识别和解决长时间运行的事务和死锁问题,可以有效地保障应用的稳定运行。
54 25
PHP与MySQL动态网站开发实战指南####
【10月更文挑战第21天】 本文将深入浅出地探讨如何使用PHP与MySQL构建一个动态网站,从环境搭建到项目部署,全程实战演示。无论你是编程新手还是希望巩固Web开发技能的老手,都能在这篇文章中找到实用的技巧和启发。我们将一起探索如何通过PHP处理用户请求,利用MySQL存储数据,并最终呈现动态内容给用户,打造属于自己的在线平台。 ####
121 0
PHP与MySQL动态网站开发:从基础到实践####
本文将深入探讨PHP与MySQL的结合使用,展示如何构建一个动态网站。通过一系列实例和代码片段,我们将逐步了解数据库连接、数据操作、用户输入处理及安全防护等关键技术点。无论您是初学者还是有经验的开发者,都能从中获益匪浅。 ####

推荐镜像

更多
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等