1PCPCOMPAT(1) General Commands Manual PCPCOMPAT(1)
2
3
4
6 PCPCompat, pcp-collectl, pmmgr, pmwebd - backward-compatibility in the
7 Performance Co-Pilot (PCP)
8
10 The Performance Co-Pilot (PCP) is a toolkit designed for monitoring and
11 managing system-level performance. These services are distributed and
12 scalable to accommodate the most complex system configurations and per‐
13 formance problems.
14
15 In order to achieve these goals effectively, protocol and on-disk com‐
16 patibility is provided between different versions of PCP. It is feasi‐
17 ble (and indeed encouraged) to use current PCP tools to interrogate any
18 remote, down-rev or up-rev pmcd(1) and also to replay any historical
19 PCP archive (the PCP testsuite includes PCP archives created over 20
20 years ago!).
21
22 From time to time the PCP developers deprecate and remove PCP utili‐
23 ties, replacing them with new versions of utilities providing compara‐
24 ble features. This page describes replacement utilities for historical
25 PCP tools.
26
28 PCP provides python(1) interfaces for the PMAPI(3) (Performance Metrics
29 API), the PMDA(3) API (Performance Metrics Domain Agents), the
30 mmv_stats_register(3) API (Memory-Mapped Values) and PCP archive log
31 creation LOGIMPORT(3) API.
32
33 With python version 2 end-of-life since 2020 we have deprecated the
34 python version 2 interfaces in PCP (shipped, but no longer supported).
35 In the next major release of PCP (v7) version 2 support will be retired
36 (completely removed). All PCP APIs and python-based tools support
37 python version 3 and have for several years - upgrading is strongly
38 recommended.
39
41 The sar2pcp(1) and iostat2pcp(1) utilities are deprecated, and will be
42 retired in a future version of PCP (v7). This is being replaced by na‐
43 tive support for generating PCP archives within the tools of the sys‐
44 stat package (which provides sar itself, as well as the sadf utility
45 which produces PCP archives via the -l option).
46
48 Earlier versions of PCP (prior to v5.1.1) provided a shell script that
49 was used internally by pmlogconf(1), located in the PCP_BINADM_DIR di‐
50 rectory, named pmlogconf-setup. This script has been retired. The
51 equivalent functionality remains available in the unlikely event it
52 should be needed via the -s or --setup option to pmlogconf(1).
53
54 The version 1 pmlogconf-setup configuration file format (from IRIX) was
55 also retired in this release, after more than 10 years of automatic
56 transition to version 2 format by pmlogconf.
57
59 The standalone PCP daemon manager pmmgr has been retired from PCP
60 v5.2.0 onward. It was phased out in favour of the simpler pmfind(1)
61 service for setting up pmie(1) and pmlogger(1) ``farms'' of discovered
62 PCP collector systems with pmfind_check(1). The new mechanisms, espe‐
63 cially when integrated with systemd, require no additional daemons and
64 are better integrated with the pmie and pmlogger service management
65 used elsewhere in PCP.
66
68 The pcp-collectl utility has been superceded by pmrep(1) from PCP v5
69 onward.
70
71 The equivalent of pcp-collectl subsystem reporting is achieved as fol‐
72 lows:
73
74 pmrep :collectl-sc
75 Processor subsystem view.
76
77 pmrep :collectl-sm
78 Memory subsystem view.
79
80 pmrep :collectl-sd
81 Aggregate disks view.
82
83 pmrep :collectl-sD
84 Per-disk-device view.
85
86 pmrep :collectl-dm-sD
87 Device mapper view.
88
89 pmrep :collectl-sn
90 Network subsystem view.
91
93 The standalone web applications packaged with older PCP versions have
94 been superceded by grafana-server(1) with the grafana-pcp plugin
95 https://github.com/performancecopilot/grafana-pcp.
96
97 This plugin provides an implementation of the Vector application, as
98 well as data sources for pmdabpftrace(1) (bpftrace(8) scripts) and pm‐
99 series(1) (fast, scalable Redis-based time series analysis).
100
102 The pmwebd daemon has been superceded by pmproxy(1) from PCP v5 onward.
103
104 By default, pmproxy will now listen on both its original port (44322)
105 and the PCP web API port (44323) when the time series support is built.
106
107 pmproxy provides a compatible implementation of the live PMWEBAPI(3)
108 interfaces used traditionally by the Vector web application (see the
109 ``PCP-WEBAPPS'' section). It also provides extensions to the original
110 pmwebd REST APIs (such as derived metrics, namespace lookups and in‐
111 stance domain profiles), support for the HTTPS protocol, and fast,
112 scalable time series querying using the pmseries(1) REST API and redis-
113 server(1).
114
115 The partial Graphite API emulation provided by pmwebd has not been re-
116 implemented - applications wishing to use similar services could use
117 the scalable time series REST APIs described on PMWEBAPI(3).
118
120 pcp(1), pmcd(1), iostat2pcp(1), sar2pcp(1), pmrep(1), pmfind(1),
121 pmfind_check(1), pmlogconf(1), pmproxy(1), pmseries(1), pmdabpf‐
122 trace(1), python(1), redis-server(1), grafana-server(1), mmv_stats_reg‐
123 ister(3), LOGIMPORT(3), PMAPI(3), PMDA(3) and PMWEBAPI(3).
124
125
126
127Performance Co-Pilot PCP PCPCOMPAT(1)