The only agent that thinks for itself

Autonomous Monitoring with self-learning AI built-in, operating independently across your entire stack.

Unlimited Metrics & Logs
Machine learning & MCP
5% CPU, 150MB RAM
3GB disk, >1 year retention
800+ integrations, zero config
Dashboards, alerts out of the box
> Discover Netdata Agents

Centralized metrics streaming and storage

Aggregate metrics from multiple agents into centralized Parent nodes for unified monitoring across your infrastructure.

Stream from unlimited agents
Long-term data retention
High availability clustering
Data replication & backup
Scalable architecture
Enterprise-grade security
> Learn about Parents

Fully managed cloud platform

Access your monitoring data from anywhere with our SaaS platform. No infrastructure to manage, automatic updates, and global availability.

Zero infrastructure management
99.9% uptime SLA
Global data centers
Automatic updates & patches
Enterprise SSO & RBAC
SOC2 & ISO certified
> Explore Netdata Cloud

Deploy Netdata Cloud in your infrastructure

Run the full Netdata Cloud platform on-premises for complete data sovereignty and compliance with your security policies.

Complete data sovereignty
Air-gapped deployment
Custom compliance controls
Private network integration
Dedicated support team
Kubernetes & Docker support
> Learn about Cloud On-Premises

Powerful, intuitive monitoring interface

Modern, responsive UI built for real-time troubleshooting with customizable dashboards and advanced visualization capabilities.

Real-time chart updates
Customizable dashboards
Dark & light themes
Advanced filtering & search
Responsive on all devices
Collaboration features
> Explore Netdata UI

Monitor on the go

Native iOS and Android apps bring full monitoring capabilities to your mobile device with real-time alerts and notifications.

iOS & Android apps
Push notifications
Touch-optimized interface
Offline data access
Biometric authentication
Widget support
> Download apps

The future of infrastructure observability

See our strategic direction across AI-native observability, full-stack signals, operational intelligence, and enterprise platform maturity.

AI-native observability
Full-stack signal coverage
Operational intelligence
Enterprise platform maturity
Agent releases every 6 weeks
Cloud continuous delivery
> Explore Product Roadmap

Best energy efficiency

True real-time per-second

100% automated zero config

Centralized observability

Multi-year retention

High availability built-in

Zero maintenance

Always up-to-date

Enterprise security

Complete data control

Air-gap ready

Compliance certified

Millisecond responsiveness

Infinite zoom & pan

Works on any device

Native performance

Instant alerts

Monitor anywhere

AI-native observability

Continuous delivery

Open source foundation

80% Faster Incident Resolution

AI-powered troubleshooting from detection, to root cause and blast radius identification, to reporting.

True Real-Time and Simple, even at Scale

Linearly and infinitely scalable full-stack observability, that can be deployed even mid-crisis.

90% Cost Reduction, Full Fidelity

Instead of centralizing the data, Netdata distributes the code, eliminating pipelines and complexity.

See and Map Your Entire Network

Live topology, flow analytics, and SNMP device and trap monitoring — unified with your full-stack observability.

Control Without Surrender

SOC 2 Type 2 certified with every metric kept on your infrastructure.

Integrations

800+ collectors and notification channels, auto-discovered and ready out of the box.

800+ data collectors
Auto-discovery & zero config
Cloud, infra, app protocols
Notifications out of the box
> Explore integrations
Real Results
46% Cost Reduction

Reduced monitoring costs by 46% while cutting staff overhead by 67%.

— Leonardo Antunez, Codyas

Zero Pipeline

No data shipping. No central storage costs. Query at the edge.

From Our Users
"Out-of-the-Box"

So many out-of-the-box features! I mostly don't have to develop anything.

— Simon Beginn, LANCOM Systems

No Query Language

Point-and-click troubleshooting. No PromQL, no LogQL, no learning curve.

Enterprise Ready
67% Less Staff, 46% Cost Cut

Enterprise efficiency without enterprise complexity—real ROI from day one.

— Leonardo Antunez, Codyas

SOC 2 Type 2 Certified

Zero data egress. Only metadata reaches the cloud. Your metrics stay on your infrastructure.

Full Coverage
800+ Collectors

Auto-discovered and configured. No manual setup required.

Any Notification Channel

Slack, PagerDuty, Teams, email, webhooks—all built-in.

Built for the People Who Get Paged

Because 3am alerts deserve instant answers, not hour-long hunts.

Every Industry Has Rules. We Master Them.

See how healthcare, finance, and government teams cut monitoring costs 90% while staying audit-ready.

Monitor Any Technology. Configure Nothing.

Install the agent. It already knows your stack.
From Our Users
"A Rare Unicorn"

Netdata gives more than you invest in it. A rare unicorn that obeys the Pareto rule.

— Eduard Porquet Mateu, TMB Barcelona

99% Downtime Reduction

Reduced website downtime by 99% and cloud bill by 30% using Netdata alerts.

— Falkland Islands Government

Real Savings
30% Cloud Cost Reduction

Optimized resource allocation based on Netdata alerts cut cloud spending by 30%.

— Falkland Islands Government

46% Cost Cut

Reduced monitoring staff by 67% while cutting operational costs by 46%.

— Codyas

Real Coverage
"Plugin for Everything"

Netdata has agent capacity or a plugin for everything, including Windows and Kubernetes.

— Eduard Porquet Mateu, TMB Barcelona

"Out-of-the-Box"

So many out-of-the-box features! I mostly don't have to develop anything.

— Simon Beginn, LANCOM Systems

Real Speed
Troubleshooting in 30 Seconds

From 2-3 minutes to 30 seconds—instant visibility into any node issue.

— Matthew Artist, Nodecraft

20% Downtime Reduction

20% less downtime and 40% budget optimization from out-of-the-box monitoring.

— Simon Beginn, LANCOM Systems

Pay per Node. Unlimited Everything Else.

One price per node. Unlimited metrics, logs, users, and retention. No per-GB surprises.

Free tier—forever
No metric limits or caps
Retention you control
Cancel anytime
> See pricing plans

What's Your Monitoring Really Costing You?

Most teams overpay by 40-60%. Let's find out why.

Expose hidden metric charges
Calculate tool consolidation
Customers report 30-67% savings
Results in under 60 seconds
> See what you're really paying

Your Infrastructure Is Unique. Let's Talk.

Because monitoring 10 nodes is different from monitoring 10,000.

On-prem & air-gapped deployment
Volume pricing & agreements
Architecture review for your scale
Compliance & security support
> Start a conversation

Monitoring That Sells Itself

Deploy in minutes. Impress clients in hours. Earn recurring revenue for years.

30-second live demos close deals
Zero config = zero support burden
Competitive margins & deal protection
Response in 48 hours
> Apply to partner

Per-Second Metrics at Homelab Prices

Same engine, same dashboards, same ML. Just priced for tinkerers.

Community: Free forever · 5 nodes · non-commercial
Homelab: $90/yr · unlimited nodes · fair usage
> Get the Homelab Plan

$1,000 Per Referral. Unlimited Referrals.

Your colleagues get 10% off. You get 10% commission. Everyone wins.

10% of subscriptions, up to $1,000 each
Track earnings inside Netdata Cloud
PayPal/Venmo payouts in 3-4 weeks
No caps, no complexity
> Get your referral link
Cost Proof
40% Budget Optimization

"Netdata's significant positive impact" — LANCOM Systems

Calculate Your Savings

Compare vs Datadog, Grafana, Dynatrace

Savings Proof
46% Cost Reduction

"Cut costs by 46%, staff by 67%" — Codyas

30% Cloud Bill Savings

"Reduced cloud bill by 30%" — Falkland Islands Gov

Enterprise Proof
"Better Than Combined Alternatives"

"Better observability with Netdata than combining other tools." — TMB Barcelona

Real Engineers, <24h Response

DPA, SLAs, on-prem, volume pricing

Why Partners Win
Demo Live Infrastructure

One command, 30 seconds, real data—no sandbox needed

Zero Tickets, High Margins

Auto-config + per-node pricing = predictable profit

Homelab Ready
Free Video Course

8-episode Netdata tutorial by LearnLinux.tv

76k+ GitHub Stars

3rd most starred monitoring project

Worth Recommending
Product That Delivers

Customers report 40-67% cost cuts, 99% downtime reduction

Zero Risk to Your Rep

Free tier lets them try before they buy

AI Support Assistant, Available 24/7

Nedi has access to all official documentation, source code, and resources. Ask any question about Netdata—responds in your language.

Deployment & configuration
Troubleshooting & sizing
Alerts & notifications
Evidence-based answers
> Ask Nedi now

Never Fight Fires Alone

Docs, community, and expert help—pick your path to resolution.

Learn.netdata.cloud docs
Discord, Forums, GitHub
Premium support available
> Get answers now

60 Seconds to First Dashboard

One command to install. Zero config. 850+ integrations documented.

Linux, Windows, K8s, Docker
Auto-discovers your stack
> Read our documentation

76,000+ Engineers Strong

615+ contributors. 1.5M daily downloads. One mission: simplify observability.

Per-Second. 90% Cheaper. Data Stays Home.

Side-by-side comparisons: costs, real-time granularity, and data sovereignty for every major tool.

See why teams switch from Datadog, Prometheus, Grafana, and more.

> Browse all comparisons
Edge-Native Observability, Born Open Source
Per-second visibility, ML on every metric, and data that never leaves your infrastructure.
Founded in 2016
615+ contributors worldwide
Remote-first, engineering-driven
Open source first
> Read our story
Promises We Publish—and Prove
12 principles backed by open code, independent validation, and measurable outcomes.
Open source, peer-reviewed
Zero config, instant value
Data sovereignty by design
Aligned pricing, no surprises
> See all 12 principles
Edge-Native, AI-Ready, 100% Open
76k+ stars. Full ML, AI, and automation—GPLv3+, not premium add-ons.
76,000+ GitHub stars
GPLv3+ licensed forever
ML on every metric, included
Zero vendor lock-in
> Explore our open source
Build Real-Time Observability for the World
Remote-first team shipping per-second monitoring with ML on every metric.
Remote-first, fully distributed
Open source (76k+ stars)
Challenging technical problems
Your code on millions of systems
> See open roles
Meet the Team Behind Netdata
Conferences, meetups, and tradeshows where you can see Netdata in action and talk to the engineers who build it.
Live demos and deep dives
Book 1-on-1 meetings
Talks and panel sessions
Event recaps and photos
> See all events
Talk to a Netdata Human in <24 Hours
Sales, partnerships, press, or professional services—real engineers, fast answers.
Discuss your observability needs
Pricing and volume discounts
Partnership opportunities
Media and press inquiries
> Book a conversation
Your Data. Your Rules.
On-prem data, cloud control plane, transparent terms.
Trust & Scale
76,000+ GitHub Stars

One of the most popular open-source monitoring projects

SOC 2 Type 2 Certified

Enterprise-grade security and compliance

Data Sovereignty

Your metrics stay on your infrastructure

Validated
University of Amsterdam

"Most energy-efficient monitoring solution" — ICSOC 2023, peer-reviewed

ADASTEC (Autonomous Driving)

"Doesn't miss alerts—mission-critical trust for safety software"

Community Stats
615+ Contributors

Global community improving monitoring for everyone

1.5M+ Downloads/Day

Trusted by teams worldwide

GPLv3+ Licensed

Free forever, fully open source agent

Why Join?
Remote-First

Work from anywhere, async-friendly culture

Impact at Scale

Your work helps millions of systems

HAProxy Prometheus icon

HAProxy Prometheus

HAProxy Prometheus

Plugin: go.d.plugin Module: prometheus

Overview

Monitor HAProxy process, frontend, listener, backend, server, and stick-table behavior through its Prometheus endpoint.

Netdata periodically scrapes the HAProxy Prometheus endpoint with the generic Prometheus collector and applies the built-in haproxy profile.

This collector is supported on all platforms.

This collector supports collecting metrics from multiple instances of this integration, including remote instances.

Default Behavior

Auto-Detection

By default, it detects instances running on the local host by trying to connect to known ports that are allocated to exporters.

Limits

The default configuration for this integration does not impose any limits on data collection.

Performance Impact

The default configuration for this integration is not expected to impose a significant performance impact on the system.

Setup

You can configure the prometheus collector in two ways:

MethodBest forHow to
UIFast setup without editing filesGo to Nodes → Configure this node → Collectors → Jobs, search for prometheus, then click + to add a job.
FileIf you prefer configuring via file, or need to automate deployments (e.g., with Ansible)Edit go.d/prometheus.conf and add a job.

Important

UI configuration requires paid Netdata Cloud plan.

Prerequisites

Enable the HAProxy Prometheus endpoint

Configure HAProxy’s built-in Prometheus exporter as described in the HAProxy documentation.

Configuration

Options

The following options can be defined globally: update_every, autodetection_retry.

GroupOptionDescriptionDefaultRequired
Collectionupdate_everyData collection interval (seconds).10no
autodetection_retryAutodetection retry interval (seconds). Set 0 to disable.0no
TargeturlTarget endpoint URL.yes
timeoutHTTP request timeout (seconds).10no
expected_prefixIf set, the job’s check passes only when at least one post-job, pre-profile metric name starts with this prefix. Guards against scraping an unexpected endpoint; profile-owned relabeling cannot satisfy it.no
CustomizationappApplication name used as the app segment of chart contexts (prometheus.<app>.<metric>). When unset, it is taken from a matched profile, otherwise it falls back to the job name.no
FiltersselectorTime series selector (filter).no
Limitsmax_time_seriesGlobal time series limit applied after job and profile relabeling. If the final output exceeds it, the data is not processed.2000no
max_time_series_per_metricPer-metric time series limit applied to final metric families. Metrics exceeding it are skipped.200no
Customizationfallback_typeJob-level fallback type overrides for untyped metrics.no
relabelingJob-owned Prometheus-compatible metric relabeling, applied before profile selection.no
profilesCurated, exporter-specific chart profiles with optional untyped classification, profile-owned normalization, and scoped fallback-chart policy. User profiles may constrain unmatched fallback charts; stock profiles preserve unknown future families. Disable profiles with mode none.autono
HTTP AuthusernameUsername for Basic HTTP authentication.no
passwordPassword for Basic HTTP authentication.no
bearer_token_filePath to a file containing a bearer token (used for Authorization: Bearer).no
TLStls_skip_verifySkip TLS certificate and hostname verification (insecure).nono
tls_caPath to CA bundle used to validate the server certificate.no
tls_certPath to client TLS certificate (for mTLS).no
tls_keyPath to client TLS private key (for mTLS).no
Proxyproxy_urlHTTP proxy URL.no
proxy_usernameUsername for proxy Basic HTTP authentication.no
proxy_passwordPassword for proxy Basic HTTP authentication.no
RequestmethodHTTP method to use.GETno
bodyRequest body (e.g., for POST/PUT).no
headersAdditional HTTP headers (one per line as key: value).no
not_follow_redirectsDo not follow HTTP redirects.nono
force_http2Force HTTP/2 (including h2c over TCP).nono
Virtual NodevnodeAssociates this data collection job with a Virtual Node.no

selector

This option allows you to filter out unwanted time series. Only metrics matching the selector will be collected.

  • Logic: (pattern1 OR pattern2) AND !(pattern3 or pattern4)
  • Pattern syntax: selector.
  • Option syntax:
selector:
  allow:
    - pattern1
    - pattern2
  deny:
    - pattern3
    - pattern4

fallback_type

This job option allows you to process untyped metrics as Counter or Gauge instead of ignoring them. Classification uses the post-job, pre-profile metric name. Profile relabeling preserves the selected type but cannot create or change it by renaming the final metric.

Selected profiles may provide exporter-owned fallback_type defaults inside their own match scope. Job gauge rules take precedence over job counter rules, and both job rule sets take precedence over every profile rule. Use them for deployment-specific overrides rather than exporter behavior that belongs in a profile. Keep patterns narrow: a broad job rule such as gauge: ['*'] overrides profile counter classifications. Blank patterns and patterns with leading or trailing whitespace are rejected.

fallback_type:
  counter:
    - metric_name_pattern1
    - metric_name_pattern2
  gauge:
    - metric_name_pattern3
    - metric_name_pattern4

relabeling

A list of job-owned relabeling blocks, applied after selector and before profile selection. Each block applies a list of Prometheus metric_relabel_configs rules to the metrics whose name matches match. Profiles may own the same block format for exporter normalization after selection. See the relabeling reference for the full action set and more examples.

  • match: Netdata simple patterns matched against the full metric name — including any _bucket/_sum/_count suffix, so prefer globs like app_lat* over an exact app_lat (space-separated; * matches any sequence, ? any character, a leading ! negates). Use * to target every metric. Required.
  • metric_relabel_configs: Prometheus relabel rules (source_labels, separator, regex, modulus, target_label, replacement, action), applied in order to the scraped samples before charts are built.

Relabeling that would corrupt a histogram or summary — splitting it, dropping a component, mutating the le/quantile label, or merging two families — is rejected.

relabeling:
  - match: 'http_*'
    metric_relabel_configs:
      - source_labels: [code]
        regex: '(\d)\d\d'
        target_label: code_class
        replacement: '${1}xx'

profiles

Profiles ship curated charts for recognized exporters – see the profile format for the file format and how to author your own. profiles.mode selects them:

  • auto (default): every profile whose match hits at least one scraped metric.
  • exact: only the profiles named in mode_exact.entries (each must match, or the job fails its check).
  • combined: auto plus the profiles named in mode_combined.entries.
  • none: no profiles — generic autogen charts only (the pre-profile behavior).

Selection uses post-job, pre-profile family names. A selected profile may carry fallback_type rules that classify untyped scalar families inside its match scope and relabeling blocks that normalize matching source families automatically before chart routing. Job fallback policy takes precedence; conflicting profile rules use the same ordering as normalization. Each original family is processed only by the first applicable profile normalizer: profile-name order in auto, configured entry order in exact, and configured entries followed by remaining auto profiles in name order in combined. Later profile pipelines do not see the family. All selected templates consume the same final names and labels; the collector does not create a private metric stream per profile.

Only the block matching the selected mode (mode_exact or mode_combined) is read; entries under the other block are ignored. Metrics not covered by an authored profile chart keep their generic autogen charts unless an applicable profile autogen.selector rejects them. Every selector is limited to its profile’s match scope; when scopes overlap, every applicable selector must accept the series. This changes fallback charts only; use selector or a relabeling drop rule to discard samples. Stock profiles leave unknown future families eligible for generic fallback; closed fallback selectors are a user-owned deployment policy, not a stock-profile authoring pattern.

profiles:
  mode: exact
  mode_exact:
    entries:
      - name: haproxy

via UI

Configure the prometheus collector from the Netdata web interface:

  1. Go to Nodes.
  2. Select the node where you want the prometheus data-collection job to run and click the :gear: (Configure this node). That node will run the data collection.
  3. The Collectors → Jobs view opens by default.
  4. In the Search box, type prometheus (or scroll the list) to locate the prometheus collector.
  5. Click the + next to the prometheus collector to add a new job.
  6. Fill in the job fields, then click Test to verify the configuration and Submit to save.
    • Test runs the job with the provided settings and shows whether data can be collected.
    • If it fails, an error message appears with details (for example, connection refused, timeout, or command execution errors), so you can adjust and retest.

via File

The configuration file name for this integration is go.d/prometheus.conf.

The file format is YAML. Generally, the structure is:

update_every: 1
autodetection_retry: 0
jobs:
  - name: some_name1
  - name: some_name2

You can edit the configuration file using the edit-config script from the Netdata config directory.

cd /etc/netdata 2>/dev/null || cd /opt/netdata/etc/netdata
sudo ./edit-config go.d/prometheus.conf
Examples
HAProxy Prometheus

Collect HAProxy metrics with the automatically matched stock profile.

jobs:
  - name: haproxy
    url: http://127.0.0.1:8404/metrics
    expected_prefix: haproxy_

Metrics

The built-in Prometheus profiles on this page map Prometheus metrics into 204 curated Netdata charts across the primary and applicable supporting profiles. The tables are generated from the same profile design and runtime chart contracts used by the Agent.

Eligible metrics that are not covered by a curated chart, including future exporter metrics, can still be collected through the generic Prometheus autogeneration behavior. This catalogue describes curated profile coverage; it is not an allowlist of every metric that the collector can render.

HAProxy Prometheus

Curated process, frontend, listener, backend, server, and stick-table metrics from the HAProxy Prometheus exporter.

Process

Prometheus metricNetdata chartDimensionUnitScope
haproxy_process_recv_logs_totalProcess / Activity — Received Logsvaluelogs/sHAProxy worker process
haproxy_process_relative_process_idProcess / Activity — Relative Process IDvalueprocess idHAProxy worker process
haproxy_process_requests_totalProcess / Activity — Requestsvaluerequests/sHAProxy worker process
haproxy_process_nbthreadProcess / Activity — ThreadsvaluethreadsHAProxy worker process
haproxy_process_nbprocProcess / Activity — Worker ProcessesvalueprocessesHAProxy worker process
haproxy_process_current_zlib_memoryProcess / Compression — Current Zlib MemoryvaluebytesHAProxy worker process
haproxy_process_limit_http_compProcess / Compression — HTTP Compression Limitvaluebytes/sHAProxy worker process
haproxy_process_max_zlib_memoryProcess / Compression — Max Zlib MemoryvaluebytesHAProxy worker process
haproxy_process_connections_totalProcess / Connections — Connectionsvalueconnections/sHAProxy worker process
haproxy_process_current_connection_rateProcess / Connections — Current Connection Ratevalueconnections/sHAProxy worker process
haproxy_process_current_connectionsProcess / Connections — Current ConnectionsvalueconnectionsHAProxy worker process
haproxy_process_hard_max_connectionsProcess / Connections — Hard Max ConnectionsvalueconnectionsHAProxy worker process
haproxy_process_limit_connection_rateProcess / Connections — Limit Connection Ratevalueconnections/sHAProxy worker process
haproxy_process_max_connection_rateProcess / Connections — Max Connection Ratevalueconnections/sHAProxy worker process
haproxy_process_max_connectionsProcess / Connections — Max ConnectionsvalueconnectionsHAProxy worker process
haproxy_process_max_fdsProcess / Connections — Max FDsvaluefile descriptorsHAProxy worker process
haproxy_process_max_pipesProcess / Connections — Max PipesvaluepipesHAProxy worker process
haproxy_process_max_socketsProcess / Connections — Max SocketsvaluesocketsHAProxy worker process
haproxy_process_pipes_used_totalProcess / Connections — PipesusedpipesHAProxy worker process
haproxy_process_pipes_free_totalProcess / Connections — PipesfreepipesHAProxy worker process
haproxy_process_dropped_logs_totalProcess / Errors — Dropped Logsvaluelogs/sHAProxy worker process
haproxy_process_failed_resolutionsProcess / Errors — Failed Resolutionsvalueerrors/sHAProxy worker process
haproxy_process_total_warningsProcess / Errors — Warningsvaluewarnings/sHAProxy worker process
haproxy_process_active_peersProcess / Health — Active PeersvaluepeersHAProxy worker process
haproxy_process_max_memory_bytesProcess / Memory — Max Memory BytesvaluebytesHAProxy worker process
haproxy_process_pool_allocated_bytesProcess / Memory — Pool Allocated BytesvaluebytesHAProxy worker process
haproxy_process_pool_failures_totalProcess / Memory — Pool Failuresvaluefailures/sHAProxy worker process
haproxy_process_pool_used_bytesProcess / Memory — Pool Used BytesvaluebytesHAProxy worker process
haproxy_process_current_run_queueProcess / Queue — Current Run QueuevaluetasksHAProxy worker process
haproxy_process_current_backend_ssl_key_rateProcess / SSL — Current Backend SSL Key Ratevaluekeys/sHAProxy worker process
haproxy_process_current_frontend_ssl_key_rateProcess / SSL — Current Frontend SSL Key Ratevaluekeys/sHAProxy worker process
haproxy_process_current_ssl_connectionsProcess / SSL — Current SSL ConnectionsvalueconnectionsHAProxy worker process
haproxy_process_current_ssl_rateProcess / SSL — Current SSL Ratevalueconnections/sHAProxy worker process
haproxy_process_frontend_ssl_reuseProcess / SSL — Frontend SSL ReusevaluepercentageHAProxy worker process
haproxy_process_limit_ssl_rateProcess / SSL — Limit SSL Ratevalueconnections/sHAProxy worker process
haproxy_process_max_backend_ssl_key_rateProcess / SSL — Max Backend SSL Key Ratevaluekeys/sHAProxy worker process
haproxy_process_max_frontend_ssl_key_rateProcess / SSL — Max Frontend SSL Key Ratevaluekeys/sHAProxy worker process
haproxy_process_max_ssl_connectionsProcess / SSL — Max SSL ConnectionsvalueconnectionsHAProxy worker process
haproxy_process_max_ssl_rateProcess / SSL — Max SSL Ratevalueconnections/sHAProxy worker process
haproxy_process_ssl_cache_lookups_totalProcess / SSL — SSL Cache Lookupsvaluelookups/sHAProxy worker process
haproxy_process_ssl_cache_misses_totalProcess / SSL — SSL Cache Missesvalueevents/sHAProxy worker process
haproxy_process_ssl_connections_totalProcess / SSL — SSL Connectionsvalueconnections/sHAProxy worker process
haproxy_process_connected_peersProcess / Scheduler — Connected PeersvaluepeersHAProxy worker process
haproxy_process_current_tasksProcess / Scheduler — Current TasksvaluetasksHAProxy worker process
haproxy_process_jobsProcess / Scheduler — JobsvaluejobsHAProxy worker process
haproxy_process_listenersProcess / Scheduler — ListenersvaluelistenersHAProxy worker process
haproxy_process_unstoppable_jobsProcess / Scheduler — Unstoppable JobsvaluejobsHAProxy worker process
haproxy_process_current_session_rateProcess / Sessions — Current Session Ratevaluesessions/sHAProxy worker process
haproxy_process_limit_session_rateProcess / Sessions — Limit Session Ratevaluesessions/sHAProxy worker process
haproxy_process_max_session_rateProcess / Sessions — Max Session Ratevaluesessions/sHAProxy worker process
haproxy_process_busy_polling_enabledProcess / Status — Busy Polling Enabledvalue{status}HAProxy worker process
haproxy_process_stoppingProcess / Status — Stoppingvalue{status}HAProxy worker process
haproxy_process_idle_time_percentProcess / Timing — Idle Time PercentvaluepercentageHAProxy worker process
haproxy_process_uptime_secondsProcess / Timing — Uptime SecondsvaluesecondsHAProxy worker process
haproxy_process_bytes_out_totalProcess / Traffic — Bytes Outvaluebytes/sHAProxy worker process
haproxy_process_bytes_out_rateProcess / Traffic — Bytes Out Ratevaluebytes/sHAProxy worker process
haproxy_process_http_comp_bytes_in_totalProcess / Traffic — HTTP Compression Bytes Invaluebytes/sHAProxy worker process
haproxy_process_http_comp_bytes_out_totalProcess / Traffic — HTTP Compression Bytes Outvaluebytes/sHAProxy worker process
haproxy_process_spliced_bytes_out_totalProcess / Traffic — Spliced Bytes Outvaluebytes/sHAProxy worker process

Frontends

Prometheus metricNetdata chartDimensionUnitScope
haproxy_frontend_http_comp_responses_totalFrontends / Compression — HTTP Compression Responsesvalueresponses/sHAProxy frontend
haproxy_frontend_connections_totalFrontends / Connections — Connectionsvalueconnections/sHAProxy frontend
haproxy_frontend_connections_rate_maxFrontends / Connections — Connections Rate Maxvalueconnections/sHAProxy frontend
haproxy_frontend_denied_connections_totalFrontends / Connections — Denied Connectionsvalueconnections/sHAProxy frontend
haproxy_frontend_request_errors_totalFrontends / Errors — Errorsrequesterrors/sHAProxy frontend
haproxy_frontend_failed_header_rewriting_totalFrontends / Errors — Errorsheader_rewritingerrors/sHAProxy frontend
haproxy_frontend_internal_errors_totalFrontends / Errors — Errorsinternalerrors/sHAProxy frontend
haproxy_frontend_requests_denied_totalFrontends / Errors — Requests Deniedvaluerequests/sHAProxy frontend
haproxy_frontend_responses_denied_totalFrontends / Errors — Responses Deniedvalueresponses/sHAProxy frontend
haproxy_frontend_http_cache_hits_totalFrontends / HTTP — HTTP Cache Hitsvaluehits/sHAProxy frontend
haproxy_frontend_http_cache_lookups_totalFrontends / HTTP — HTTP Cache Lookupsvaluelookups/sHAProxy frontend
haproxy_frontend_http_requests_totalFrontends / HTTP — HTTP Requestsvaluerequests/sHAProxy frontend
haproxy_frontend_http_requests_rate_maxFrontends / HTTP — HTTP Requests Rate Maxvaluerequests/sHAProxy frontend
haproxy_frontend_http_responses_totalFrontends / HTTP — HTTP Responsesvalues of label coderesponses/sHAProxy frontend
haproxy_frontend_intercepted_requests_totalFrontends / HTTP — Intercepted Requestsvaluerequests/sHAProxy frontend
haproxy_frontend_current_session_rateFrontends / Sessions — Current Session Ratevaluesessions/sHAProxy frontend
haproxy_frontend_current_sessionsFrontends / Sessions — Current SessionsvaluesessionsHAProxy frontend
haproxy_frontend_denied_sessions_totalFrontends / Sessions — Denied Sessionsvaluesessions/sHAProxy frontend
haproxy_frontend_limit_session_rateFrontends / Sessions — Limit Session Ratevaluesessions/sHAProxy frontend
haproxy_frontend_limit_sessionsFrontends / Sessions — Limit SessionsvaluesessionsHAProxy frontend
haproxy_frontend_max_session_rateFrontends / Sessions — Max Session Ratevaluesessions/sHAProxy frontend
haproxy_frontend_max_sessionsFrontends / Sessions — Max SessionsvaluesessionsHAProxy frontend
haproxy_frontend_sessions_totalFrontends / Sessions — Sessionsvaluesessions/sHAProxy frontend
haproxy_frontend_statusFrontends / Status — Statusvalues of label state{status}HAProxy frontend
haproxy_frontend_http_comp_bytes_bypassed_totalFrontends / Traffic — HTTP Compression Bytes Bypassedvaluebytes/sHAProxy frontend
haproxy_frontend_http_comp_bytes_in_totalFrontends / Traffic — HTTP Compression Bytes Invaluebytes/sHAProxy frontend
haproxy_frontend_http_comp_bytes_out_totalFrontends / Traffic — HTTP Compression Bytes Outvaluebytes/sHAProxy frontend
haproxy_frontend_bytes_in_totalFrontends / Traffic — Trafficinbytes/sHAProxy frontend
haproxy_frontend_bytes_out_totalFrontends / Traffic — Trafficoutbytes/sHAProxy frontend

Listeners

Prometheus metricNetdata chartDimensionUnitScope
haproxy_listener_connections_totalListeners / Connections — Connectionsvalueconnections/sHAProxy listener
haproxy_listener_denied_connections_totalListeners / Connections — Denied Connectionsvalueconnections/sHAProxy listener
haproxy_listener_request_errors_totalListeners / Errors — Errorsrequesterrors/sHAProxy listener
haproxy_listener_failed_header_rewriting_totalListeners / Errors — Errorsheader_rewritingerrors/sHAProxy listener
haproxy_listener_internal_errors_totalListeners / Errors — Errorsinternalerrors/sHAProxy listener
haproxy_listener_requests_denied_totalListeners / Errors — Requests Deniedvaluerequests/sHAProxy listener
haproxy_listener_responses_denied_totalListeners / Errors — Responses Deniedvalueresponses/sHAProxy listener
haproxy_listener_current_sessionsListeners / Sessions — Current SessionsvaluesessionsHAProxy listener
haproxy_listener_denied_sessions_totalListeners / Sessions — Denied Sessionsvaluesessions/sHAProxy listener
haproxy_listener_limit_sessionsListeners / Sessions — Limit SessionsvaluesessionsHAProxy listener
haproxy_listener_max_sessionsListeners / Sessions — Max SessionsvaluesessionsHAProxy listener
haproxy_listener_sessions_totalListeners / Sessions — Sessionsvaluesessions/sHAProxy listener
haproxy_listener_statusListeners / Status — Statusvalues of label state{status}HAProxy listener
haproxy_listener_bytes_in_totalListeners / Traffic — Trafficinbytes/sHAProxy listener
haproxy_listener_bytes_out_totalListeners / Traffic — Trafficoutbytes/sHAProxy listener

Backends

Prometheus metricNetdata chartDimensionUnitScope
haproxy_backend_http_comp_responses_totalBackends / Compression — HTTP Compression Responsesvalueresponses/sHAProxy backend
haproxy_backend_connection_attempts_totalBackends / Connections — Connection Attemptsvalueconnections/sHAProxy backend
haproxy_backend_connection_reuses_totalBackends / Connections — Connection Reusesvalueconnections/sHAProxy backend
haproxy_backend_client_aborts_totalBackends / Errors — Abortsclientaborts/sHAProxy backend
haproxy_backend_server_aborts_totalBackends / Errors — Abortsserveraborts/sHAProxy backend
haproxy_backend_response_errors_totalBackends / Errors — Errorsresponseerrors/sHAProxy backend
haproxy_backend_connection_errors_totalBackends / Errors — Errorsconnectionerrors/sHAProxy backend
haproxy_backend_failed_header_rewriting_totalBackends / Errors — Errorsheader_rewritingerrors/sHAProxy backend
haproxy_backend_internal_errors_totalBackends / Errors — Errorsinternalerrors/sHAProxy backend
haproxy_backend_requests_denied_totalBackends / Errors — Requests Deniedvaluerequests/sHAProxy backend
haproxy_backend_responses_denied_totalBackends / Errors — Responses Deniedvalueresponses/sHAProxy backend
haproxy_backend_retry_warnings_totalBackends / Errors — Warningsretrywarnings/sHAProxy backend
haproxy_backend_redispatch_warnings_totalBackends / Errors — Warningsredispatchwarnings/sHAProxy backend
haproxy_backend_http_cache_hits_totalBackends / HTTP — HTTP Cache Hitsvaluehits/sHAProxy backend
haproxy_backend_http_cache_lookups_totalBackends / HTTP — HTTP Cache Lookupsvaluelookups/sHAProxy backend
haproxy_backend_http_requests_totalBackends / HTTP — HTTP Requestsvaluerequests/sHAProxy backend
haproxy_backend_http_responses_totalBackends / HTTP — HTTP Responsesvalues of label coderesponses/sHAProxy backend
haproxy_backend_active_serversBackends / Health — Available ServersactiveserversHAProxy backend
haproxy_backend_backup_serversBackends / Health — Available ServersbackupserversHAProxy backend
haproxy_backend_check_last_change_secondsBackends / Health — Check Last Change SecondsvaluesecondsHAProxy backend
haproxy_backend_downtime_seconds_totalBackends / Health — Downtime Secondsvalueseconds/sHAProxy backend
haproxy_backend_check_up_down_totalBackends / Health — Failed Check State Transitionsvaluetransitions/sHAProxy backend
haproxy_backend_loadbalanced_totalBackends / Health — Load-Balanced Requestsvaluerequests/sHAProxy backend
haproxy_backend_uweightBackends / Health — User WeightvalueweightHAProxy backend
haproxy_backend_weightBackends / Health — WeightvalueweightHAProxy backend
haproxy_backend_current_queueBackends / Queue — Current QueuevaluerequestsHAProxy backend
haproxy_backend_max_queueBackends / Queue — Max QueuevaluerequestsHAProxy backend
haproxy_backend_max_queue_time_secondsBackends / Queue — Max Queue Time SecondsvaluesecondsHAProxy backend
haproxy_backend_queue_time_average_secondsBackends / Queue — Queue Time Average SecondsvaluesecondsHAProxy backend
haproxy_backend_current_session_rateBackends / Sessions — Current Session Ratevaluesessions/sHAProxy backend
haproxy_backend_current_sessionsBackends / Sessions — Current SessionsvaluesessionsHAProxy backend
haproxy_backend_last_session_secondsBackends / Sessions — Last Session SecondsvaluesecondsHAProxy backend
haproxy_backend_limit_sessionsBackends / Sessions — Limit SessionsvaluesessionsHAProxy backend
haproxy_backend_max_session_rateBackends / Sessions — Max Session Ratevaluesessions/sHAProxy backend
haproxy_backend_max_sessionsBackends / Sessions — Max SessionsvaluesessionsHAProxy backend
haproxy_backend_sessions_totalBackends / Sessions — Sessionsvaluesessions/sHAProxy backend
haproxy_backend_agg_check_statusBackends / Status — Aggregated Check Statusvalues of label stateserversHAProxy backend
haproxy_backend_agg_server_statusBackends / Status — Aggregated Server Statusvalues of label stateserversHAProxy backend
haproxy_backend_statusBackends / Status — Statusvalues of label state{status}HAProxy backend
haproxy_backend_total_time_average_secondsBackends / Timing — Average Total TimevaluesecondsHAProxy backend
haproxy_backend_connect_time_average_secondsBackends / Timing — Connect Time Average SecondsvaluesecondsHAProxy backend
haproxy_backend_max_connect_time_secondsBackends / Timing — Max Connect Time SecondsvaluesecondsHAProxy backend
haproxy_backend_max_response_time_secondsBackends / Timing — Max Response Time SecondsvaluesecondsHAProxy backend
haproxy_backend_max_total_time_secondsBackends / Timing — Maximum Total TimevaluesecondsHAProxy backend
haproxy_backend_response_time_average_secondsBackends / Timing — Response Time Average SecondsvaluesecondsHAProxy backend
haproxy_backend_http_comp_bytes_bypassed_totalBackends / Traffic — HTTP Compression Bytes Bypassedvaluebytes/sHAProxy backend
haproxy_backend_http_comp_bytes_in_totalBackends / Traffic — HTTP Compression Bytes Invaluebytes/sHAProxy backend
haproxy_backend_http_comp_bytes_out_totalBackends / Traffic — HTTP Compression Bytes Outvaluebytes/sHAProxy backend
haproxy_backend_bytes_in_totalBackends / Traffic — Trafficinbytes/sHAProxy backend
haproxy_backend_bytes_out_totalBackends / Traffic — Trafficoutbytes/sHAProxy backend

Servers

Prometheus metricNetdata chartDimensionUnitScope
haproxy_server_connection_attempts_totalServers / Connections — Connection Attemptsvalueconnections/sHAProxy server
haproxy_server_connection_reuses_totalServers / Connections — Connection Reusesvalueconnections/sHAProxy server
haproxy_server_idle_connections_currentServers / Connections — Current Idle ConnectionsvalueconnectionsHAProxy server
haproxy_server_used_connections_currentServers / Connections — Current Used ConnectionsvalueconnectionsHAProxy server
haproxy_server_idle_connections_limitServers / Connections — Idle Connection LimitvalueconnectionsHAProxy server
haproxy_server_safe_idle_connections_currentServers / Connections — Idle Connection SafetysafeconnectionsHAProxy server
haproxy_server_unsafe_idle_connections_currentServers / Connections — Idle Connection SafetyunsafeconnectionsHAProxy server
haproxy_server_need_connections_currentServers / Connections — Needed ConnectionsvalueconnectionsHAProxy server
haproxy_server_client_aborts_totalServers / Errors — Abortsclientaborts/sHAProxy server
haproxy_server_server_aborts_totalServers / Errors — Abortsserveraborts/sHAProxy server
haproxy_server_check_failures_totalServers / Errors — Check Failuresvaluefailures/sHAProxy server
haproxy_server_response_errors_totalServers / Errors — Errorsresponseerrors/sHAProxy server
haproxy_server_connection_errors_totalServers / Errors — Errorsconnectionerrors/sHAProxy server
haproxy_server_failed_header_rewriting_totalServers / Errors — Errorsheader_rewritingerrors/sHAProxy server
haproxy_server_internal_errors_totalServers / Errors — Errorsinternalerrors/sHAProxy server
haproxy_server_responses_denied_totalServers / Errors — Responses Deniedvalueresponses/sHAProxy server
haproxy_server_retry_warnings_totalServers / Errors — Warningsretrywarnings/sHAProxy server
haproxy_server_redispatch_warnings_totalServers / Errors — Warningsredispatchwarnings/sHAProxy server
haproxy_server_http_requests_totalServers / HTTP — HTTP Requestsvaluerequests/sHAProxy server
haproxy_server_http_responses_totalServers / HTTP — HTTP Responsesvalues of label coderesponses/sHAProxy server
haproxy_server_agent_codeServers / Health — Agent CodevaluecodeHAProxy server
haproxy_server_agent_duration_secondsServers / Health — Agent Duration SecondsvaluesecondsHAProxy server
haproxy_server_check_codeServers / Health — Check CodevaluecodeHAProxy server
haproxy_server_check_duration_secondsServers / Health — Check Duration SecondsvaluesecondsHAProxy server
haproxy_server_check_last_change_secondsServers / Health — Check Last Change SecondsvaluesecondsHAProxy server
haproxy_server_current_throttleServers / Health — Current ThrottlevaluepercentageHAProxy server
haproxy_server_downtime_seconds_totalServers / Health — Downtime Secondsvalueseconds/sHAProxy server
haproxy_server_check_up_down_totalServers / Health — Failed Check State Transitionsvaluetransitions/sHAProxy server
haproxy_server_loadbalanced_totalServers / Health — Load-Balanced Requestsvaluerequests/sHAProxy server
haproxy_server_activeServers / Health — Server RoleactiveserversHAProxy server
haproxy_server_backupServers / Health — Server RolebackupserversHAProxy server
haproxy_server_uweightServers / Health — User WeightvalueweightHAProxy server
haproxy_server_weightServers / Health — WeightvalueweightHAProxy server
haproxy_server_current_queueServers / Queue — Current QueuevaluerequestsHAProxy server
haproxy_server_max_queueServers / Queue — Max QueuevaluerequestsHAProxy server
haproxy_server_max_queue_time_secondsServers / Queue — Max Queue Time SecondsvaluesecondsHAProxy server
haproxy_server_queue_limitServers / Queue — Queue LimitvaluerequestsHAProxy server
haproxy_server_queue_time_average_secondsServers / Queue — Queue Time Average SecondsvaluesecondsHAProxy server
haproxy_server_current_session_rateServers / Sessions — Current Session Ratevaluesessions/sHAProxy server
haproxy_server_current_sessionsServers / Sessions — Current SessionsvaluesessionsHAProxy server
haproxy_server_last_session_secondsServers / Sessions — Last Session SecondsvaluesecondsHAProxy server
haproxy_server_limit_sessionsServers / Sessions — Limit SessionsvaluesessionsHAProxy server
haproxy_server_max_session_rateServers / Sessions — Max Session Ratevaluesessions/sHAProxy server
haproxy_server_max_sessionsServers / Sessions — Max SessionsvaluesessionsHAProxy server
haproxy_server_sessions_totalServers / Sessions — Sessionsvaluesessions/sHAProxy server
haproxy_server_agent_statusServers / Status — Agent Statusvalues of label state{status}HAProxy server
haproxy_server_check_statusServers / Status — Check Statusvalues of label state{status}HAProxy server
haproxy_server_statusServers / Status — Statusvalues of label state{status}HAProxy server
haproxy_server_total_time_average_secondsServers / Timing — Average Total TimevaluesecondsHAProxy server
haproxy_server_connect_time_average_secondsServers / Timing — Connect Time Average SecondsvaluesecondsHAProxy server
haproxy_server_max_connect_time_secondsServers / Timing — Max Connect Time SecondsvaluesecondsHAProxy server
haproxy_server_max_response_time_secondsServers / Timing — Max Response Time SecondsvaluesecondsHAProxy server
haproxy_server_max_total_time_secondsServers / Timing — Maximum Total TimevaluesecondsHAProxy server
haproxy_server_response_time_average_secondsServers / Timing — Response Time Average SecondsvaluesecondsHAProxy server
haproxy_server_bytes_in_totalServers / Traffic — Trafficinbytes/sHAProxy server
haproxy_server_bytes_out_totalServers / Traffic — Trafficoutbytes/sHAProxy server

Resolvers

Prometheus metricNetdata chartDimensionUnitScope
haproxy_resolver_any_errResolvers / DNS — Any Errorsvaluequeries/sHAProxy nameserver
haproxy_resolver_cnameResolvers / DNS — CNAMEvaluequeries/sHAProxy nameserver
haproxy_resolver_cname_errorResolvers / DNS — CNAME Errorvalueerrors/sHAProxy nameserver
haproxy_resolver_invalidResolvers / DNS — Invalidvaluequeries/sHAProxy nameserver
haproxy_resolver_nxResolvers / DNS — NXvaluequeries/sHAProxy nameserver
haproxy_resolver_otherResolvers / DNS — Othervaluequeries/sHAProxy nameserver
haproxy_resolver_outdatedResolvers / DNS — Outdatedvaluequeries/sHAProxy nameserver
haproxy_resolver_refusedResolvers / DNS — Refusedvaluequeries/sHAProxy nameserver
haproxy_resolver_send_errorResolvers / DNS — Send Errorvalueerrors/sHAProxy nameserver
haproxy_resolver_sentResolvers / DNS — Sentvaluequeries/sHAProxy nameserver
haproxy_resolver_timeoutResolvers / DNS — Timeoutvaluequeries/sHAProxy nameserver
haproxy_resolver_too_bigResolvers / DNS — Too Bigvaluequeries/sHAProxy nameserver
haproxy_resolver_truncatedResolvers / DNS — Truncatedvaluequeries/sHAProxy nameserver
haproxy_resolver_updateResolvers / DNS — Updatevaluequeries/sHAProxy nameserver
haproxy_resolver_validResolvers / DNS — Validvaluequeries/sHAProxy nameserver

Stick Tables

Prometheus metricNetdata chartDimensionUnitScope
haproxy_sticktable_sizeStick Tables / Entries — SizevalueentriesHAProxy stick table
haproxy_sticktable_usedStick Tables / Entries — UsedvalueentriesHAProxy stick table

Alerts

There are no alerts configured by default for this integration.

Troubleshooting

Debug Mode

Important: Debug mode is not supported for data collection jobs created via the UI using the Dyncfg feature.

To troubleshoot issues with the prometheus 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 prometheus
    

    To debug a specific job:

    ./go.d.plugin -d -m prometheus -j jobName
    

Getting Logs

If you’re encountering problems with the prometheus collector, follow these steps to retrieve logs and identify potential issues:

  • Run the command specific to your system (systemd, non-systemd, or Docker container).
  • Examine the output for any warnings or error messages that might indicate issues. These messages should provide clues about the root cause of the problem.

System with systemd

Use the following command to view logs generated since the last Netdata service restart:

journalctl _SYSTEMD_INVOCATION_ID="$(systemctl show --value --property=InvocationID netdata)" --namespace=netdata --grep prometheus

System without systemd

Locate the collector log file, typically at /var/log/netdata/collector.log, and use grep to filter for collector’s name:

grep prometheus /var/log/netdata/collector.log

Note: This method shows logs from all restarts. Focus on the latest entries for troubleshooting current issues.

Docker Container

If your Netdata runs in a Docker container named “netdata” (replace if different), use this command:

docker logs netdata 2>&1 | grep prometheus

Disappearing or sparse metrics not clearing alerts

The Prometheus collector detects metrics that disappear from a successful scrape response. Generated charts and individual dimensions expire after their configured successful-cycle lifetime. An expired chart or dimension makes its alerts REMOVED; this is not a normal CLEAR transition and does not send a recovery notification. Export an explicit normal value (for example 0) whenever an alert needs a reliable recovery transition. A failed scrape does not advance the expiry lifetime; use the generic collector collection-failure alert to detect that separate condition.

The observability platform companies need to succeed

Sign up for free

Want a personalised demo of Netdata for your use case?

Contact Sales