1PCP-DSTAT(1) General Commands Manual PCP-DSTAT(1)
2
3
4
6 pcp-dstat - versatile tool for generating system resource statistics
7
9 pcp [pcp options] dstat [-acdfghilmnpqrstvVy?] [-C cpus] [-D disks]
10 [-L DM devices] [-M MD devices] [-P partitions] [-I interrupts] [-N
11 interfaces] [-o output-file] [-S swap-devices] [--bits] [--bw]
12 [--color] [--float] [--integer] [--nocolor] [--noheaders] [--noupdate]
13 [--list] [--pidfile pid-file] [--plugin] [--all-plugins] [delay
14 [count]]
15
17 pcp-dstat is a general performance analysis tool allowing you to view
18 multiple system resources instantly, for example you can compare disk
19 usage in combination with interrupts from a disk controller, or compare
20 the network bandwidth numbers directly with the disk throughput (in the
21 same interval).
22
23 It also cleverly gives you the most detailed information in columns and
24 clearly indicates in what magnitude and unit the output is being dis‐
25 played. Less confusion, fewer mistakes, more efficient.
26
27 The delay is the delay in seconds between each update, and the count is
28 the number of updates to display before exiting. The default delay is
29 1 second and count is unspecified (run until interrupted or end of ar‐
30 chive is reached).
31
32 This latest generation of Dstat, pcp-dstat, allows for analysis of his‐
33 torical performance data (in the PCP archive format created by pmlog‐
34 ger(1)), as well as distributed systems analysis of live performance
35 data from remote hosts running the pmcd(1) process.
36
37 Additionally, this version introduces configuration files similar to
38 pmrep.conf(5) from the pmrep(1) utility. The original Dstat notion of
39 ``plugins'' is replaced by use of named metrics in a Performance Metric
40 Name Space (PMNS(5)) supplied by Performance Metric Domain Agents
41 (PMDAs). Metrics and other formatting information is now specified as
42 plugin configuration files. This new style of plugin is either built-
43 in (time-related reporting only), or sourced from the system-wide loca‐
44 tion ($PCP_ETC_DIR/dstat) and/or sourced from an individual users set
45 of personal plugins ($HOME/pcp/dstat).
46
47 The list of all available plugins can be seen using the --list dstat
48 command line option.
49
51 When invoked via the pcp(1) command, the -h/--host, -a/--archive,
52 -O/--origin, -Z/--timezone and several other pcp options become indi‐
53 rectly available; refer to PCPIntro(1) for a complete description of
54 these options.
55
56 The additional command line options available for pcp-dstat are:
57
58 --list list all available plugin names
59
60 --plugin-name
61 enable any plugin by name
62
63 -a, --all
64 equals -cdngy (default plugin set)
65
66 -c, --cpu
67 enable CPU stats (system, user, idle, wait); for more CPU related
68 stats also see --cpu-adv and --cpu-use
69
70 -C 0,3,total
71 include CPU0, CPU3 and total (when using -c/--cpu); use all to
72 show all CPUs
73
74 -d, --disk
75 enable disk stats (read, write); for more disk related stats look
76 into the other --disk plugins
77
78 -D total,hda
79 include total and hda (when using -d/--disk or --disk-tps plugin)
80
81 --dm, --device-mapper
82 enable device mapper stats (read, write); for more device-mapper
83 related stats look into the other --dm plugins
84
85 --L total,root,home
86 include total, root and home (when using --dm/--device-mapper or
87 --dm-tps plugin)
88
89 --md, --multi-device
90 enable multi-device driver stats (read, write); for more multi-
91 device driver related stats look into the other --md plugins
92
93 --M total,md-0
94 include total and md-0 (when using --md/--multi-device or --md-tps
95 plugin)
96
97 --part, --partition
98 enable disk partition stats (read, write); for more partition
99 related stats look into the other --part plugins
100
101 --P total,sda2
102 include total and sda2 (when using --part/--partition or --part-
103 tps plugin)
104
105 -g, --page
106 enable page stats (page in, page out)
107
108 -i, --int
109 enable interrupt stats
110
111 -I 5,10
112 include interrupt 5 and 10 (when using -i/--int)
113
114 -l, --load
115 enable load average stats (1 min, 5 mins, 15 mins)
116
117 -m, --mem
118 enable memory stats (used, buffers, cache, free); for more memory
119 related stats also try --mem-adv and --swap
120
121 -n, --net
122 enable network stats (receive, send)
123
124 -N eth1,total
125 include eth1 and total (when using -n/--net)
126
127 --net-packets
128 show the number of packets received and transmitted
129
130 -p, --proc
131 enable process stats (runnable, uninterruptible, new)
132
133 --proc-count
134 show total number of processes
135
136 -r, --io
137 enable I/O request stats (read, write requests)
138
139 -s, --swap
140 enable swap stats (used, free)
141
142 -S swap1,total
143 include swap1 and total (when using -s/--swap)
144
145 --snooze show time spent between updates in seconds
146
147 -t, --time
148 enable time/date output (try --time-adv for millisecond preci‐
149 sion)
150
151 -T, --epoch
152 enable time counter (seconds since epoch, or millisecond preci‐
153 sion from the --epoch-adv plugin)
154
155 -y, --sys
156 enable system stats (interrupts, context switches)
157
158 --aio enable aio stats (asynchronous I/O)
159
160 --cpu-adv
161 enable advanced CPU stats
162
163 --cpu-use
164 enable only CPU usage stats
165
166 --disk-avgqu
167 average queue length of the requests that were issued to the
168 device
169
170 --disk-avgrq
171 average size (in sectors) of the requests that were issued to
172 the device
173
174 --disk-svctm
175 average service time (in milliseconds) for I/O requests that
176 were issued to the device
177
178 --disk-tps
179 number of transfers per second that were issued to the device
180
181 --disk-util
182 percentage of CPU time during which I/O requests were issued to
183 the device (bandwidth utilization for the device)
184
185 --disk-wait
186 average time (in milliseconds) for I/O requests issued to the
187 device to be served
188
189 --fs, --filesystem
190 enable filesystem stats (open files, inodes)
191
192 --freespace
193 per filesystem used and available space
194
195 --ipc enable ipc stats (message queue, semaphores, shared memory)
196
197 --lock enable file lock stats (posix, flock, read, write)
198
199 --mem-adv
200 enable advanced memory stats
201
202 --raw enable raw stats (raw sockets)
203
204 --socket
205 enable socket stats (total, tcp, udp, raw, ip-fragments)
206
207 --tcp enable tcp stats (listen, established, syn, time_wait, close)
208
209 --udp enable udp stats (listen, active)
210
211 --unix enable unix stats (datagram, stream, listen, active)
212
213 --utmp shows login information from utmp(5)
214
215 --vm enable virtual memory stats (hard pagefaults, soft pagefaults,
216 allocated, free)
217
218 --vm-adv
219 enable advance virtual memory stats (steal, scanK, scanD, pgoru,
220 astll)
221
222 --nfs3 show NFS v3 client operations
223
224 --nfs3-ops
225 show extended NFS v3 client operations
226
227 --nfsd3
228 show NFS v3 server operations
229
230 --nfsd3-ops
231 show extended NFS v3 server operations
232
233 --nfsd4-ops
234 show extended NFS v4 server operations
235
236 --nfsstat4
237 show NFS v4 stats
238
239 --rpc show remote procedure call (RPC) client calls stats
240
241 --rpcd show remote procedure call (RPC) server calls stats
242
243 -f, --full
244 expand -C, -D, -I, -N and -S discovery lists
245
246 -v, --vmstat
247 equals -pmgdsc -D total
248
249 --bits force bits for values expressed in bytes
250
251 --float
252 force float values on screen (mutually exclusive with --integer)
253
254 --integer
255 force integer values on screen (mutually exclusive with --float)
256
257 --bw, --blackonwhite
258 change colors for white background terminal
259
260 --nocolor
261 disable colors
262
263 --noheaders
264 disable repetitive headers
265
266 --noupdate
267 disable intermediate updates when delay greater than 1.
268
269 -o file, --output=file
270 write CSV (Comma-Separated Value) format output to a file.
271
272 -p file, --pidfile=file
273 write the process identifier to a given file.
274
276 Some pcp-dstat configuration files require the installation of optional
277 Performance Metric Domain Agents, above and beyond the default
278 installed set.
279
280 --innodb-buffer
281 show innodb buffer stats (needs the MySQL PMDA)
282
283 --innodb-io
284 show innodb I/O stats (needs the MySQL PMDA)
285
286 --innodb-ops
287 show innodb operations counters (needs the MySQL PMDA)
288
289 --lustre
290 show lustre I/O throughput (needs the Lustre PMDA)
291
292 --memcache-hits
293 show the number of hits and misses from memcache
294
295 --mysql5-cmds
296 show the MySQL5 command stats (needs the MySQL PMDA)
297
298 --mysql5-conn
299 show the MySQL5 connection stats (needs the MySQL PMDA)
300
301 --mysql5-innodb
302 show the MySQL5 innodb stats (needs the MySQL PMDA)
303
304 --mysql5-io
305 show the MySQL5 I/O stats (needs the MySQL PMDA)
306
307 --mysql5-keys
308 show the MySQL5 keys stats (needs the MySQL PMDA)
309
310 --mysql-io
311 show the MySQL I/O stats (needs the MySQL PMDA)
312
313 --mysql-keys
314 show the MySQL keys stats (needs the MySQL PMDA)
315
316 --postfix
317 show postfix queue sizes (needs the Postfix PMDA)
318
319 --redis
320 show Redis stats (needs the Redis PMDA)
321
322 --sendmail
323 show sendmail queue size (needs the Sendmail PMDA)
324
326 Anyone can create additional, custom pcp-dstat plugin configuration
327 files, for any metrics - the list of available metrics can be produced
328 by either the pminfo(1) or pmprobe(1) command.
329
330 The following do not yet have metrics backing them, but have been
331 included from the original Dstat utility. Please contact
332 <pcp@groups.io> if you need or implement any of these, and we'll work
333 with you to get them included.
334
335 --battery
336 battery in percentage (needs an ACPI PMDA)
337
338 --battery-remain
339 battery remaining in hours, minutes (needs an ACPI PMDA)
340
341 --cpufreq
342 CPU frequency in percentage (needs an ACPI PMDA)
343
344 --dbus
345 number of dbus connections (needs a python-dbus PMDA)
346
347 --fan
348 fan speed (needs an ACPI PMDA)
349
350 --gpfs
351 GPFS read/write I/O (needs mmpmon and a GPFS PMDA)
352
353 --gpfs-ops
354 GPFS filesystem operations (needs mmpmon and a GPFS PMDA)
355
356 --md-status
357 show software raid (MD driver) progress and speed (needs new
358 disk.md metrics)
359
360 --power
361 show power usage (needs an ACPI PMDA)
362
363 --qmail
364 show qmail queue sizes (needs qmail)
365
366 --squid
367 show squid usage statistics (needs a Squid PMDA)
368
369 --thermal
370 system temperature sensors (needs an ACPI PMDA)
371
372 --vm-cpu
373 show VMware CPU stats from hypervisor (needs a VMware PMDA)
374
375 --vm-mem
376 show VMware memory stats from hypervisor (needs a VMware PMDA)
377
378 --vm-mem-adv
379 show advanced VMware memory stats from hypervisor (needs a VMware
380 PMDA)
381
382 --vmk-hba
383 show VMware ESX kernel vmhba stats (needs a VMware PMDA)
384
385 --vmk-int
386 show VMware ESX kernel interrupt stats (needs a VMware PMDA)
387
388 --vmk-nic
389 show VMware ESX kernel port stats (needs a VMware PMDA)
390
391 --vz-cpu
392 show CPU usage per OpenVZ guest (needs an OpenVZ PMDA)
393
394 --vz-io
395 show I/O usage per OpenVZ guest (needs an OpenVZ PMDA)
396
397 --vz-ubc
398 show OpenVZ user beancounters (needs an OpenVZ PMDA)
399
400 --wifi
401 wireless link quality and signal to noise ratio (needs Linux PMDA
402 metrics)
403
404 --zfs-arc
405 show ZFS arc stats (needs a Linux ZFS PMDA)
406
407 --zfs-l2arc
408 show ZFS l2arc stats (needs a Linux ZFS PMDA)
409
410 --zfs-zil
411 show ZFS zil stats (needs a Linux ZFS PMDA)
412
414 When invoking pcp-dstat with a delay greater than 1 second and without
415 the --noupdate option, it will show intermediate updates, i.e., the
416 first time a 1 second average, the second update a 2 second average,
417 etc. until the delay has been reached.
418
419 So in case you specified a delay of 10, the 9 intermediate updates are
420 NOT snapshots, they are averages over the time that passed since the
421 last final update. The end result is that you get a 10 second average
422 on a new line, just like with vmstat(1).
423
425 Using pcp-dstat to relate disk-throughput with network-usage (eth0),
426 total CPU-usage and system counters:
427
428 $ pcp dstat -dnyc -N eth0 -C total -f 5
429
430 Using the time plugin together with cpu, net, disk, system, load and
431 proc plugins:
432
433 $ pcp dstat -tcndylp
434
435 This is identical to:
436
437 $ pcp dstat --time --cpu --net --disk --sys --load --proc
438
439 Using pcp-dstat to report 10 samples from metrics recorded in a PCP ar‐
440 chive 20180729 from 2:30 AM:
441 $ pcp --origin '@02:30' -a 20180729 dstat --time --cpu-adv --sys 1 10
442
443 Examine the same metrics live from a remote host:
444
445 $ pcp --host www.acme.com dstat --time --cpu-adv --sys 1 10
446
447
449 $HOME/.pcp/dstat/
450 private per-user configuration files
451
452 $PCP_SYSCONF_DIR/pcp/dstat/
453 system-wide configuration files
454
456 Internal plugins behaviour can be changed through environment vari‐
457 ables.
458
459 DSTAT_TIMEFMT
460 strftime(3) format string for reporting time (see --time)
461
463 Environment variables with the prefix PCP_ are used to parameterize the
464 file and directory names used by PCP. On each installation, the file
465 /etc/pcp.conf contains the local values for these variables. The
466 $PCP_CONF variable may be used to specify an alternative configuration
467 file, as described in pcp.conf(5).
468
469 For environment variables affecting PCP tools, see pmGetOptions(3).
470
472 The Dstat utility was initially written by Dag Wieers <dag@wieers.com>.
473
474 The Dstat homepage is at http://dag.wieers.com/home-made/dstat/.
475
476 This manpage was initially written by Andrew Pollock <apol‐
477 lock@debian.org> for the Debian GNU/Linux system.
478
479 The pcp-dstat utility is written and maintained by the PCP developers
480 <pcp@groups.io>.
481
482 The PCP homepage is at https://pcp.io/.
483
485 PCPIntro(1), pcp(1), pmcd(1), pminfo(1), pmlogger(1), pmprobe(1),
486 pmrep(1), vmstat(1), pmGetOptions(3), strftime(3), PMNS(5),
487 pcp.conf(5), pmrep.conf(5) and utmp(5).
488
489
490
491Performance Co-Pilot PCP PCP-DSTAT(1)