---
title: ''
description: Telegraf plugin for collecting metrics from Nginx Plus
url: https://docs.influxdata.com/telegraf/v1/input-plugins/nginx_plus/
estimated_tokens: 1441
product: Telegraf Enterprise
version: v1
publisher: InfluxData
canonical: https://docs.influxdata.com/telegraf/v1/input-plugins/nginx_plus/
date: '2026-05-21T20:10:18+02:00'
lastmod: '2026-05-21T20:10:18+02:00'
---

==========

* Telegraf v1.5.0+

[Plugin source](https://github.com/influxdata/telegraf/tree/v1.39.1/plugins/inputs/nginx_plus/)[Download configuration](https://raw.githubusercontent.com/influxdata/telegraf/refs/tags/v1.39.1/plugins/inputs/nginx_plus/sample.conf)

# Nginx Plus Input Plugin

This plugin gathers metrics from the commercial[Nginx Plus web server](https://www.f5.com/products/nginx/nginx-plus) via the [status module](http://nginx.org/en/docs/http/ngx_http_status_module.html).

> [!Note]
> Using this plugin requires a license.

For more information about differences between Nginx (F/OSS) and Nginx Plus, see
the Nginx [documentation](https://www.nginx.com/blog/whats-difference-nginx-foss-nginx-plus/).

**Introduced in:** Telegraf v1.5.0**Tags:** server, web**OS support:** all

## Global configuration options

Plugins support additional global and plugin configuration settings for tasks
such as modifying metrics, tags, and fields, creating aliases, and configuring
plugin ordering. See [CONFIGURATION.md](/telegraf/v1/configuration/#plugins) for more details.

## Configuration

```toml
# Read Nginx Plus' advanced status information
[[inputs.nginx_plus]]
  ## An array of Nginx status URIs to gather stats.
  urls = ["http://localhost/status", "http+unix:///var/run/nginx.sock:/status"]

  # HTTP response timeout (default: 5s)
  response_timeout = "5s"

  ## Optional TLS Config
  # tls_ca = "/etc/telegraf/ca.pem"
  # tls_cert = "/etc/telegraf/cert.pem"
  # tls_key = "/etc/telegraf/key.pem"
  ## Use TLS but skip chain & host verification
  # insecure_skip_verify = false
```

## Metrics

* nginx\_plus\_processes
  * respawned

* nginx\_plus\_connections
  * accepted
  * dropped
  * active
  * idle

* nginx\_plus\_ssl
  * handshakes
  * handshakes\_failed
  * session\_reuses

* nginx\_plus\_requests
  * total
  * current

* nginx\_plus\_upstream, nginx\_plus\_stream\_upstream
  * keepalive
  * zombies

* nginx\_plus\_upstream\_peer, nginx\_plus\_stream\_upstream\_peer
  * requests
  * unavail
  * healthchecks\_checks
  * header\_time
  * response\_time
  * state
  * active
  * downstart
  * healthchecks\_last\_passed
  * weight
  * responses\_1xx
  * responses\_2xx
  * responses\_3xx
  * responses\_4xx
  * responses\_5xx
  * received
  * selected
  * healthchecks\_fails
  * healthchecks\_unhealthy
  * backup
  * responses\_total
  * sent
  * fails
  * downtime

### Tags

* nginx\_plus\_processes, nginx\_plus\_connections, nginx\_plus\_ssl, nginx\_plus\_requests

  * server
  * port

* nginx\_plus\_upstream, nginx\_plus\_stream\_upstream

  * upstream
  * server
  * port

* nginx\_plus\_upstream\_peer, nginx\_plus\_stream\_upstream\_peer

  * id
  * upstream
  * server
  * port
  * upstream\_address

## Example Output

Using this configuration:

```toml
[[inputs.nginx_plus]]
  ## An array of Nginx Plus status URIs to gather stats.
  urls = ["http://localhost/status"]
```

When run with:

```sh
./telegraf -config telegraf.conf -input-filter nginx_plus -test
```

It produces:

```text
* Plugin: inputs.nginx_plus, Collection 1
> nginx_plus_processes,server=localhost,port=12021,host=word.local respawned=0i 1505782513000000000
> nginx_plus_connections,server=localhost,port=12021,host=word.local accepted=5535735212i,dropped=10140186i,active=9541i,idle=67540i 1505782513000000000
> nginx_plus_ssl,server=localhost,port=12021,host=word.local handshakes=0i,handshakes_failed=0i,session_reuses=0i 1505782513000000000
> nginx_plus_requests,server=localhost,port=12021,host=word.local total=186780541173i,current=9037i 1505782513000000000
> nginx_plus_upstream,port=12021,host=word.local,upstream=dataserver80,server=localhost keepalive=0i,zombies=0i 1505782513000000000
> nginx_plus_upstream_peer,upstream=dataserver80,upstream_address=10.10.102.181:80,id=0,server=localhost,port=12021,host=word.local sent=53806910399i,received=7516943964i,fails=207i,downtime=2325979i,selected=1505782512000i,backup=false,active=6i,responses_4xx=6935i,header_time=80i,response_time=80i,healthchecks_last_passed=true,responses_1xx=0i,responses_2xx=36299890i,responses_5xx=360450i,responses_total=36667275i,unavail=154i,downstart=0i,state="up",requests=36673741i,responses_3xx=0i,healthchecks_unhealthy=5i,weight=1i,healthchecks_checks=177209i,healthchecks_fails=29i 1505782513000000000
> nginx_plus_stream_upstream,server=localhost,port=12021,host=word.local,upstream=dataserver443 zombies=0i 1505782513000000000
> nginx_plus_stream_upstream_peer,server=localhost,upstream_address=10.10.102.181:443,id=0,port=12021,host=word.local,upstream=dataserver443 active=1i,healthchecks_unhealthy=1i,weight=1i,unavail=0i,connect_time=24i,first_byte_time=78i,healthchecks_last_passed=true,state="up",sent=4457713140i,received=698065272i,fails=0i,healthchecks_checks=178421i,downstart=0i,selected=1505782512000i,response_time=5156i,backup=false,connections=56251i,healthchecks_fails=20i,downtime=391017i 1505782513000000000
```

### Reference material

Subsequent versions of status response structure available here:

* [version 1](http://web.archive.org/web/20130805111222/http://nginx.org/en/docs/http/ngx_http_status_module.html)

* [version 2](http://web.archive.org/web/20131218101504/http://nginx.org/en/docs/http/ngx_http_status_module.html)

* version 3 - not available

* [version 4](http://web.archive.org/web/20141218170938/http://nginx.org/en/docs/http/ngx_http_status_module.html)

* [version 5](http://web.archive.org/web/20150414043916/http://nginx.org/en/docs/http/ngx_http_status_module.html)

* [version 6](http://web.archive.org/web/20150918163811/http://nginx.org/en/docs/http/ngx_http_status_module.html)

* [version 7](http://web.archive.org/web/20161107221028/http://nginx.org/en/docs/http/ngx_http_status_module.html)
