1PMDIFF(1) General Commands Manual PMDIFF(1)
2
3
4
6 pmdiff - compares archives and report significant differences
7
9 pmdiff [-d/--keep] [-z/--hostzone] [-p/--precision precision]
10 [-q/--threshold thres] [-S/--start starttime] [-T/--finish endtime]
11 [-B/--begin starttime] [-E/--end endtime] [-x metric] [-X file]
12 [--skip-excluded] [--skip-missing] [-Z/--timezone timezone] archive1
13 [archive2]
14
16 pmdiff compares the average values for every metric in either one or
17 two archives, in a given time window, for changes that are likely to be
18 of interest when searching for performance regressions.
19
20 The archive log has the base name archive and must have been previously
21 created using pmlogger(1). The pmlogsummary(1) utility is used to
22 obtain the average values used for comparison.
23
24 There are two sorts of invocation of the tool: with either one or two
25 archives.
26
27 In the first case, the only sensible command line requires use of all
28 four time window arguments. These are specified using the same time
29 window format described in PCPIntro(1), and are -S/--start and
30 -T/--finish for the start and end times of the first time window of
31 interest in the archive, and -B/--before and -E/--end for the start and
32 end times of the second time window of interest.
33
34 In the second case, with two archives, the -B/--before and -E/--end
35 options might be unnecessary. This might be the case, for example,
36 when comparing the same time window of two consecutive days (usually
37 two separate archives), or a time window on the same day of different
38 weeks.
39
40 In either case, pmdiff produces a sorted summary of those metrics in
41 the specified window whose values have deviated the most from a minimal
42 threshold. The level of deviation is calculated by dividing the aver‐
43 age value of each metric in both logs, and then calculating whether the
44 ratio falls outside of a range considered normal. This ratio can be
45 adjusted using the -q/--threshold option, and by default it is 2 (i.e.
46 report all metrics with average values that have more than doubled in
47 the two time windows or more than halved in the two time windows).
48
49 If the baseline value is zero and the comparison value is non-zero, the
50 ratio is reported as ``|+|'' (infinitely large). If the comparison
51 value is zero and the baseline value is non-zero, the ratio is reported
52 as ``|-|'' (infinitely small).
53
54 Reported metrics are sorted in ascending ratio order.
55
56 Should any metrics be present in one window but missing from the other,
57 a diagnostic will be displayed listing each missing metric and the ar‐
58 chive from which it was missing.
59
60 The remaining options control the specific information to be reported.
61 Metrics with counter semantics are converted to rates before being
62 evaluated.
63
64 -p/--precision
65 Print all floating point numbers with precision digits after the
66 decimal place.
67
68 --skip-excluded
69 Cull the list of names of metrics being excluded from the output.
70
71 --skip-missing
72 By default, pmdiff will report the names of any metrics that are
73 in one archive but not the other. This option suppresses that
74 reporting.
75
76 -x Compare each metric in each archive in the time windows specified
77 to a given egrep(1) pattern, excluding those that match from the
78 report output.
79
80 -X Allows a file to be specified which containing egrep(1) patterns
81 which are applied to the metric names to optionally exclude some
82 from the report.
83
84 -z Use the local timezone from the given archives.
85
86 -Z/--timezone
87 Changes the timezone in the archive labels to timezone in the for‐
88 mat of the environment variable TZ as described in environ(7).
89
91 $PCP_LOG_DIR/pmlogger/hostname
92 Default directory for PCP archives containing performance
93 metric values collected from the host hostname.
94
96 Environment variables with the prefix PCP_ are used to parameterize the
97 file and directory names used by PCP. On each installation, the file
98 /etc/pcp.conf contains the local values for these variables. The
99 $PCP_CONF variable may be used to specify an alternative configuration
100 file, as described in pcp.conf(5).
101
103 PCPIntro(1), pmlogger(1), pmlogsummary(1), egrep(1), pcp.conf(5) and
104 pcp.env(5).
105
106
107
108Performance Co-Pilot PCP PMDIFF(1)