Administration

View metrics

The ingress controller exposes the HAProxy Stats page and a Prometheus endpoint on port 1024. When deploying the ingress controller with a NodePort service, this port will be mapped to a random, high-numbered port. Get the NodePort value by listing the service’s details:

nix
kubectl get services --namespace haproxy-controller
nix
kubectl get services --namespace haproxy-controller

The details show that the port is 31912:

output
text
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
haproxy-kubernetes-ingress NodePort 10.96.15.205 <none> 80:30279/TCP,443:30775/TCP,1024:31912/TCP 84s
output
text
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
haproxy-kubernetes-ingress NodePort 10.96.15.205 <none> 80:30279/TCP,443:30775/TCP,1024:31912/TCP 84s

In this example, port 1024 is mapped to NodePort 31912.

HAProxy stats page Jump to heading

View the HAProxy Stats page at port 1024 at the / URL path. Learn more about the HAProxy Stats page in this blog post.

HAProxy Stats Page

Prometheus endpoint Jump to heading

View Prometheus counters at port 1024 at the /metrics URL path. Here are the metrics published on that page:

Name Description Type
haproxy_backend_active_servers Total number of active UP servers with a non-zero weight gauge
haproxy_backend_agg_check_status Backend’s gauge of servers’ state check status gauge
haproxy_backend_agg_server_check_status DEPRECATED Backend’s gauge of servers’ status gauge
haproxy_backend_agg_server_status Backend’s gauge of servers’ status gauge
haproxy_backend_backup_servers Total number of backup UP servers with a non-zero weight gauge
haproxy_backend_bytes_in_total Total number of request bytes since process started counter
haproxy_backend_bytes_out_total Total number of response bytes since process started counter
haproxy_backend_check_last_change_seconds How long ago the last server state changed, in seconds gauge
haproxy_backend_check_up_down_total Total number of failed checks causing UP to DOWN server transitions, per server/backend, since the worker process started counter
haproxy_backend_client_aborts_total Total number of requests or connections aborted by the client since the worker process started counter
haproxy_backend_connect_time_average_seconds Avg. connect time for last 1024 successful connections. gauge
haproxy_backend_connection_attempts_total Total number of outgoing connection attempts on this backend/server since the worker process started counter
haproxy_backend_connection_errors_total Total number of failed connections to server since the worker process started counter
haproxy_backend_connection_reuses_total Total number of reused connection on this backend/server since the worker process started counter
haproxy_backend_current_queue Number of current queued connections gauge
haproxy_backend_current_sessions Number of current sessions on the frontend, backend or server gauge
haproxy_backend_downtime_seconds_total Total time spent in DOWN state, for server or backend counter
haproxy_backend_failed_header_rewriting_total Total number of failed HTTP header rewrites since the worker process started counter
haproxy_backend_http_cache_hits_total Total number of HTTP requests not found in the cache on this frontend/backend since the worker process started counter
haproxy_backend_http_cache_lookups_total Total number of HTTP requests looked up in the cache on this frontend/backend since the worker process started counter
haproxy_backend_http_comp_bytes_bypassed_total Total number of bytes that bypassed HTTP compression for this object since the worker process started (CPU/memory/bandwidth limitation) counter
haproxy_backend_http_comp_bytes_in_total Total number of bytes submitted to the HTTP compressor for this object since the worker process started counter
haproxy_backend_http_comp_bytes_out_total Total number of bytes emitted by the HTTP compressor for this object since the worker process started counter
haproxy_backend_http_comp_responses_total Total number of HTTP responses that were compressed for this object since the worker process started counter
haproxy_backend_http_requests_total Total number of HTTP requests processed by this object since the worker process started counter
haproxy_backend_http_responses_total Total number of HTTP responses with status 100-199 returned by this object since the worker process started counter
haproxy_backend_internal_errors_total Total number of internal errors since process started counter
haproxy_backend_last_session_seconds How long ago some traffic was seen on this object on this worker process, in seconds gauge
haproxy_backend_limit_sessions Frontend/listener/server’s maxconn, backend’s fullconn gauge
haproxy_backend_loadbalanced_total Total number of requests routed by load balancing since the worker process started (ignores queue pop and stickiness) counter
haproxy_backend_max_connect_time_seconds Maximum observed time spent waiting for a connection to complete gauge
haproxy_backend_max_queue Highest value of queued connections encountered since process started gauge
haproxy_backend_max_queue_time_seconds Maximum observed time spent in the queue gauge
haproxy_backend_max_response_time_seconds Maximum observed time spent waiting for a server response gauge
haproxy_backend_max_session_rate Highest value of sessions per second observed since the worker process started gauge
haproxy_backend_max_sessions Highest value of current sessions encountered since process started gauge
haproxy_backend_max_total_time_seconds Maximum observed total request+response time (request+queue+connect+response+processing) gauge
haproxy_backend_queue_time_average_seconds Avg. queue time for last 1024 successful connections. gauge
haproxy_backend_redispatch_warnings_total Total number of server redispatches due to connection failures since the worker process started counter
haproxy_backend_requests_denied_total Total number of denied requests since process started counter
haproxy_backend_response_errors_total Total number of invalid responses since the worker process started counter
haproxy_backend_response_time_average_seconds Avg. response time for last 1024 successful connections. gauge
haproxy_backend_responses_denied_total Total number of denied responses since process started counter
haproxy_backend_retry_warnings_total Total number of server connection retries since the worker process started counter
haproxy_backend_server_aborts_total Total number of requests or connections aborted by the server since the worker process started counter
haproxy_backend_sessions_total Total number of sessions since process started counter
haproxy_backend_status Current status of the service, per state label value. gauge
haproxy_backend_total_time_average_seconds Avg. total time for last 1024 successful connections. gauge
haproxy_backend_uweight Server’s user weight, or sum of active servers’ user weights for a backend gauge
haproxy_backend_weight Server’s effective weight, or sum of active servers’ effective weights for a backend gauge
haproxy_frontend_bytes_in_total Total number of request bytes since process started counter
haproxy_frontend_bytes_out_total Total number of response bytes since process started counter
haproxy_frontend_connections_rate_max Highest value of connections per second observed since the worker process started gauge
haproxy_frontend_connections_total Total number of new connections accepted on this frontend since the worker process started counter
haproxy_frontend_current_sessions Number of current sessions on the frontend, backend or server gauge
haproxy_frontend_denied_connections_total Total number of incoming connections blocked on a listener/frontend by a tcp-request connection rule since the worker process started counter
haproxy_frontend_denied_sessions_total Total number of incoming sessions blocked on a listener/frontend by a tcp-request connection rule since the worker process started counter
haproxy_frontend_failed_header_rewriting_total Total number of failed HTTP header rewrites since the worker process started counter
haproxy_frontend_http_cache_hits_total Total number of HTTP requests not found in the cache on this frontend/backend since the worker process started counter
haproxy_frontend_http_cache_lookups_total Total number of HTTP requests looked up in the cache on this frontend/backend since the worker process started counter
haproxy_frontend_http_comp_bytes_bypassed_total Total number of bytes that bypassed HTTP compression for this object since the worker process started (CPU/memory/bandwidth limitation) counter
haproxy_frontend_http_comp_bytes_in_total Total number of bytes submitted to the HTTP compressor for this object since the worker process started counter
haproxy_frontend_http_comp_bytes_out_total Total number of bytes emitted by the HTTP compressor for this object since the worker process started counter
haproxy_frontend_http_comp_responses_total Total number of HTTP responses that were compressed for this object since the worker process started counter
haproxy_frontend_http_requests_rate_max Highest value of http requests observed since the worker process started gauge
haproxy_frontend_http_requests_total Total number of HTTP requests processed by this object since the worker process started counter
haproxy_frontend_http_responses_total Total number of HTTP responses with status 100-199 returned by this object since the worker process started counter
haproxy_frontend_intercepted_requests_total Total number of HTTP requests intercepted on the frontend (redirects/stats/services) since the worker process started counter
haproxy_frontend_internal_errors_total Total number of internal errors since process started counter
haproxy_frontend_limit_session_rate Limit on the number of sessions accepted in a second (frontend only, rate-limit sessions setting) gauge
haproxy_frontend_limit_sessions Frontend/listener/server’s maxconn, backend’s fullconn gauge
haproxy_frontend_max_session_rate Highest value of sessions per second observed since the worker process started gauge
haproxy_frontend_max_sessions Highest value of current sessions encountered since process started gauge
haproxy_frontend_request_errors_total Total number of invalid requests since process started counter
haproxy_frontend_requests_denied_total Total number of denied requests since process started counter
haproxy_frontend_responses_denied_total Total number of denied responses since process started counter
haproxy_frontend_sessions_total Total number of sessions since process started counter
haproxy_frontend_status Current status of the service, per state label value. gauge
haproxy_process_active_peers Current number of verified active peers connections on the current worker process gauge
haproxy_process_build_info Build info gauge
haproxy_process_busy_polling_enabled 1 if busy-polling is currently in use on the worker process, otherwise zero (config.busy-polling) gauge
haproxy_process_bytes_out_rate Number of bytes emitted by current worker process over the last second gauge
haproxy_process_bytes_out_total Total number of bytes emitted by current worker process since started counter
haproxy_process_connected_peers Current number of peers having passed the connection step on the current worker process gauge
haproxy_process_connections_total Total number of connections on this worker process since started counter
haproxy_process_current_backend_ssl_key_rate Number of SSL keys created on backends in this worker process over the last second gauge
haproxy_process_current_connection_rate Number of front connections created on this worker process over the last second gauge
haproxy_process_current_connections Current number of connections on this worker process gauge
haproxy_process_current_frontend_ssl_key_rate Number of SSL keys created on frontends in this worker process over the last second gauge
haproxy_process_current_run_queue Total number of active tasks+tasklets in the current worker process gauge
haproxy_process_current_session_rate Number of sessions created on this worker process over the last second gauge
haproxy_process_current_ssl_connections Current number of SSL endpoints on this worker process (front+back) gauge
haproxy_process_current_ssl_rate Number of SSL connections created on this worker process over the last second gauge
haproxy_process_current_tasks Total number of tasks in the current worker process (active + sleeping) gauge
haproxy_process_current_zlib_memory Amount of memory currently used by HTTP compression on the current worker process (in bytes) gauge
haproxy_process_dropped_logs_total Total number of dropped logs for current worker process since started counter
haproxy_process_failed_resolutions Total number of failed DNS resolutions in current worker process since started counter
haproxy_process_frontend_ssl_reuse Percent of frontend SSL connections which did not require a new key gauge
haproxy_process_hard_max_connections Hard limit on the number of per-process connections (imposed by Memmax_MB or ulimit -n) gauge
haproxy_process_http_comp_bytes_in_total Number of bytes submitted to the HTTP compressor in this worker process over the last second counter
haproxy_process_http_comp_bytes_out_total Number of bytes emitted by the HTTP compressor in this worker process over the last second counter
haproxy_process_idle_time_percent Percentage of last second spent waiting in the current worker thread gauge
haproxy_process_jobs Current number of active jobs on the current worker process (frontend connections, master connections, listeners) gauge
haproxy_process_limit_connection_rate Hard limit for ConnRate (global.maxconnrate) gauge
haproxy_process_limit_http_comp Limit of CompressBpsOut beyond which HTTP compression is automatically disabled gauge
haproxy_process_limit_session_rate Hard limit for SessRate (global.maxsessrate) gauge
haproxy_process_limit_ssl_rate Hard limit for SslRate (global.maxsslrate) gauge
haproxy_process_listeners Current number of active listeners on the current worker process gauge
haproxy_process_max_backend_ssl_key_rate Highest SslBackendKeyRate reached on this worker process since started (in SSL keys per second) gauge
haproxy_process_max_connection_rate Highest ConnRate reached on this worker process since started (in connections per second) gauge
haproxy_process_max_connections Hard limit on the number of per-process connections (configured or imposed by ulimit -n) gauge
haproxy_process_max_fds Hard limit on the number of per-process file descriptors gauge
haproxy_process_max_frontend_ssl_key_rate Highest SslFrontendKeyRate reached on this worker process since started (in SSL keys per second) gauge
haproxy_process_max_memory_bytes Worker process’s hard limit on memory usage in byes (-m on command line) gauge
haproxy_process_max_pipes Hard limit on the number of pipes for splicing, 0=unlimited gauge
haproxy_process_max_session_rate Highest SessRate reached on this worker process since started (in sessions per second) gauge
haproxy_process_max_sockets Hard limit on the number of per-process sockets gauge
haproxy_process_max_ssl_connections Hard limit on the number of per-process SSL endpoints (front+back), 0=unlimited gauge
haproxy_process_max_ssl_rate Highest SslRate reached on this worker process since started (in connections per second) gauge
haproxy_process_max_zlib_memory Limit on the amount of memory used by HTTP compression above which it is automatically disabled (in bytes, see global.maxzlibmem) gauge
haproxy_process_nbproc Number of started worker processes (historical, always 1) gauge
haproxy_process_nbthread Number of started threads (global.nbthread) gauge
haproxy_process_pipes_free_total Current number of allocated and available pipes in this worker process counter
haproxy_process_pipes_used_total Current number of pipes in use in this worker process counter
haproxy_process_pool_allocated_bytes Amount of memory allocated in pools (in bytes) gauge
haproxy_process_pool_failures_total Number of failed pool allocations since this worker was started counter
haproxy_process_pool_used_bytes Amount of pool memory currently used (in bytes) gauge
haproxy_process_recv_logs_total Total number of log messages received by log-forwarding listeners on this worker process since started counter
haproxy_process_relative_process_id Relative worker process number (1) gauge
haproxy_process_requests_total Total number of requests on this worker process since started counter
haproxy_process_spliced_bytes_out_total Total number of bytes emitted by current worker process through a kernel pipe since started counter
haproxy_process_ssl_cache_lookups_total Total number of SSL session ID lookups in the SSL session cache on this worker since started counter
haproxy_process_ssl_cache_misses_total Total number of SSL session ID lookups that didn’t find a session in the SSL session cache on this worker since started counter
haproxy_process_ssl_connections_total Total number of SSL endpoints on this worker process since started (front+back) counter
haproxy_process_start_time_seconds Start time in seconds gauge
haproxy_process_stopping 1 if the worker process is currently stopping, otherwise zero gauge
haproxy_process_unstoppable_jobs Current number of unstoppable jobs on the current worker process (master connections) gauge
haproxy_process_uptime_seconds How long ago this worker process was started (seconds) gauge
haproxy_resolver_any_err Any errors gauge
haproxy_resolver_cname CNAME gauge
haproxy_resolver_cname_error CNAME error gauge
haproxy_resolver_invalid Invalid gauge
haproxy_resolver_nx NX gauge
haproxy_resolver_other Other gauge
haproxy_resolver_outdated Outdated gauge
haproxy_resolver_refused Refused gauge
haproxy_resolver_send_error Send error gauge
haproxy_resolver_sent Sent gauge
haproxy_resolver_timeout Timeout gauge
haproxy_resolver_too_big Too big gauge
haproxy_resolver_truncated Truncated gauge
haproxy_resolver_update Update gauge
haproxy_resolver_valid Valid gauge
haproxy_server_active Total number of active UP servers with a non-zero weight gauge
haproxy_server_backup Total number of backup UP servers with a non-zero weight gauge
haproxy_server_bytes_in_total Total number of request bytes since process started counter
haproxy_server_bytes_out_total Total number of response bytes since process started counter
haproxy_server_check_code layer5-7 code, if available of the last health check. gauge
haproxy_server_check_duration_seconds Total duration of the latest server health check, in seconds. gauge
haproxy_server_check_failures_total Total number of failed individual health checks per server/backend, since the worker process started counter
haproxy_server_check_last_change_seconds How long ago the last server state changed, in seconds gauge
haproxy_server_check_status Status of last health check, per state label value. gauge
haproxy_server_check_up_down_total Total number of failed checks causing UP to DOWN server transitions, per server/backend, since the worker process started counter
haproxy_server_client_aborts_total Total number of requests or connections aborted by the client since the worker process started counter
haproxy_server_connect_time_average_seconds Avg. connect time for last 1024 successful connections. gauge
haproxy_server_connection_attempts_total Total number of outgoing connection attempts on this backend/server since the worker process started counter
haproxy_server_connection_errors_total Total number of failed connections to server since the worker process started counter
haproxy_server_connection_reuses_total Total number of reused connection on this backend/server since the worker process started counter
haproxy_server_current_queue Number of current queued connections gauge
haproxy_server_current_sessions Number of current sessions on the frontend, backend or server gauge
haproxy_server_current_throttle Throttling ratio applied to a server’s maxconn and weight during the slowstart period (0 to 100%) gauge
haproxy_server_downtime_seconds_total Total time spent in DOWN state, for server or backend counter
haproxy_server_failed_header_rewriting_total Total number of failed HTTP header rewrites since the worker process started counter
haproxy_server_http_responses_total Total number of HTTP responses with status 100-199 returned by this object since the worker process started counter
haproxy_server_idle_connections_current Current number of idle connections available for reuse on this server gauge
haproxy_server_idle_connections_limit Limit on the number of available idle connections on this server (server ‘pool_max_conn’ directive) gauge
haproxy_server_internal_errors_total Total number of internal errors since process started counter
haproxy_server_last_session_seconds How long ago some traffic was seen on this object on this worker process, in seconds gauge
haproxy_server_limit_sessions Frontend/listener/server’s maxconn, backend’s fullconn gauge
haproxy_server_loadbalanced_total Total number of requests routed by load balancing since the worker process started (ignores queue pop and stickiness) counter
haproxy_server_max_connect_time_seconds Maximum observed time spent waiting for a connection to complete gauge
haproxy_server_max_queue Highest value of queued connections encountered since process started gauge
haproxy_server_max_queue_time_seconds Maximum observed time spent in the queue gauge
haproxy_server_max_response_time_seconds Maximum observed time spent waiting for a server response gauge
haproxy_server_max_session_rate Highest value of sessions per second observed since the worker process started gauge
haproxy_server_max_sessions Highest value of current sessions encountered since process started gauge
haproxy_server_max_total_time_seconds Maximum observed total request+response time (request+queue+connect+response+processing) gauge
haproxy_server_need_connections_current Estimated needed number of connections gauge
haproxy_server_queue_limit Limit on the number of connections in queue, for servers only (maxqueue argument) gauge
haproxy_server_queue_time_average_seconds Avg. queue time for last 1024 successful connections. gauge
haproxy_server_redispatch_warnings_total Total number of server redispatches due to connection failures since the worker process started counter
haproxy_server_response_errors_total Total number of invalid responses since the worker process started counter
haproxy_server_response_time_average_seconds Avg. response time for last 1024 successful connections. gauge
haproxy_server_responses_denied_total Total number of denied responses since process started counter
haproxy_server_retry_warnings_total Total number of server connection retries since the worker process started counter
haproxy_server_safe_idle_connections_current Current number of safe idle connections gauge
haproxy_server_server_aborts_total Total number of requests or connections aborted by the server since the worker process started counter
haproxy_server_sessions_total Total number of sessions since process started counter
haproxy_server_status Current status of the service, per state label value. gauge
haproxy_server_total_time_average_seconds Avg. total time for last 1024 successful connections. gauge
haproxy_server_unsafe_idle_connections_current Current number of unsafe idle connections gauge
haproxy_server_used_connections_current Current number of connections in use gauge
haproxy_server_uweight Server’s user weight, or sum of active servers’ user weights for a backend gauge
haproxy_server_weight Server’s effective weight, or sum of active servers’ effective weights for a backend gauge

Do you have any suggestions on how we can improve the content of this page?