PMDAHAPROXY(1)
π PMDAHAPROXY(1) β the HAProxy PMDA, bestie edition π
okay so real talk, this is the manual for pmdahaproxy, living in the General Commands Manual section of your friendly neighbourhood PCP docs. buckle up π
β¨ NAME β¨
pmdahaproxy β HAProxy PMDA π
πΈ DESCRIPTION πΈ
So pmdahaproxy is a Performance Metrics Domain Agent (PMDA), and its whole thing β its moment, its main character era β is pulling live performance data straight out of an HAProxy statistics socket or URL. no cap. π
By default, the HAProxy stats socket is the vibe used to retrieve the metric. But if you set the optional URL option (scroll down, it's in the config section, iykyk), then the HAProxy URL is used instead. pick your fighter. π¦
Heads up bestie: for the actual detailed description of each metric, go read the HAProxy documentation. that's not this page's job, this page is just the connector. π«Ά
π INSTALLATION π
pmdahaproxy reads an optional ini-style configuration file:
$PCP_PMDAS_DIR/haproxy/haproxy.conf
This file can contain, in its [pmda] section, overriding values for the following PMDA options:
usersocket
By default, root and /var/lib/haproxy/stats are used as the values for these options, respectively. yes literally those two, in that order, that's the default pairing periodt.
The [pmda] section can also contain these parameters:
urlauthpass
When the url option is defined, a URL connection to HAProxy is used instead. π And just so you know what you're feeding it: pmdahaproxy expects CSV data from the HAProxy URL. an example of a compatible URL is:
http://127.0.0.1:9000/?stats;csv
β οΈ Real talk, don't skip this: the HAProxy statistics socket and/or URL need to be separately enabled in the HAProxy configuration file. pmdahaproxy can't manifest them out of thin air, that's not the vibe. please refer to the HAProxy configuration documentation for details. π
Depending on your system and your HAProxy configuration, using a non-root user may also be possible β especially with URL based connections. so that's an option if you're feeling independent. β¨
Once the needed setup is ready, you can test the connection and install the PMDA to enable access to the names and values for the HAProxy performance metrics. To install, do the following as root:
# cd $PCP_PMDAS_DIR/haproxy
# ./connect
# ./Install
To uninstall, do the following as root:
# cd $PCP_PMDAS_DIR/haproxy
# ./Remove
And now the important part π¨ β pmdahaproxy is launched by pmcd(1) and should never be executed directly. it's not a "run it yourself" situation, it's a "let the daemon handle it" situation. The Install and Remove scripts notify pmcd(1) when the agent is installed or removed, so the whole handshake is handled for you. slay. π
π FILES π
$PCP_PMDAS_DIR/haproxy/haproxy.confβ configuration file for thepmdahaproxyagent$PCP_PMDAS_DIR/haproxy/connectβ connection test helper using thepmdahaproxyagent configuration$PCP_PMDAS_DIR/haproxy/Installβ installation script for thepmdahaproxyagent$PCP_PMDAS_DIR/haproxy/Removeβ undo installation script for thepmdahaproxyagent$PCP_LOG_DIR/pmcd/haproxy.logβ default log file for messages from thepmdahaproxyagent
π§ PCP ENVIRONMENT π§
Environment variables with the prefix PCP_ are used to parameterize the file and directory names used by PCP. π¦ On each installation, the file /etc/pcp.conf contains the local values for these variables. And if you want to live a little, the $PCP_CONF variable may be used to specify an alternative configuration file, as described in pcp.conf(5). obsessed with the flexibility honestly.
β SEE ALSO β
PCPIntro(1), haproxy(1) and pmcd(1). go read them, they're the supporting cast and they ate. π₯
and that's the whole page bestie!! π this one's from Performance Co-Pilot, version PCP, and the page itself is PMDAHAPROXY(1) β so like, that's the manual, that's the name, we're done here. mwah ππ«Άβ¨
π¦ where this page comes from
- arch rolling: pcp 7.2.2-2 Β· GPL-2.0-or-later AND LGPL-2.1-or-later AND CC-BY-3.0
- centos-stream 10: pcp-doc 7.1.5-6.el10 Β· GPL-2.0-or-later AND CC-BY-3.0
- centos-stream 9: pcp-doc 6.3.7-14.el9 Β· GPL-2.0-or-later AND CC-BY-3.0
- debian trixie: pcp 6.3.8-1
- fedora 43: pcp-doc 7.0.1-1.fc43 Β· GPL-2.0-or-later AND CC-BY-3.0
- fedora 43: pcp-doc 7.2.1-1.fc43
- fedora 43: pcp-doc 7.2.2-1.fc43
- fedora 43: pcp-doc 7.2.2-2.fc43 Β· GPL-2.0-or-later AND CC-BY-3.0
- fedora 44: pcp-doc 7.1.0-6.fc44 Β· GPL-2.0-or-later AND CC-BY-3.0
- fedora 44: pcp-doc 7.2.1-1.fc44
- fedora 44: pcp-doc 7.2.2-1.fc44
- fedora 44: pcp-doc 7.2.2-2.fc44 Β· GPL-2.0-or-later AND CC-BY-3.0
- ubuntu questing: pcp 6.3.8-1
- ubuntu resolute: pcp 7.1.1-1
- ubuntu stonking: pcp 7.2.1-2build1
- Copyright (C) 2017-2018 Marko Myllynen <myllynen@redhat.com>
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms