zabbix custom monitoring nginx status implementation process

zabbix custom monitoring nginx status implementation process

Zabbix custom monitoring nginx status

zabbix_server 192.168.200.145
zabbix_agentd, nginx 192.168.200.146

1. Open the status interface

Enable status:

[root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf
location /status {
     stub_status on;
     allow 192.168.200.146;
     allow 192.168.200.145
     deny all;
}
[root@localhost ~]# nginx -s reload 

insert image description here

Status page information details:

Status Code Meaning
Active connections 2 All currently open connections
accepts How many connections were processed in total
handled How many handshakes were successfully created
requests How many requests were processed in total?
Reading The number of header information read by nginx from the client, indicating the number of connections in the state of receiving requests
Writing The number of header information returned by nginx to the client, indicating that the request has been received and the number of connections that are in the process of processing the request or sending a response
Waiting When keep-alive is enabled, this value is equal to active - (reading + writing), which means that Nginx has processed the resident connection that is waiting for the next request instruction.

2. Write monitoring scripts

[root@localhost scripts]# vim check_status.sh
#!/bin/bash
ip=$(ip a | grep 'inet ' | grep -v '127.0.0.1' | awk -F'[ /]+' '{print $3}')
case $1 in
    "Reading")
    curl -s http://$ip | awk 'NR==4 {print $2}';;
    "Writing")
    curl -s http://$ip | awk 'NR==4 {print $4}';;
    "Waiting")
    curl -s http://$ip | awk 'NR==4 {print $6}'
esac

//Add configuration file [root@localhost scripts]# vim /usr/local/etc/zabbix_agentd.conf
UnsafeUserParameters=1
UserParameter=check_status[*],/bin/bash /scripts/check_Reading.sh $1
[root@localhost scripts]# pkill zabbix_agentd 
[root@localhost scripts]# zabbix_agentd 

//Test[root@zabbix ~]# zabbix_get -s 192.168.200.146 -k check_status Waiting
1

3. Configure monitoring items

insert image description here

insert image description here

insert image description here

4. Configure triggers

insert image description here

insert image description here

insert image description here

5. Testing

[root@localhost scripts]# ab -n 1500000 http://192.168.200.146/status

insert image description here

The above is the detailed content of the implementation process of Zabbix custom monitoring nginx status. For more information about Zabbix custom monitoring nginx, please pay attention to other related articles on 123WORDPRESS.COM!

You may also be interested in:
  • The whole process of Zabbix custom script monitoring nginx and WeChat alarm
  • Detailed tutorial on how to monitor Nginx/Tomcat/MySQL using Zabbix
  • Implementation of zabbix configuration nginx monitoring

<<:  Common styles of CSS animation effects animation

>>:  Why does using limit in MySQL affect performance?

Recommend

Detailed explanation of Mysql logical architecture

1. Overall architecture diagram Compared to other...

How to set npm to load packages from multiple package sources at the same time

Table of contents 1. Build local storage 2. Creat...

Two ways to configure Vue global methods

Table of contents 1. Introduction 2. The first me...

How to deploy MySQL master and slave in Docker

Download image Selecting a MySQL Image docker sea...

Summarize the problems encountered in using Vue Element UI

Table of contents 1. DateTimePicker date selectio...

Super simple implementation of Docker to build a personal blog system

Install Docker Update the yum package to the late...

HTML uses canvas to implement bullet screen function

Introduction Recently, I needed to make a barrage...

Make your website run fast

Does performance really matter? Performance is im...

How to solve the synchronization delay caused by MySQL DDL

Table of contents Preface Solution Tool Introduct...

Detailed explanation of JavaScript progress management

Table of contents Preface question principle test...

About the "occupational disease" of designers

I always feel that designers are the most sensiti...

Summary of MySQL InnoDB architecture

Table of contents introduction 1. Overall archite...

JavaScript functional programming basics

Table of contents 1. Introduction 2. What is func...

Detailed explanation of CSS multiple three-column adaptive layout implementation

Preface In order to follow the conventional WEB l...