расширенный мониторинг системы и процессов (Advanced System and Process Monitor)
PARSEABLE OUTPUT
With the flag -P
followed by a list of one or more labels (comma-
separated), parseable output is produced for each sample. The
labels that can be specified for system-level statistics
correspond to the labels (first verb of each line) that can be
found in the interactive output: "CPU", "cpu", "CPL", "GPU",
"MEM", "SWP", "PAG", "PSI", "LVM", "MDD", "DSK", "NFM", "NFC",
"NFS", "NET" and "IFB".
For process-level statistics special labels are introduced: "PRG"
(general), "PRC" (cpu), "PRE" (GPU), "PRM" (memory), "PRD" (disk,
only if "storage accounting" is active).
With the label "ALL", all system and process level statistics are
shown.
For every interval all requested lines are shown whereafter pcp-
atop
shows a line just containing the label "SEP" as a separator
before the lines for the next sample are generated.
When a sample contains the values since boot, pcp-atop
shows a
line just containing the label "RESET" before the lines for this
sample are generated.
The first part of each output-line consists of the following six
fields: label
(the name of the label), host
(the name of this
machine), epoch
(the time of this interval as number of seconds
since 1-1-1970), date
(date of this interval in format
YYYY/MM/DD), time
(time of this interval in format HH:MM:SS), and
interval
(number of seconds elapsed for this interval).
The subsequent fields of each output-line depend on the label:
CPU
Subsequent fields: total number of clock-ticks per
second for this machine, number of processors,
consumption for all CPUs in system mode (clock-ticks),
consumption for all CPUs in user mode (clock-ticks),
consumption for all CPUs in user mode for niced
processes (clock-ticks), consumption for all CPUs in
idle mode (clock-ticks), consumption for all CPUs in
wait mode (clock-ticks), consumption for all CPUs in irq
mode (clock-ticks), consumption for all CPUs in softirq
mode (clock-ticks), consumption for all CPUs in steal
mode (clock-ticks), consumption for all CPUs in guest
mode (clock-ticks) overlapping user mode, frequency of
all CPUs and frequency percentage of all CPUs.
cpu
Subsequent fields: total number of clock-ticks per
second for this machine, processor-number, consumption
for this CPU in system mode (clock-ticks), consumption
for this CPU in user mode (clock-ticks), consumption for
this CPU in user mode for niced processes (clock-ticks),
consumption for this CPU in idle mode (clock-ticks),
consumption for this CPU in wait mode (clock-ticks),
consumption for this CPU in irq mode (clock-ticks),
consumption for this CPU in softirq mode (clock-ticks),
consumption for this CPU in steal mode (clock-ticks),
consumption for this CPU in guest mode (clock-ticks)
overlapping user mode, frequency of all CPUs, frequency
percentage of all CPUs, instructions executed by all
CPUs and cycles for all CPUs.
CPL
Subsequent fields: number of processors, load average
for last minute, load average for last five minutes,
load average for last fifteen minutes, number of
context-switches, and number of device interrupts.
GPU
Subsequent fields: GPU number, bus-id string, type of
GPU string, GPU busy percentage during last second (-1
if not available), memory busy percentage during last
second (-1 if not available), total memory size (KiB),
used memory (KiB) at this moment, number of samples
taken during interval, cumulative GPU busy percentage
during the interval (to be divided by the number of
samples for the average busy percentage, -1 if not
available), cumulative memory busy percentage during the
interval (to be divided by the number of samples for the
average busy percentage, -1 if not available), and
cumulative memory occupation during the interval (to be
divided by the number of samples for the average
occupation).
MEM
Subsequent fields: page size for this machine (in
bytes), size of physical memory (pages), size of free
memory (pages), size of page cache (pages), size of
buffer cache (pages), size of slab (pages), dirty pages
in cache (pages), reclaimable part of slab (pages),
total size of vmware's balloon pages (pages), total size
of shared memory (pages), size of resident shared memory
(pages), size of swapped shared memory (pages), huge
page size (in bytes), total size of huge pages (huge
pages), size of free huge pages (huge pages), size of
ARC (cache) of ZFSonlinux (pages), size of sharing pages
for KSM (pages), and size of shared pages for KSM
(pages).
SWP
Subsequent fields: page size for this machine (in
bytes), size of swap (pages), size of free swap (pages),
size of swap cache (pages), size of committed space
(pages), limit for committed space (pages), size of the
swap cache (pages), size of compressed pages stored in
zswap (pages), and total size of compressed pool in
zswap (pages).
PAG
Subsequent fields: page size for this machine (in
bytes), number of page scans, number of allocstalls, 0
(future use), number of swapins, number of swapouts, and
number of oomkills.
PSI
Subsequent fields: PSI statistics present on this system
(n or y), CPU some avg10, CPU some avg60, CPU some
avg300, CPU some accumulated microseconds during
interval, memory some avg10, memory some avg60, memory
some avg300, memory some accumulated microseconds during
interval, memory full avg10, memory full avg60, memory
full avg300, memory full accumulated microseconds during
interval, I/O some avg10, I/O some avg60, I/O some
avg300, I/O some accumulated microseconds during
interval, I/O full avg10, I/O full avg60, I/O full
avg300, and I/O full accumulated microseconds during
interval.
LVM/MDD/DSK
For every logical volume/multiple device/hard disk one
line is shown.
Subsequent fields: name, number of milliseconds spent
for I/O, number of reads issued, number of sectors
transferred for reads, number of writes issued, and
number of sectors transferred for write.
NFM
Subsequent fields: mounted NFS filesystem, total number
of bytes read, total number of bytes written, number of
bytes read by normal system calls, number of bytes
written by normal system calls, number of bytes read by
direct I/O, number of bytes written by direct I/O,
number of pages read by memory-mapped I/O, and number of
pages written by memory-mapped I/O.
NFC
Subsequent fields: number of transmitted RPCs, number of
transmitted read RPCs, number of transmitted write RPCs,
number of RPC retransmissions, and number of
authorization refreshes.
NFS
Subsequent fields: number of handled RPCs, number of
received read RPCs, number of received write RPCs,
number of bytes read by clients, number of bytes written
by clients, number of RPCs with bad format, number of
RPCs with bad authorization, number of RPCs from bad
client, total number of handled network requests, number
of handled network requests via TCP, number of handled
network requests via UDP, number of handled TCP
connections, number of hits on reply cache, number of
misses on reply cache, and number of uncached requests.
NET
First, one line is produced for the upper layers of the
TCP/IP stack.
Subsequent fields: the verb "upper", number of packets
received by TCP, number of packets transmitted by TCP,
number of packets received by UDP, number of packets
transmitted by UDP, number of packets received by IP,
number of packets transmitted by IP, number of packets
delivered to higher layers by IP, number of packets
forwarded by IP, number of input errors (UDP), number of
noport errors (UDP), number of active opens (TCP),
number of passive opens (TCP), number of passive opens
(TCP), number of established connections at this moment
(TCP), number of retransmitted segments (TCP), number of
input errors (TCP), and number of output resets (TCP).
Next, one line is shown for every interface.
Subsequent fields: name of the interface, number of
packets received by the interface, number of bytes
received by the interface, number of packets transmitted
by the interface, number of bytes transmitted by the
interface, interface speed, and duplex mode (0=half,
1=full).
IFB
Subsequent fields: name of the InfiniBand interface,
port number, number of lanes, maximum rate (Mbps),
number of bytes received, number of bytes transmitted,
number of packets received, and number of packets
transmitted.
PRG
For every process one line is shown.
Subsequent fields: PID (unique ID of task), name
(between brackets), state, real uid, real gid, TGID
(group number of related tasks/threads), total number of
threads, exit code (in case of fatal signal: signal
number + 256), start time (epoch), full command line
(between brackets), PPID, number of threads in state
'running' (R), number of threads in state 'interruptible
sleeping' (S), number of threads in state
'uninterruptible sleeping' (D), effective uid, effective
gid, saved uid, saved gid, filesystem uid, filesystem
gid, elapsed time (hertz), is_process (y/n), OpenVZ
virtual pid (VPID), OpenVZ container id (CTID), Docker
container id (CID), and indication if the task is newly
started during this interval ('N').
PRC
For every process one line is shown.
Subsequent fields: PID, name (between brackets), state,
total number of clock-ticks per second for this machine,
CPU-consumption in user mode (clockticks), CPU-
consumption in system mode (clockticks), nice value,
priority, realtime priority, scheduling policy, current
CPU, sleep average, TGID (group number of related
tasks/threads), is_process (y/n), runqueue delay in
nanoseconds for this thread or for all threads (in case
of process), and wait channel of this thread (between
brackets).
PRE
For every process one line is shown.
Subsequent fields: PID, name (between brackets), process
state, GPU state (A for active, E for exited, N for no
GPU user), number of GPUs used by this process, bitlist
reflecting used GPUs, GPU busy percentage during
interval, memory busy percentage during interval, memory
occupation (KiB) at this moment cumulative memory
occupation (KiB) during interval, and number of samples
taken during interval.
PRM
For every process one line is shown.
Subsequent fields: PID, name (between brackets), state,
page size for this machine (in bytes), virtual memory
size (Kbytes), resident memory size (Kbytes), shared
text memory size (Kbytes), virtual memory growth
(Kbytes), resident memory growth (Kbytes), number of
minor page faults, number of major page faults, virtual
library exec size (Kbytes), virtual data size (Kbytes),
virtual stack size (Kbytes), swap space used (Kbytes),
TGID (group number of related tasks/threads), is_process
(y/n), proportional set size (Kbytes) if in 'R' option
is specified and virtually locked memory space (Kbytes).
PRD
For every process one line is shown.
Subsequent fields: PID, name (between brackets), state,
obsoleted kernel patch installed ('n'), standard io
statistics used ('y' or 'n'), number of reads on disk,
cumulative number of sectors read, number of writes on
disk, cumulative number of sectors written, cancelled
number of written sectors, TGID (group number of related
tasks/threads), obsoleted value ('n'), and is_process
(y/n).
If the standard I/O statistics (>= 2.6.20) are not used,
the disk I/O counters per process are not relevant. The
counters 'number of reads on disk' and 'number of writes
on disk' are obsoleted anyhow.
PRN
For every process one line is shown.
Subsequent fields: PID, name (between brackets), state,
pmdabcc(1) module `netproc' loaded ('y' or 'n'), number
of tcp_sendmsg() calls, cumulative size of TCP buffers
requested to be transmitted, number of
tcp_recvmsg()/tcp_cleanup_rbuf() calls, cumulative size
of TCP buffers received, number of udp_sendmsg() calls,
cumulative size of UDP buffers requested to be
transmitted, number of udp_recvmsg()/skb_consume_udp()
calls, cumulative size of UDP buffers transmitted,
number of raw packets transmitted (obsolete, always 0),
number of raw packets received (obsolete, always 0),
TGID (group number of related tasks/threads) and
is_process (y/n).