Skip to main content

Agent and modules generated by the plugin

The plugin will create one agent forper everyindicated HAProxyNGINX URL configured.URL. The agent name is computed asby applying an MD5 hash ofover the URL netloc (host:port), and the alias is setcorresponds to that same netloc (for example, 192.168.0.10:840410). Each agent includeswill include the modules obtained by parsing the HAProxyplain CSVtext statsof the NGINX stub_status endpoint.

The statusStatus module is created always created for everyeach row,agent, regardlesswith ofvalue 1 if the monitorendpoint tokens,is reachable, indicating that NGINX is running. If the endpoint is not reachable, the plugin reports the error in orderthe toexecution alert on DOWN/MAINT/STOP states.information. The remaining numeric fields are included as generic_data modules (integer/decimal)instantaneous values) or generic_data_stringgeneric_data_inc modules (string)incremental modules,counters with per-second rate calculation), following the format <pxnameprefix>_<svname>_<fieldMetricName>. format.

The main fields available in the HAProxyNGINX CSVstub_status, thatwhich generategive modulesrise to modules, are:

pxname:Status: Proxystub_status nameendpoint state (frontend/backend/listener).1=UP, svname: Service name (FRONTEND/BACKEND/server name).
qcur: Current queued requests.
qmax: Max queued requests.
scur: Current sessions.
smax: Max sessions.
slim: Configured session limit.
stot: Cumulative sessions.
bin: Bytes in.
bout: Bytes out.
dreq: Requests denied (security).
dresp: Responses denied (security).
ereq: Request errors.
econ: Connection errors to backend.
eresp: Response errors.
wretr: Connection retries.
wredis: Redispatches to another server.
status: Status (UP/DOWN/MAINT/STOP/...)0=DOWN) — always monitored.monitored weight:(generic_proc).
Active_connections: Total weightactive /connections, serverincluding weight.waiting act: Active serversones (backend)generic_data).
/Accepts: serverAccepted active.connections bck: Backup servers (backend) / server backup.
chkfail: Failed health checks.
chkdown: UP->DOWN transitions.
lastchg: Secondsaccumulated since lastNGINX UP<->DOWN transition.
downtime: Total downtimestarted (seconds)generic_data_inc, per-second rate).
qlimit:Handled: ConfiguredHandled maxqueueconnections accumulated since NGINX started (generic_data_inc, per-second rate).
          If the value is lower than Accepts, NGINX is dropping traffic.
Requests: Client requests processed accumulated since NGINX started (generic_data_inc, per-second rate).
Reading: Connections reading request headers from the client (generic_data).
Writing: Connections writing a response to the client or processing a request (generic_data).
Waiting: Idle keep-alive connections waiting for the server.next pid: Process ID.
iid: Unique proxy ID.
sid: Server IDrequest (uniquegeneric_data).

inside

Module type mapping

selected.tracked:IDofproxy/server type:Type(0=frontend,
MetricPandora FMS module typeDescription
Statusgeneric_procEndpoint state (1=reachable, 0=DOWN). Allows configuring critical alerts when the proxy)value is 0.
Active_connectionsgeneric_dataCurrent active connections (gauge). throttle:Includes Currentreading, throttlewriting, percentage.and lbtot:waiting Timesconnections.
Acceptsgeneric_data_incAccumulated accepted connections. Pandora FMS automatically calculates the serverper-second wasrate.
Handled generic_data_inc Accumulated ifhandled trackingconnections. Pandora FMS automatically calculates the per-second rate. If the rate is lower than Accepts, NGINX is dropping connections.
Requestsgeneric_data_incAccumulated processed requests. Pandora FMS automatically calculates the per-second rate (requests/s).
Readinggeneric_dataConnections in the header-reading state (gauge).
Writinggeneric_dataConnections in the response-writing state (gauge).
Waitinggeneric_dataIdle keep-alive connections (gauge). A high value is normal when keep-alive is enabled.
1=backend,

extra_data 2=server, 3=socket). rate: Sessions per second (last second). rate_lim: Configured limit on new sessions/s. rate_max: Max sessions per second. check_status: Status of the last health check. check_code: Layer 5-7 check code. check_duration: Time in ms of the last health check. hrsp_1xx: HTTP responses with 1xx code. hrsp_2xx: HTTP responses with 2xx code. hrsp_3xx: HTTP responses with 3xx code. hrsp_4xx: HTTP responses with 4xx code. hrsp_5xx: HTTP responses with 5xx code. hrsp_other: HTTP responses with other codes. hanafail: Failed health checks details. req_rate: HTTP requests per second. req_rate_max: Max HTTP requests per second. req_tot: Total HTTP requests received. cli_abrt: Data transfers aborted by the client. srv_abrt: Data transfers aborted by the server. comp_in: HTTP response bytes fed to the compressor. comp_out: HTTP response bytes emitted by the compressor. comp_byp: Bytes that bypassed the HTTP compressor. comp_rsp: HTTP responses that were compressed. lastsess: Seconds since the last session was assigned. last_chk: Last health check contents/error. last_agt: Last agent check contents/error. qtime: Average queue time (ms) over the last 1024 requests. ctime: Average connect time (ms) over the last 1024 requests. rtime: Average response time (ms) over the last 1024 requests. ttime: Average total session time (ms) over the last 1024 requests. agent_status: Status of the last agent check. agent_code: Numeric code reported by the agent. agent_duration: Time in ms of the last agent check. check_desc: Human-readable description of check_status. agent_desc: Human-readable description of agent_status. check_rise: Server's rise parameter used by checks. check_fall: Server's fall parameter used by checks. check_health: Server's health check value. agent_rise: Agent's rise parameter. agent_fall: Agent's fall parameter. agent_health: Agent's health parameter. addr: Address:port or unix socket. cookie: Server's cookie value or backend's cookie name. mode: Proxy mode (tcp, http, health, unknown). algo: Load balancing algorithm. conn_rate: Connections over the last elapsed second. conn_rate_max: Highest known conn_rate. conn_tot: Cumulative number of connections. intercepted: Cumulative intercepted requests. dcon: Requests denied by tcp-request connection rules. dses: Requests denied by tcp-request session rules. markers

The plugin assigns stable identifiers in the statusextra_data field of each agent and module, following the nginx:<kind>:<identifier> format, to allow later identification from the console, dashboards, extensions, or SQL queries:

  • Agent: nginx:target:<sanitized_url> — identifies the monitored NGINX target.
  • Status module: nginx:metric_status:<sanitized_url>
  • Metric modules: nginx:metric_<metric_name>:<sanitized_url> — for example nginx:metric_active_connections:..., nginx:metric_accepts:..., etc.

These markers do not contain the agent or module isname, translated to a numeric value according tobut the followingexternal mapping:identifier 5=UP,(the 4=OPEN,target 3=NOLB, 2=MAINT, 1=STOP/STOPPING, 0=DOWN,URL), which allowsis configuring alerts based on warning (2-4)stable and criticalmeaningful (0-2)at thresholds.the domain level.