linux监控nginx占用,使用zabbix 2.4 监控nginx

1、获取 Nginx 状态( HTTP Stub Status )/usr/local/nginx/sbin/nginx -V

2、配置 nginx.confvim /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 值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 配置文件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/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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/336761.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何使用java代码生成_使用Java成功生成代码的7个技巧

如何使用java代码生成作为介绍,最近我有点安静,部分原因是我一直在忙于Chronicle-FIX的工作 。 这是Chronicle-Enterprise套件中的一个新的超低延迟库,我们证明了该库可以在低个位数微秒内解析和存储消息。 当然,它利用了我们的开…

多核 linux 绑定,Linux 操作系统下CPU多核心的绑定

现在多CPU的趋势越来越大了. 有时候为了更好地操作机器, 需要将某个进程绑定到具体的CPU上去. 下面给出了一个进程绑定到具体的CPU上去的一个例子.cpu.c[CODE]#include#include#include#include#include#define __USE_GNU#include#include#includeint main(int argc, char* arg…

java键盘事件键值表_Java的20年:重大事件的时间表

java键盘事件键值表翻译自: https://www.javacodegeeks.com/2015/12/2-decades-java-timeline-notable-events.htmljava键盘事件键值表

c语言printf到指定文件,急求如何将下列C语言程序数据存储到文件中?

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼求如何改动才能将下列程序的存储输入或输出数据(或两者一起)到指定的文件(或运行时直接创立一个文件)如Arrangement中。#include int n0;int rest[7][7]; //全局声明,以供全局调用int main(){void perm(int list[],int ,int );int …

spring一站式开发_Spring开发人员知道的一件事

spring一站式开发在最近的(核心)Spring框架培训课程中,有人问我:“(Java)Spring开发人员应该知道的一件事是什么?” 这个问题使我措手不及。 是的,(核心)Spri…

c语言十六进制转换加H,c语言十六进制和十进制间的转换.docx

集团文件版本号:(M928-T898-M248-WU2669-I2896-DQ586-M1988)集团文件版本号:(M928-T898-M248-WU2669-I2896-DQ586-M1988)c语言十六进制和十进制间的转换1.将十六进制转换为十进制.#include#includeint main(void){int convert(int,char *);int i,j;char …

jax-ws和jax-rs_带有JAX-WS和Spring的Web服务应用程序

jax-ws和jax-rs1.简介 这是一个漫长的等待,但是我最终要发布有关使用Spring创建第一个基于SOAP的Web服务应用程序的教程。 JAX-WS (用于XML Web服务的Java API)是用于以XML格式创建Web服务的一组API,我们最常将其称为基于SOAP的We…

c command语言学例子,语言学第四章

《语言学第四章》由会员分享,可在线阅读,更多相关《语言学第四章(3页珍藏版)》请在人人文库网上搜索。1、Chapter 4:SyntaxI. Decide whether each of the following statements is True or False:1. Syntax is a subfield of linguistics that studies …

eclipse开发jsf_在Eclipse上创建JSF / CDI Maven项目

eclipse开发jsf当我在研究JSF和CDI示例时,我认为提到创建JSF和CDI Maven项目所需的步骤会很有用。 您可以找到以下步骤。 工具类 默认情况下,M2E插件随附的Eclipse Luna。 因此,无需自己安装插件。 WildFlye8.x。 从主菜单中选择文件->…

apache camel_Apache Camel的性能调整思路

apache camel时不时地,我会以Camel速度较慢的观点来询问有关优化Camel应用程序的问题。 骆驼只是连接不同系统的粘合剂,路由引擎全部在内存中,并且不需要任何持久状态。 因此,在99%的情况下,性能问题是由于…

为什么写C语言弹不出窗口,居然还有SB说C写不出窗口的..

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼decebx.endwassumeesi:nothinginvokeGetStockObject,WHITE_BRUSHinvokeSelectObject,hDcBack,eaxinvokeDeleteObject,eaxinvokeDeleteObject,hBmpBackpopadret_CreateBackGroundendp;>>>>>>>>>>>…

java写入单个字符_将2个字符写入单个Java char

java写入单个字符这是创建超低延迟的Chronicle FIX-Engine时使用的另一个好技巧。 在从字节流中读取数据时,如果可能的话,将数据存储在char而不是将其读取到String效率更高。 (至少您要避免创建String对象,尽管可以通过使用缓存或…

xmanager linux,教您用xmanager启动Linux上的图形界面程序-Go语言中文社区

对于习惯实体化的开发人员来说,还是界面化用着比较习惯,所以这就涉及到掌握使用Xmanager启动Linux上的图形界面程序,为了方便大家的使用,本集小编就详细的为大家讲解具体操作。具体步骤如下:1、首先下载Xmanager并安装…

android开发 文件分享到应用,Android 实现文件分享功能(共享多个文件)

效果如图:神一样的代码:针对image代码如下:IntentsharenewIntent(Intent.ACTION_SEND);share.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(file));//此处一定要用Uri.fromFile(file),其中file为File类型,否则附件无法发送成功。s…

python kotlin_用Java和Python模仿Kotlin构建器

python kotlin介绍 Kotlin可能现在是我最喜欢的语言,可能它提供的最酷的功能之一是基于几个功能构建的类型安全的生成器(稍后解释)。 我发现自己真的很想在其他两种主要语言(Java和Python)中使用此功能。 本文解释了我…

android 4.4.2截屏方法,android4.4.2 使用 uiautoviewer 截屏报错

1、正常启动后,使用 uiautomatorviewer 没有问题2、由于要使用 uiautomator,每次启动 uiautomator 服务后再使用 uiautomatorviewer 就会图片错误,启动 uiautomator 服务的步骤如下:1、Download jar files from uiautomator jsonr…

java fastutil_具有FastUtil的精简Java集合

java fastutil针对我最近在GNU Trove库上发表的《 发现Java原始资源集合的处理 》一书 , TheAlchemist指出了fastutil优于trove的一些优点:“我更喜欢fastutil( http://fastutil.di.unimi.it/ ),因为它仍在积极开发中&…

android 圆角按钮渐变,Android实现圆形渐变加载进度条

最近设计要求要一个圆形进度条渐变的需求:1.画圆形进度条2.解决渐变最终实现效果代码package com.view;import android.content.Context;import android.content.res.TypedArray;import android.graphics.Canvas;import android.graphics.Color;import android.grap…

javaone_JavaOne 2015:为JDK 9做准备– blog @ CodeFX

javaoneJavaOne 2015看到了Project Jigsaw团队关于Java 9中的模块化的一系列讨论 。它们都是非常有趣的,并且充满了宝贵的信息,我敦促每个Java开发人员都注意它们。 除此之外,我想给社区一种搜索和引用它们的方法,因此我在这里总…

android wifi 通讯录,通过wifi和gmail从symbian手机中将名片夹(通讯录)导入到android手机 | 古意人...

使用背景与条件:最近入手了android手机defy,机器到手后兴奋过度,马上将原symbian手机诺基亚E50的sim卡和内存卡都转移到了defy上,捣鼓了一段时间的defy,突然想起要同步原诺基亚手机的名片夹到defy中(android中貌似称为…