使用zabbix 2.4 监控nginx

简介:

1、获取 Nginx 状态( HTTP Stub Status )

1
/usr/local/nginx/sbin/nginx  -V

2、配置 nginx.conf

1
2
3
4
5
6
7
8
vim  /usr/local/nginx/conf/nginx .conf
location ~  /nginx_status  {
       stub_status on;
       access_log off;
       allow 127.0.0.1;
       allow 192.168.1.14;
       deny all;
}

3、编写脚本获取上面的 key 值

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
vim  /script/nginx_status .sh
#!/bin/bash
case  $1  in
   active)
     curl -s http: //127 .0.0.1 /nginx_status  awk  '/Active/ {print $3}'  ;;
   accepts)
     curl -s http: //127 .0.0.1 /nginx_status  awk  'NR==3 {print $1}'  ;;
   handled)
     curl -s http: //127 .0.0.1 /nginx_status  awk  'NR==3 {print $2}'  ;;
   requests)
     curl -s http: //127 .0.0.1 /nginx_status  awk  'NR==3 {print $3}'  ;;
   reading)
     curl -s http: //127 .0.0.1 /nginx_status  awk  '/Reading/ {print $2}'  ;;
   writing)
     curl -s http: //127 .0.0.1 /nginx_status  awk  '/Writing/ {print $4}'  ;;
   waiting)
     curl -s http: //127 .0.0.1 /nginx_status  awk  '/Waiting/ {print $6}'  ;;
   *)
     echo  "Usage: $0 { active | accepts | handled | requests | reading | writing | waiting }"  ;;
esac
chmod  a+x  /script/nginx_status .sh

4、添加自定义 key 配置文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
vim  /usr/local/zabbix/etc/zabbix_agentd .conf.d /nginx_status .conf
# Nginx_status
UserParameter=nginx.active, /script/nginx_status .sh active
UserParameter=nginx.accepts, /script/nginx_status .sh accepts
UserParameter=nginx.handled, /script/nginx_status .sh handled
UserParameter=nginx.requests, /script/nginx_status .sh requests
UserParameter=nginx.reading, /script/nginx_status .sh reading
UserParameter=nginx.writing, /script/nginx_status .sh writing
UserParameter=nginx.waiting, /script/nginx_status .sh waiting
5、修改zabbix_agentd.conf
vim  /usr/local/zabbix/etc/zabbix_agentd .conf
LogFile= /tmp/zabbix_agentd .log
Server=192.168.1.14
ServerActive=192.168.1.14
Hostname=Zabbix server
Include= /usr/local/zabbix/etc/zabbix_agentd .conf.d/
EnableRemoteCommands=1
UnsafeUserParameters=1

6、Zabbix 服务端测试能否拿到 Key

1
/usr/local/zabbix/bin/zabbix_get  -s 192.168.1.12 -k nginx.active




Nginx 监控项解释

Active connections: 1

server accepts handled requests

 1 1 1

Reading: 0 Writing: 1 Waiting: 0

## Active connections: 对后端发起的活动连接数

## Server accepts handled requests: Nginx 总共处理了 1 个连接,成功创建了 1 次握手(没有失败次数),总共处理了 1 个请求

## Reading: Nginx 读取到客户端的 Header 信息数

## Writing: Nginx 返回给客户端的 Header 信息数

## Waiting: 开启 keep-alive 的情况下,这个值等于 active - ( reading + writing ), 意思是 Nginx 已经处理完成,正在等待下一次请求指令的驻留连接

## 在访问效率很高,请求很快被处理完毕的情况下,Waiting 数比较多是正常的。如果 reading + writing 数较多,则说明并发访问量很大,正在处理过程中


原文网址:http://blog.chinaunix.net/uid-30272825-id-5115194.html





     本文转自1321385590 51CTO博客,原文链接:http://blog.51cto.com/linux10000/1727963,如需转载请自行联系原作者



相关文章
|
4天前
|
监控 Java 应用服务中间件
tomcat相关概念与部署tomcat多实例-zabbix监控(docker部署)
通过上述步骤,您可以在Ubuntu系统上成功编译并安装OpenCV 4.8。这种方法不仅使您能够定制OpenCV的功能,还可以优化性能以满足特定需求。确保按照每一步进行操作,以避免常见的编译问题。
36 23
|
5天前
|
监控 Java 应用服务中间件
tomcat相关概念与部署tomcat多实例-zabbix监控(docker部署)
通过上述步骤,您可以在Ubuntu系统上成功编译并安装OpenCV 4.8。这种方法不仅使您能够定制OpenCV的功能,还可以优化性能以满足特定需求。确保按照每一步进行操作,以避免常见的编译问题。
37 22
|
8天前
|
监控 Java 应用服务中间件
tomcat相关概念与部署tomcat多实例-zabbix监控(docker部署)
通过上述步骤,您可以在Ubuntu系统上成功编译并安装OpenCV 4.8。这种方法不仅使您能够定制OpenCV的功能,还可以优化性能以满足特定需求。确保按照每一步进行操作,以避免常见的编译问题。
49 25
|
1月前
|
监控 安全 前端开发
使用 Zabbix 监控堆外应用
使用 Zabbix 监控堆外应用
55 9
|
5月前
|
监控 安全 Linux
在Linux中,zabbix如何监控脑裂?
在Linux中,zabbix如何监控脑裂?
|
1月前
|
监控 数据可视化 Java
zabbix全面的监控能力
zabbix全面的监控能力
92 7
|
2月前
|
监控 Java Shell
监控堆外第三方监控工具Zabbix
监控堆外第三方监控工具Zabbix
49 5
|
2月前
|
SQL 监控 数据库
OceanBase社区版可以通过Zabbix监控
OceanBase社区版可以通过Zabbix监控
152 7
|
3月前
|
SQL 监控 数据库
OceanBase社区版可以通过Zabbix监控
【10月更文挑战第5天】随着OceanBase社区版的广泛应用,企业纷纷采用这一高性能、高可用的分布式数据库系统。为了确保系统的稳定运行,使用成熟的Zabbix监控工具进行全面监控至关重要。本文通过具体示例介绍了如何配置Zabbix监控OceanBase,包括安装配置、创建监控模板和监控项、编写脚本、设置触发器及图形展示等步骤,帮助读者快速上手,及时发现并解决问题,确保业务始终处于最佳状态。
112 2
|
4月前
|
监控 关系型数据库 MySQL
zabbix agent集成percona监控MySQL的插件实战案例
这篇文章是关于如何使用Percona监控插件集成Zabbix agent来监控MySQL的实战案例。
105 2
zabbix agent集成percona监控MySQL的插件实战案例

推荐镜像

更多