1PCP2INFLUXDB(1) General Commands Manual PCP2INFLUXDB(1)
2
3
4
6 pcp2influxdb - pcp-to-influxdb metrics exporter
7
9 pcp2influxdb [-CGHIjLnrRvV?] [-4 action] [-8|-9 limit] [-a archive]
10 [-A align] [--archive-folio folio] [-b|-B space-scale] [-c config]
11 [--container container] [--daemonize] [-e derived] [-E password] [-g
12 server] [-h host] [-i instances] [-J rank] [-K spec] [-N predicate] [-O
13 origin] [-P|-0 precision] [-q|-Q count-scale] [-s samples] [-S start‐
14 time] [-t interval] [-T endtime] [-U username] [-x database] [-X tags]
15 [-y|-Y time-scale] metricspec [...]
16
18 pcp2influxdb is a customizable performance metrics exporter tool from
19 PCP to InfluxDB. Any available performance metric, live or archived,
20 system and/or application, can be selected for exporting using either
21 command line arguments or a configuration file.
22
23 pcp2influxdb is a close relative of pmrep(1). Refer to pmrep(1) for
24 the metricspec description accepted on pcp2influxdb command line. See
25 pmrep.conf(5) for description of the pcp2influxdb.conf configuration
26 file syntax. This page describes pcp2influxdb specific options and
27 configuration file differences with pmrep.conf(5). pmrep(1) also lists
28 some usage examples of which most are applicable with pcp2influxdb as
29 well.
30
31 Only the command line options listed on this page are supported, other
32 options available for pmrep(1) are not supported.
33
34 Options via environment values (see pmGetOptions(3)) override the cor‐
35 responding built-in default values (if any). Configuration file op‐
36 tions override the corresponding environment variables (if any). Com‐
37 mand line options override the corresponding configuration file options
38 (if any).
39
41 pcp2influxdb uses a configuration file with syntax described in pm‐
42 rep.conf(5). The following options are common with pmrep.conf: ver‐
43 sion, source, speclocal, derived, header, globals, samples, interval,
44 type, type_prefer, ignore_incompat, names_change, instances, live_fil‐
45 ter, rank, limit_filter, limit_filter_force, invert_filter, predicate,
46 omit_flat, precision, precision_force, count_scale, count_scale_force,
47 space_scale, space_scale_force, time_scale, time_scale_force. The rest
48 of the pmrep.conf options are recognized but ignored for compatibility.
49
50 pcp2influxdb specific options
51 influx_server (string)
52 Specify the destination InfluxDB server. Corresponding command
53 line option is -g. Defaults to http://127.0.0.1:8086.
54
55 influx_db (string)
56 Specify the metrics database. Corresponding command line option is
57 -x. Defaults to pcp.
58
59 influx_user (string)
60 Specify the username for the database. Corresponding command line
61 option is -U. Undefined by default (no authentication attempted).
62
63 influx_pass (string)
64 Specify the password for the database. Corresponding command line
65 option is -E. Undefined by default (no authentication attempted).
66
67 influx_tags (string)
68 Specify string of tags to add to the metrics. Corresponding com‐
69 mand line option is -X. Undefined by default.
70
72 The available command line options are:
73
74 -0 precision, --precision-force=precision
75 Like -P but this option will override per-metric specifications.
76
77 -4 action, --names-change=action
78 Specify which action to take on receiving a metric names change
79 event during sampling. These events occur when a PMDA discovers
80 new metrics sometime after starting up, and informs running client
81 tools like pcp2influxdb. Valid values for action are update (re‐
82 fresh metrics being sampled), ignore (do nothing - the default be‐
83 haviour) and abort (exit the program if such an event occurs).
84
85 -5, --ignore-unknown
86 Silently ignore any metric name that cannot be resolved. At least
87 one metric must be found for the tool to start.
88
89 -8 limit, --limit-filter=limit
90 Limit results to instances with values above/below limit. A posi‐
91 tive integer will include instances with values at or above the
92 limit in reporting. A negative integer will include instances
93 with values at or below the limit in reporting. A value of zero
94 performs no limit filtering. This option will not override possi‐
95 ble per-metric specifications. See also -J and -N.
96
97 -9 limit, --limit-filter-force=limit
98 Like -8 but this option will override per-metric specifications.
99
100 -a archive, --archive=archive
101 Performance metric values are retrieved from the set of Perfor‐
102 mance Co-Pilot (PCP) archive files identified by the archive argu‐
103 ment, which is a comma-separated list of names, each of which may
104 be the base name of an archive or the name of a directory contain‐
105 ing one or more archives.
106
107 -A align, --align=align
108 Force the initial sample to be aligned on the boundary of a natu‐
109 ral time unit align. Refer to PCPIntro(1) for a complete descrip‐
110 tion of the syntax for align.
111
112 --archive-folio=folio
113 Read metric source archives from the PCP archive folio created by
114 tools like pmchart(1) or, less often, manually with mkaf(1).
115
116 -b scale, --space-scale=scale
117 Unit/scale for space (byte) metrics, possible values include
118 bytes, Kbytes, KB, Mbytes, MB, and so forth. This option will not
119 override possible per-metric specifications. See also pmParseU‐
120 nitsStr(3).
121
122 -B scale, --space-scale-force=scale
123 Like -b but this option will override per-metric specifications.
124
125 -c config, --config=config
126 Specify the config file or directory to use. In case config is a
127 directory all files in it ending .conf will be included. The de‐
128 fault is the first found of: ./pcp2influxdb.conf, $HOME/.pcp2in‐
129 fluxdb.conf, $HOME/pcp/pcp2influxdb.conf, and
130 $PCP_SYSCONF_DIR/pcp2influxdb.conf. For details, see the above
131 section and pmrep.conf(5).
132
133 --container=container
134 Fetch performance metrics from the specified container, either lo‐
135 cal or remote (see -h).
136
137 -C, --check
138 Exit before reporting any values, but after parsing the configura‐
139 tion and metrics and printing possible headers.
140
141 --daemonize
142 Daemonize on startup.
143
144 -e derived, --derived=derived
145 Specify derived performance metrics. If derived starts with a
146 slash (``/'') or with a dot (``.'') it will be interpreted as a
147 PCP derived metrics configuration file, otherwise it will be in‐
148 terpreted as comma- or semicolon-separated derived metric expres‐
149 sions. For complete description of derived metrics and PCP de‐
150 rived metrics configuration files see pmLoadDerivedConfig(3) and
151 pmRegisterDerived(3). Alternatively, using pmrep.conf(5) configu‐
152 ration syntax allows defining derived metrics as part of metric‐
153 sets.
154
155 -E password, --db-pass=password
156 Specify the database password.
157
158 -g server, --db-server=server
159 Destination InfluxDB server.
160
161 -G, --no-globals
162 Do not include global metrics in reporting (see pmrep.conf(5)).
163
164 -h host, --host=host
165 Fetch performance metrics from pmcd(1) on host, rather than from
166 the default localhost.
167
168 -H, --no-header
169 Do not print any headers.
170
171 -i instances, --instances=instances
172 Retrieve and report only the specified metric instances. By de‐
173 fault all instances, present and future, are reported.
174
175 Refer to pmrep(1) for complete description of this option.
176
177 -I, --ignore-incompat
178 Ignore incompatible metrics. By default incompatible metrics
179 (that is, their type is unsupported or they cannot be scaled as
180 requested) will cause pcp2influxdb to terminate with an error mes‐
181 sage. With this option all incompatible metrics are silently
182 omitted from reporting. This may be especially useful when re‐
183 questing non-leaf nodes of the PMNS tree for reporting.
184
185 -j, --live-filter
186 Perform instance live filtering. This allows capturing all named
187 instances even if processes are restarted at some point (unlike
188 without live filtering). Performing live filtering over a huge
189 number of instances will add some internal overhead so a bit of
190 user caution is advised. See also -n.
191
192 -J rank, --rank=rank
193 Limit results to highest/lowest ranked instances of set-valued
194 metrics. A positive integer will include highest valued instances
195 in reporting. A negative integer will include lowest valued in‐
196 stances in reporting. A value of zero performs no ranking. Rank‐
197 ing does not imply sorting, see -6. See also -8.
198
199 -K spec, --spec-local=spec
200 When fetching metrics from a local context (see -L), the -K option
201 may be used to control the DSO PMDAs that should be made accessi‐
202 ble. The spec argument conforms to the syntax described in pm‐
203 SpecLocalPMDA(3). More than one -K option may be used.
204
205 -L, --local-PMDA
206 Use a local context to collect metrics from DSO PMDAs on the local
207 host without PMCD. See also -K.
208
209 -n, --invert-filter
210 Perform ranking before live filtering. By default instance live
211 filtering (when requested, see -j) happens before instance ranking
212 (when requested, see -J). With this option the logic is inverted
213 and ranking happens before live filtering.
214
215 -N predicate, --predicate=predicate
216 Specify a comma-separated list of predicate filter reference met‐
217 rics. By default ranking (see -J) happens for each metric indi‐
218 vidually. With predicates, ranking is done only for the specified
219 predicate metrics. When reporting, rest of the metrics sharing
220 the same instance domain (see PCPIntro(1)) as the predicate will
221 include only the highest/lowest ranking instances of the corre‐
222 sponding predicate. Ranking does not imply sorting, see -6.
223
224 So for example, using proc.memory.rss (resident memory size of
225 process) as the predicate metric together with proc.io.total_bytes
226 and mem.util.used as metrics to be reported, only the processes
227 using most/least (as per -J) memory will be included when report‐
228 ing total bytes written by processes. Since mem.util.used is a
229 single-valued metric (thus not sharing the same instance domain as
230 the process related metrics), it will be reported as usual.
231
232 -O origin, --origin=origin
233 When reporting archived metrics, start reporting at origin within
234 the time window (see -S and -T). Refer to PCPIntro(1) for a com‐
235 plete description of the syntax for origin.
236
237 -P precision, --precision=precision
238 Use precision for numeric non-integer output values. The default
239 is to use 3 decimal places (when applicable). This option will
240 not override possible per-metric specifications.
241
242 -q scale, --count-scale=scale
243 Unit/scale for count metrics, possible values include count x
244 10^-1, count, count x 10, count x 10^2, and so forth from 10^-8 to
245 10^7. (These values are currently space-sensitive.) This option
246 will not override possible per-metric specifications. See also
247 pmParseUnitsStr(3).
248
249 -Q scale, --count-scale-force=scale
250 Like -q but this option will override per-metric specifications.
251
252 -r, --raw
253 Output raw metric values, do not convert cumulative counters to
254 rates. This option will override possible per-metric specifica‐
255 tions.
256
257 -R, --raw-prefer
258 Like -r but this option will not override per-metric specifica‐
259 tions.
260
261 -s samples, --samples=samples
262 The samples argument defines the number of samples to be retrieved
263 and reported. If samples is 0 or -s is not specified, pcp2in‐
264 fluxdb will sample and report continuously (in real time mode) or
265 until the end of the set of PCP archives (in archive mode). See
266 also -T.
267
268 -S starttime, --start=starttime
269 When reporting archived metrics, the report will be restricted to
270 those records logged at or after starttime. Refer to PCPIntro(1)
271 for a complete description of the syntax for starttime.
272
273 -t interval, --interval=interval
274 Set the reporting interval to something other than the default 1
275 second. The interval argument follows the syntax described in
276 PCPIntro(1), and in the simplest form may be an unsigned integer
277 (the implied units in this case are seconds). See also the -T op‐
278 tion.
279
280 -T endtime, --finish=endtime
281 When reporting archived metrics, the report will be restricted to
282 those records logged before or at endtime. Refer to PCPIntro(1)
283 for a complete description of the syntax for endtime.
284
285 When used to define the runtime before pcp2influxdb will exit, if
286 no samples is given (see -s) then the number of reported samples
287 depends on interval (see -t). If samples is given then interval
288 will be adjusted to allow reporting of samples during runtime. In
289 case all of -T, -s, and -t are given, endtime determines the ac‐
290 tual time pcp2influxdb will run.
291
292 -U username, --db-user=username
293 Specify the database username.
294
295 -v, --omit-flat
296 Report only set-valued metrics with instances (e.g. disk.dev.read)
297 and omit single-valued ``flat'' metrics without instances (e.g.
298 kernel.all.sysfork). See -i and -I.
299
300 -V, --version
301 Display version number and exit.
302
303 -x database, --db-name=database
304 Specify the metrics database name.
305
306 -X tags, --db-tags=tags
307 Specify strings of tags to add to the metrics.
308
309 -y scale, --time-scale=scale
310 Unit/scale for time metrics, possible values include nanosec, ns,
311 microsec, us, millisec, ms, and so forth up to hour, hr. This op‐
312 tion will not override possible per-metric specifications. See
313 also pmParseUnitsStr(3).
314
315 -Y scale, --time-scale-force=scale
316 Like -y but this option will override per-metric specifications.
317
318 -?, --help
319 Display usage message and exit.
320
322 pcp2influxdb.conf
323 pcp2influxdb configuration file (see -c)
324
325 $PCP_SYSCONF_DIR/pmrep/*.conf
326 system provided default pmrep configuration files
327
329 Environment variables with the prefix PCP_ are used to parameterize the
330 file and directory names used by PCP. On each installation, the file
331 /etc/pcp.conf contains the local values for these variables. The
332 $PCP_CONF variable may be used to specify an alternative configuration
333 file, as described in pcp.conf(5).
334
335 For environment variables affecting PCP tools, see pmGetOptions(3).
336
338 PCPIntro(1), mkaf(1), pcp(1), pcp2elasticsearch(1), pcp2graphite(1),
339 pcp2json(1), pcp2spark(1), pcp2xlsx(1), pcp2xml(1), pcp2zabbix(1),
340 pmcd(1), pminfo(1), pmrep(1), pmGetOptions(3), pmLoadDerivedConfig(3),
341 pmParseUnitsStr(3), pmRegisterDerived(3), pmSpecLocalPMDA(3), LOGA‐
342 RCHIVE(5), pcp.conf(5), pmrep.conf(5) and PMNS(5).
343
344
345
346Performance Co-Pilot PCP PCP2INFLUXDB(1)