pmcollectl - collect data that describes the current system status
pmcollectl [-f file | -p file ...] [options ...]
pmcollectl is a system-level performance monitoring utility that records or displays spe-
cific operating system data for one or more sets of subsystems. Any of the subsystems
(such as CPU, Disks, Memory or Sockets) can be included or excluded from data collection.
Data can either be displayed immediately to a terminal, or stored in files for retrospec-
pmcollectl is a python(1) script providing much of the functionality available from the
collectl(1) Linux utility (which happens to be written in perl(1)).
It makes use of the Performance Co-Pilot (PCP) toolkit to simplify its implementation, as
well as provide more of the collectl functionality on platforms other than Linux.
pmcollectl has two primary modes of operation:
1. Record Mode (-f or --filename option) which reads data from a live system and writes
output to a file or displays it on a terminal.
2. Playback Mode (-p or --playback option) which reads data from one or more PCP archive
files and displays output on a terminal. Note that these files are not raw collectl
format data, rather they are archives created by the pmlogger(1) utility (possibly
indirectly, through use of the -f option to pmcollectl).
RECORD MODE OPTIONS
In this mode data is taken from a live system and either displayed on the terminal or
written to a PCP archive.
Display metrics from host instead of displaying metrics from the local host.
-c, --count samples
The number of samples to record.
-f, --filename filename
This is the name of a PCP archive to write the output to.
-i, --interval interval
This is the sampling interval in seconds. The default is 1 second.
-R, --runtime duration
Specify the duration of data collection where the duration is a number followed by
one of wdhms, indicating how many weeks, days, hours, minutes or seconds the col-
lection is to be taken for.
PLAYBACK MODE OPTIONS
In this mode, data is read from one or more PCP data files that were generated with the
recording option, or indirectly via the pmlogger utility.
-f, --filename filename
If specified, this is the name of a PCP archive to write the output to (rather than
-p, --playback filename
Read data from the specified PCP archive files(s).
The following options are supported in both record and playback modes.
Display standard help message.
-s, --subsys subsystem
This field controls which subsystem data is to be collected or played back for. The
rules for displaying results vary depending on the type of data to be displayed.
If you write data for CPUs and DISKs to a raw file and play it back with -sc, you
will only see CPU data. If you play it back with -scm you will still only see CPU
data since memory data was not collected. To see the current set of default sub-
systems, which are a subset of this full list, use -h.
The default is "cdn", which stands for CPU, Disk and Network summary data.
c - CPU
d - Disk
f - NFS V3 Data
j - Interrupts
m - Memory
n - Networks
y - Slabs (system object caches)
This is the set of detail data from which in most cases the corresponding summary
data is derived. So, if one has 3 disks and chooses -sd, one will only see a sin-
gle total taken across all 3 disks. If one chooses -sD, individual disk totals
will be reported but no totals.
C - CPU
D - Disk
F - NFS Data
J - Interrupts
M - Memory node data, which is also known as NUMA data
N - Networks
Y - Slabs (system object caches)
Z - Processes
Display output in verbose mode. This often displays more data than in the default
mode. When displaying detail data, verbose mode is forced. Furthermore, if sum-
mary data for a single subsystem is to be displayed in verbose mode, the headers
are only repeated occasionally whereas if multiple subsystems are involved each
needs their own header.
PCPIntro(1), collectl(1), perl(1), python(1), pmlogger(1), pmcd(1), pmprobe(1), pmval(1),
PMAPI(3), and pcp.conf(5).
Performance Co-Pilot PCP PMCOLLECTL(1)