Nginx Monitoring

Overview

Nginx (pronounced “Engine X”) is a high performance open-source HTTP server and reverse proxy, and an IMAP/POP3 proxy server. It was originally developed to tackle the 10K problem, which means serving 10,000 concurrent connections. Nginx can be used as a standalone web server, or serve in front of other web servers as a reverse proxy i.e. is a device or service placed between a client and a server in a network infrastructure.

When serving as a reverse proxy, Nginx is acting as a front web server, which passes the incoming requests on to web servers on the back, on different ports etc. Nginx can then handle aspects like SSL / HTTPS, GZip, cache headers, load balancing and a lot of other stuff.

NGINX Plus supports the same load balancing methods as the open source NGINX product (Round-Robin, Least Connections, Generic Hash, and IP Hash), and adds the Least Time method. All load-balancing methods are extended to operate more efficiently on multi-core servers; the NGINX Plus worker processes share information about load balancing state so that traffic distribution and weights can be more accurately applied.

NGINX Resource Stats

Graph NameGraph Description
NGNIX Active ConnectionsNumber of active connections in NGNIX.
NGNIX Requests/SecNumber of requests per second.
NGNIX Accepted Connections/SecNumber of client connections accepted by NGINX per second.
NGINX Handled Connections/SecNumber of successful client connections handled by NGINX per second.
NGINX Requests/ConnectionNumber of requests per connection handled by NGINX.
NGINX Idle ConnectionsNumber of keep-alive connections waiting for request.
NGINX ReadingNumber of request header read by NGINX (When a request is received, the connection moves out of the waiting state, and the request itself is counted as Reading).
NGINX WritingNumber of request is in following states reading request body, processes request or writing response to a client.
NGINX WaitingNumber of active connections, which do not have active request.

NGINX Plus Resource Stats

Graph NameGraph Description
NGNIX Active ConnectionsNumber of active connections in NGNIX.
NGNIX Requests/SecNumber of requests per second.
NGNIX Accepted Connections/SecNumber of client connections accepted by NGINX per second.
NGINX Dropped Connections/SecNumber of dropped connections by NGINX per second.
NGINX Requests/ConnectionNumber of requests per connection handled by NGINX.
NGINX Idle ConnectionsNumber of keep-alive connections waiting for request.

NGINX Plus Server Zone Stats

Graph NameGraph Description
NGINX Current RequestNumber of client requests that are currently being processed.
NGINX Requests/SecNumber of client requests received from clients per second.
NGINX Responses/SecNumber of responses sent to clients per second.
NGINX 1xx Responses/SecNumber of responses sent to client with 1xx status code per second.
NGINX 2xx Responses/SecNumber of responses sent to client with 2xx status code per second.
NGINX 3xx Responses/SecNumber of responses sent to client with 3xx status code per second.
NGINX 4xx Responses/SecNumber of responses sent to client with 4xx status code per second.
NGINX 5xx Responses/SecNumber of responses sent to client with 5xx status code per second.
NGINX Discarded Requests/SecNumber of requests completed without sending a response per second.
NGINX Received Throughput (KBps)Received throughput in KiloBytes per second.
NGINX Transmitted Throughput (KBps)Transmitted throughput in KiloBytes per second.

NGINX Plus Upstream Server Stats

Graph NameGraph Description
NGINX Server StatusCurrent state of the server with following status. Status would be 1 = “up”, 2 = “draining”, 3 = “down”, 4 = “unavail”, 5= “unhealthy”.
NGINX Active ConnectionsCurrent number of active connections.
NGINX Requests/SecNumber of client requests forwarded to this server per second.
NGINX Responses/SecNumber of responses obtained from this server per second.
NGINX 1xx Responses/SecNumber of responses obtained from this server with 1xx status code per second.
NGINX 2xx Responses/SecNumber of responses obtained from this server with 2xx status code per second.
NGINX 3xx Responses/SecNumber of responses obtained from this server with 3xx status code per second.
NGINX 4xx Responses/SecNumber of responses obtained from this server with 4xx status code per second.
NGINX 5xx Responses/SecNumber of responses obtained from this server with 5xx status code per second.
NGINX Received Throughput (KBps)Received throughput in KiloBytes per second.
NGINX Transmitted Throughput (KBps)Transmitted throughput in KiloBytes per second.
NGINX Failed Requests/SecNumber of unsuccessful attempts to communicate with the server per second.
NGINX Server Unavailable/SecNumber of times the server became unavailable for client requests (state “unavail”) due to the number of unsuccessful attempts reaching the max_fails threshold per second.
NGINX Health Check Requests/SecNumber of health check requests made per second.
NGINX Failed Health Check Requests/SecNumber of failed health check per second.
NGINX Unhealthy Server Occurrences/SecNumber of times the server became unhealthy (state “unhealthy”).
NGINX Last Check Server StatusThe last health check request was successful and passed tests with following status. Status would be 1 = “Success”, 2 =”Fail”
NGINX Backup StatusIndicates whether the server is a backup server with following status. Status would be 1 = It is backup server, 2 = It is not backup server.

NGINX Plus Cache Stats

Graph NameGraph Description
NGINX Cache Size (MB)Current size of the cache in MegaBytes.
NGINX Maximum Cache Size (MB)Maximum size of the cache specified in the configuration.
NGINX Hits/SecNumber of responses read from the cache per second.
NGINX Average Hit Response (KB)Average response in KiloBytes from the cache hits.
NGINX Stale Responses/SecNumber of stale responses read from the cache per second.
NGINX Average Stale Response (KB)Average response in KiloBytes from cache where response was stale.
NGINX Updating Responses/SecNumber of updating responses read from the cache per second.
NGINX Average Updating Responses (KB)Average response in KiloBytes from cache where response were updating.
NGINX Revalidated Responses/SecNumber of revalidated responses read from the cache per second.
NGINX Average revalidated Data Read (KB)Average response in KiloBytes from the cache where response was revalidated.
NGINX Misses/SecNumber of responses per second, which is not taken from the cache.
NGINX Average Miss Response (KB)Average response in KiloBytes from the proxy server.
NGINX Miss Responses Written/SecNumber of responses per second written to the cache.
NGINX Average Miss Response Write (KB)Average response in KiloBytes written to cache when response is fetched from proxy server.
NGINX Expired Responses/SecNumber of responses expired per second.
NGINX Average Expired Response (KB)Average response in KiloBytes from the proxy server due to response is expired from cache.
NGINX Expired Responses Written/SecNumber of expired responses written to the cache per second.
NGINX Average Expired Response Write (KB)Average expired response in KiloBytes written to cache when response is fetched from proxy server.
NGINX Bypass Responses/SecNumber of responses bypass per second.
NGINX Average Bypass Response (KB)Average response in KiloBytes from the proxy server due to response is bypass from cache.
NGINX Bypass Responses Written/SecNumber of bypass responses written to the cache per second.
NGINX Average Bypass Response Write (KB)Average bypass response in KiloBytes written to cache when response is fetched from proxy server.