Schedule demo

HAProxy Monitoring Tool


HAProxy - An Overview

HAProxy (stands for High Availability Proxy) is a popular open source TCP/HTTP Load Balancing software and proxying solution for TCP and HTTP-based applications. It is fast, reliable and particularly suited for very high traffic web sites and powers quite a number of the world's most visited ones.

Monitoring HAProxy - What we do

As HAProxy is most commonly used to improve the performance and reliability of a server environment by distributing the workload across multiple servers (e.g. web, application, database), the best way to ensure proper HAProxy performance and operation is by monitoring its key metrics of the Listener, Frontend, Backend and Server. Applications Manager's HAProxy Monitoring tool provides you with:

  • Frontend metrics such as client connections and requests.
  • Backend metrics such as availability and health of backend servers.
  • Health metrics that reflect the state of your HAProxy setup.

You can correlate frontend metrics with backend metrics for a more comprehensive view of your infrastructure and quickly identify potential hotspots. Applications Manager helps you become aware of performance bottlenecks and take quick remedial actions before your end users experience issues.

Creating a new HAProxy monitor

Prerequisites for monitoring HAProxy metrics :Click here

Rest API to add a new HAProxy monitor :Click here

To add a HAProxy Monitor, follow the steps given below:

  1. Go to New Monitor and click on Add New Monitor link.
  2. Select HAProxy.
  3. Specify the Display Name of the HAProxy monitor.
  4. Enter the HostName or IP Address of the host where stats of the HAProxy runs.
  5. Enter the deatils for authEnabled, Port, Username, password and haproxystatusurl. By default, the value of Port will be 8080.
  6. Enable the SSL option, if SSL is required in HA Proxy.
  7. Specify the Polling Interval in minutes.
  8. Choose the Monitor Group with which you want to associate the HAProxy Monitor (optional).
  9. Click Add Monitor(s). This discovers HAProxy servers from the network and starts monitoring them.
  • Security/Firewall Requirements:The HAProxy host and port should be accessible from the Applications manager installed machine.
  • User Privilege:The required user credentials are to be provided.

Monitored Parameters

Go to the Monitors Category View by clicking the Monitors tab. Click on HAProxy under the Web Server/Services Table. Displayed is the HAProxy bulk configuration view distributed into three tabs:

  • Availability tab displays the Availability history for the past 24 hours or 30 days.
  • Performance tab displays the Health Status and events for the past 24 hours or 30 days.
  • List view enables you to perform bulk admin configurations.

Click on the monitor name to see all the server details listed under the following tabs:

Overview

PARAMETERDESCRIPTION
HAPROXY UTILIZATION DETAILS
HAProxy Utilization PercentageHAProxy's CPU utilization in percentage.
Running TasksTotal number of tasks currenlty running in HAProxy
CONNECTION RATE
Connections per SecondHAProxy's client connections per second.
CONNECTION DETAILS
Current ConnectionsThe number of current connections.
PIPE DETAILS
Current PipesThe number of current pipes open.

Listener

PARAMETERDESCRIPTION
SESSION UTILIZATION
Utilized SessionsThe number of sessions used.
Free SessionsThe number of inactive sessions.
TRANSACTION DETAILS
Service NameThe name of the listener.
Denied RequestsThe number of requests denied due to security concerns (ACL-restricted).
Denied ResponsesThe number of responses denied due to security concerns (ACL-restricted).
Request ErrorsThe number of requests whose responses yielded an error.
OVERVIEW
Current SessionsThe current number of sessions being used to issue requests.
Utilized Sessions  (%)The percentage of sessions used.
Bytes In  (KB)The number of bytes received by the listener.
Bytes Out  (KB)The number of bytes sent by the listener.
AddressThe http address of the listener (host:port or "unix". IPV6 has brackets around the address)
ModeMode of the proxy (tcp, http, etc.)
StatusThe service status (UP/DOWN/NOLB/MAINT/MAINT(via)/MAINT(resolution)...)
TRANSACTION DETAILS
Denied RequestsThe number of requests denied due to security concerns (ACL-restricted).
Denied ResponsesThe number of responses denied due to security concerns (ACL-restricted).
Request ErrorsThe number of requests whose responses yielded an error.
Request Denied by ConnectionThe number of requests denied by a connection.
Request Denied by SessionThe number of requests denied by a session.

Frontend

Frontend metrics provide information about the client’s interaction with the load balancer itself.

PARAMETERDESCRIPTION
SESSION UTILIZATION
Service NameThe name of the frontend service.
Utilized SessionsThe number of sessions used.
Free SessionsThe number of inactive sessions.
TRANSACTION DETAILS
Service NameThe name of the frontend service.
Denied RequestsThe number of requests denied due to security concerns (ACL-restricted).
Denied ResponsesThe number of responses denied due to security concerns (ACL-restricted).
Request ErrorsThe number of requests whose responses yielded an error.
OVERVIEW
Service NameThe name of the frontend service.
Current SessionsThe current number of sessions being used to issue requests.
Utilized Sessions  (%)The percentage of sessions used.
Session RateThe number of sessions created per second.
Max Session Rate  The maximum number of new sessions per second.
Bytes In  (KB)The number of bytes received by the frontend.
Bytes Out  (KB)The number of bytes sent by the frontend.
ModeMode of the proxy (tcp, http, etc.)
StatusThe frontend status (UP/DOWN/NOLB/MAINT/MAINT(via)/MAINT(resolution)...)
TRANSACTION DETAILS
Service NameThe name of the frontend service.
Denied RequestsThe number of requests denied due to security concerns (ACL-restricted).
Denied ResponsesThe number of responses denied due to security concerns (ACL-restricted).
Request ErrorsThe number of requests whose responses yielded an error.
Total RequestsThe total number of HTTP requests.
Request Denied by ConnectionThe number of requests denied by "tcp-request connection" rules.
Request Denied by SessionThe number of requests denied by "tcp-request session" rules
Request RateThe rate of HTTP requests per second.
Max Request RateThe maximum number of HTTP requests per second
Connections per SecondThe number of connections over the last elapsed second.
HTTP RESPONSE COUNT
Service NameThe name of the frontend service.
Total HTTP ResponsesHAProxy exposes the number of responses by HTTP status code - 1xx, 2xx, 3xx, 4xx, 5xx and other codes. Ideally, all responses forwarded by HAProxy would be class 2xx codes.
COMPRESSION DETAILS
Service NameThe name of the frontend service.
Bytes into CompressorThe number of HTTP response bytes fed to the compressor.
Bytes from CompressorThe number of HTTP response bytes emitted by the compressor.
Bytes bypassed CompressorThe number of bytes that bypassed the HTTP compressor.
Responses Compressed  The number of HTTP responses that were compressed.

Backend

PARAMETERDESCRIPTION
QUEUE UTILIZATION
Utilized QueueThe currently queued requests.
Free QueueThe number of free queued requests.
SESSION DETAILS
Utilized SessionsThe number of sessions used.
Free SessionsThe number of inactive sessions.
OVERVIEW
Service NameThe name of the backend service.
Total WeightServers can be assigned a weight parameter to manipulate how frequently the server is selected.
Total Downtime  (sec)The total downtime in seconds. The value for the backend is the downtime for the whole backend, not the sum of the server downtime.
Downtime PercentageThe total downtime in percentage. This is calculated with the uptime of HAProxy.
Active ServersThe number of active servers.
Backup ServersThe number of backup servers
No. times Server selectedThe total number of times a server was selected, either for new sessions, or when re-dispatching. The server counter is the number of times that server was selected.
ModeMode of the proxy (tcp, http, etc.)
StatusThe frontend status (UP/DOWN/NOLB/MAINT/MAINT(via)/MAINT(resolution)...)
SESSION DETAILS
Service NameThe name of the backend service.
Current Queue SizeThe sum of total queue size of all the backend servers.
Utilized Queue  (%)The percentage of queues used.
Current SessionsThe current number of sessions being used to issue requests.
Utilized Sessions  (%)The percentage of sessions used.
Session RateSession rate is the number of new sessions per second.
Max No.of new SessionsThe maximum number of new sessions that can be created per second.
Time Since Last Session Assigned  (sec)The seconds since last session assigned to server/backend.
TRANSACTION DETAILS
Service NameThe name of the backend service.
Bytes In  (KB)The Rate of bytes in on backend hosts.
Bytes Out  (KB)The Rate of bytes in on backend hosts.
Denied RequestsThe requests denied by "tcp-request connection" rules.
Denied ResponsesThe requests denied by "tcp-request session" rules.
Connection ErrorsThe number of requests that encountered an error trying to connect to a backend server.
Response ErrorsThe number of response errors generated by your backends.
RESPONSE SUMMARY
Service NameThe name of the backend service.
Total HTTP ResponsesHAProxy exposes the number of responses by HTTP status code - 1xx, 2xx, 3xx, 4xx, 5xx and other codes. Ideally, all responses forwarded by HAProxy would be class 2xx codes.
Average Session Time (ms)The average time taken for the sessions.
Average Response Time (ms)The sum of average queue, connect and response time.
Connection RetriesMulti-process configurations involving source port ranges may cause random failures under high loads (because more than one process may try to use the same source port to connect to the same server). The system will report an error and a retry will happen, picking another port. A high value in the "retries" parameter comes with increased CPU usage and processing time.
Requests RedispatchedThe number of times a request was redispatched to another server. The server value counts the number of times that server was switched away from.
Client AbortsThe number of data transfers aborted by the client.
Server AbortsThe number of data transfers aborted by the server.
COMPRESSOR DETAILS
Service NameThe name of the backend service.
Bytes into CompressorThe number of HTTP response bytes fed to the compressor.
Bytes from CompressorThe number of HTTP response bytes emitted by the compressor.
Bytes bypassed CompressorThe number of bytes that bypassed the HTTP compressor.
Responses Compressed The number of HTTP responses that were compressed.

Server

PARAMETERDESCRIPTION
QUEUE UTILIZATION
Utilized QueueThe currently queued requests.
Free QueueThe number of free queued requests.
SESSION DETAILS
Utilized SessionThe number of sessions used.
Free SessionThe number of inactive sessions.
OVERVIEW
Service NameThe name of the server.
Server WeightThe total server weight. The "weight" parameter is used to adjust the server's weight relative to other servers. All servers will receive a load proportional to their weight relative to the sum of all weights, so the higher the weight, the higher the load.
Total Downtime (sec)The total server downtime (in seconds).
Downtime PercentageThe total downtime in percentage. This is calculated with the uptime of HAProxy.
Active ServerThe number of active servers.
Backup ServerThe number of backup servers.
No. times Server selectedThe total number of times a server was selected, either for new sessions, or when re-dispatching.
AddressThe Server IP address.
ModeMode of the proxy (tcp, http, etc.)
StatusThe frontend status (UP/DOWN/NOLB/MAINT/MAINT(via)/MAINT(resolution)...)
SESSION DETAILS
Service NameThe name of the server.
Current Queue SizeThe sum of total queue size of all the servers.
Utilized Queue  (%)The percentage of queues used.
Current SessionsThe current number of sessions being used to issue requests.
Utilized Sessions  (%)The percentage of sessions used.
Session RateSession rate is the number of new sessions per second.
Max No.of new SessionsThe maximum number of new sessions that can be created per second.
Time Since Last Session Assigned  (sec)The seconds since last session assigned to server/backend.
TRANSACTION DETAILS
Service NameThe name of the server.
Bytes In (KB)The total number of bytes recieved by the server in the last second from the client.
Bytes Out (KB)The total number of bytes sent by the server in the last second.
Denied ResponsesThe number of requests denied due to security restrictions.
Connection ErrorsThe number of requests that encountered an error trying to connect to a server.
Response ErrorsThe number of response errors generated by your server.
Throttle PercentageThe throttle percentage for the server, when slowstart is active, or no value if not in slowstart.
RESPONSE SUMMARY
Service NameThe name of the server.
Total HTTP ResponsesHAProxy exposes the number of responses by HTTP status code - 1xx, 2xx, 3xx, 4xx, 5xx and other codes. Ideally, all responses forwarded by HAProxy would be class 2xx codes.
Average Session Time (ms)The average time taken for the sessions.
Average Response Time (ms)The sum of average queue, connect and response time.
Connection RetriesMulti-process configurations involving source port ranges may cause random failures under high loads (because more than one process may try to use the same source port to connect to the same server). The system will report an error and a retry will happen, picking another port. A high value in the "retries" parameter comes with increased CPU usage and processing time.
Requests RedispatchedThe number of times a request was redispatched to another server. The server value counts the number of times that server was switched away from.
Client AbortsThe number of data transfers aborted by the client.
Server AbortsThe number of data transfers aborted by the server.
HEALTH CHECKS
Service NameThe name of the server.
Failed ChecksThe number of failed checks. (Considers counts checks as failed only when the server is up)
Failed Health ChecksThe number of failed health checks.
Health Check Response CodeThe Response Code of the failed health check.
Health Check Content, Health Check Description, Health Check Description, Health Check Duration in msThe failed health checks details.
Agent Check Response Code, Agent Check Content, Agent Check Description, Agent Check Duration in msThe last agent check details.

Configuration

PARAMETERDESCRIPTION
CONFIGURATION DETAILS
Process IDThe process id of HAProxy assigned by the system.
Server Start TimeThe time when the server is last restarted.
VersionThe version of HAProxy.
Maximum MemoryMaximum allowed memory for HAProxy.
Maximum SocketsMaximum number sockets allowed to create.
Maximum ConnectionsThe maximum number of connections HAProxy can handle is limited by your configuration and platform
Maximum PipesMaximum number of pipes allowed to create for tranferring information
Maximum File descriptorsMaximum number of file descriptors allowed to open.

Loved by customers all over the world

"Standout Tool With Extensive Monitoring Capabilities"

It allows us to track crucial metrics such as response times, resource utilization, error rates, and transaction performance. The real-time monitoring alerts promptly notify us of any issues or anomalies, enabling us to take immediate action.

Reviewer Role: Research and Development

carlos-rivero
"I like Applications Manager because it helps us to detect issues present in our servers and SQL databases."
Carlos Rivero

Tech Support Manager, Lexmark

Trusted by over 6000+ businesses globally