Skip to main content

NGINX Plus monitoring

NGINX Plus is a software load balancer, API gateway, and reverse proxy built on top of NGINX.

This module will monitor one or more NGINX Plus servers, depending on your configuration.

Requirements

  • NGINX Plus with configured API.

Metrics

All metrics have "nginxplus." prefix.

Labels per scope:

  • global: no labels.
  • http server zone: http_server_zone.
  • http location zone: http_location_zone.
  • http upstream: http_upstream_name, http_upstream_zone.
  • http upstream server: http_upstream_name, http_upstream_zone, http_upstream_server_address, http_upstream_server_name.
  • http cache: http_cache.
  • stream server zone: stream_server_zone.
  • stream upstream: stream_upstream_name, stream_upstream_zone.
  • stream upstream server: stream_upstream_name, stream_upstream_zone, stream_upstream_server_address, stream_upstream_server_name.
  • resolver zone: resolver_zone.
MetricScopeDimensionsUnits
client_connections_rateglobalaccepted, droppedconnections/s
client_connections_countglobalactive, idleconnections
ssl_handshakes_rateglobalsuccessful, failedhandshakes/s
ssl_session_reuses_rateglobalssl_sessionreuses/s
http_requests_rateglobalrequestsrequests/s
http_requests_countglobalrequestsrequests
uptimeglobaluptimeseconds
http_server_zone_requests_ratehttp server zonerequestsrequests/s
http_server_zone_responses_per_code_class_ratehttp server zone1xx, 2xx, 3xx, 4xx, 5xxresponses/s
http_server_zone_traffic_ratehttp server zonereceived, sentbytes/s
http_server_zone_requests_processing_counthttp server zoneprocessingrequests
http_server_zone_requests_discarded_ratehttp server zonediscardedrequests/s
http_location_zone_requests_ratehttp location zonerequestsrequests/s
http_location_zone_responses_per_code_class_ratehttp location zone1xx, 2xx, 3xx, 4xx, 5xxresponses/s
http_location_zone_traffic_ratehttp location zonereceived, sentbytes/s
http_location_zone_requests_discarded_ratehttp location zonediscardedrequests/s
http_upstream_peers_counthttp upstreampeerspeers
http_upstream_zombies_counthttp upstreamzombieservers
http_upstream_keepalive_counthttp upstreamkeepaliveconnections
http_upstream_server_requests_ratehttp upstream serverrequestsrequests/s
http_upstream_server_responses_per_code_class_ratehttp upstream server1xx, 2xx, 3xx, 4xx, 5xxresponses/s
http_upstream_server_response_timehttp upstream serverresponsemilliseconds
http_upstream_server_response_header_timehttp upstream serverheadermilliseconds
http_upstream_server_traffic_ratehttp upstream serverreceived, sentbytes/s
http_upstream_server_statehttp upstream serverup, down, draining, unavail, checking, unhealthystate
http_upstream_server_connections_counthttp upstream serveractiveconnections
http_upstream_server_downtimehttp upstream serverdowntimeseconds
http_cache_statehttp cachewarm, coldstate
http_cache_iopshttp cacheserved, written, bypassresponses/s
http_cache_iohttp cacheserved, written, bypassbytes/s
http_cache_sizehttp cachesizebytes
stream_server_zone_connections_ratestream server zoneacceptedconnections/s
stream_server_zone_sessions_per_code_class_ratestream server zone2xx, 4xx, 5xxsessions/s
stream_server_zone_traffic_ratestream server zonereceived, sentbytes/s
stream_server_zone_connections_processing_countstream server zoneprocessingconnections
stream_server_zone_connections_discarded_ratestream server zonediscardedconnections/s
stream_upstream_peers_countstream upstreampeerspeers
stream_upstream_zombies_countstream upstreamzombieservers
stream_upstream_server_connections_ratestream upstream serverforwardedconnections/s
stream_upstream_server_traffic_ratestream upstream serverreceived, sentbytes/s
stream_upstream_server_statestream upstream serverup, down, unavail, checking, unhealthystate
stream_upstream_server_downtimestream upstream serverdowntimeseconds
stream_upstream_server_connections_countstream upstream serveractiveconnections
resolver_zone_requests_rateresolver zonename, srv, addrrequests/s
resolver_zone_responses_rateresolver zonenoerror, formerr, servfail, nxdomain, notimp, refused, timedout, unknownresponses/s

Configuration

Edit the go.d/nginxplus.conf configuration file using edit-config from the Netdata config directory, which is typically at /etc/netdata.

cd /etc/netdata # Replace this path with your Netdata config directory
sudo ./edit-config go.d/nginxplus.conf

Needs only server's url. Here is an example for local and remote servers:

jobs:
- name: local
url: http://127.0.0.1

- name: remote
url: http://203.0.113.10

For all available options please see module configuration file.

Troubleshooting

To troubleshoot issues with the nginxplus collector, run the go.d.plugin with the debug option enabled. The output should give you clues as to why the collector isn't working.

  • Navigate to the plugins.d directory, usually at /usr/libexec/netdata/plugins.d/. If that's not the case on your system, open netdata.conf and look for the plugins setting under [directories].

    cd /usr/libexec/netdata/plugins.d/
  • Switch to the netdata user.

    sudo -u netdata -s
  • Run the go.d.plugin to debug the collector:

    ./go.d.plugin -d -m nginxplus

Was this page helpful?

Contribute