1PMSERIESDESCS(3)           Library Functions Manual           PMSERIESDESCS(3)
2
3
4

NAME

6       pmSeriesDescs,  pmSeriesLabels, pmSeriesLabelValues, pmSeriesInstances,
7       pmSeriesMetrics, pmSeriesSources - fast, scalable time series metadata
8

C SYNOPSIS

10       #include <pcp/pmwebapi.h>
11
12       int pmSeriesDescs(pmSeriesSettings *sp, int count, sds *series, void
13               *arg);
14       int pmSeriesLabels(pmSeriesSettings *sp, int count, sds *series, void
15               *arg);
16       int pmSeriesLabelValues(pmSeriesSettings *sp, int count, sds *labels,
17               void *arg);
18       int pmSeriesInstances(pmSeriesSettings *sp, int count, sds *series,
19               void *arg);
20       int pmSeriesMetrics(pmSeriesSettings *sp, int count, sds *series, void
21               *arg);
22       int pmSeriesSources(pmSeriesSettings *sp, int count, sds *series, void
23               *arg);
24
25       cc ... -lpcp_web
26

DESCRIPTION

28       Each performance metric and data source forming part of the Performance
29       Co-Pilot  (PCP)  fast, scalable time series service has certain proper‐
30       ties (metadata) associated with it.  These properties  can  be  queried
31       using the interfaces described here.
32
33       This  functionality  is provided through asynchronous APIs, which func‐
34       tion in an event-driven fashion where callbacks are  invoked  for  each
35       metadata structure being returned.
36
37       As  a general pattern, all interfaces in these APIs that need to invoke
38       callbacks provided by the calling program (see  pmSeriesSetup(3))  will
39       take  an  opaque (void * pointer) parameter, arg.  This pointer will be
40       passed through unchanged and is typically used to access a data  struc‐
41       ture maintaining state within the calling program.
42
43       With a couple of exceptions, these interfaces tend to operate in one of
44       two modes.  Firstly, one invocation is available to query metadata  for
45       a  specific  (non-zero)  count of time series.  A second, (zero) count,
46       mode returns all available metadata of that type, across all  time  se‐
47       ries.
48
49       In order to retrieve metric descriptor information for one or more time
50       series, the pmSeriesDescs interface is used.   For  each  valid  series
51       identifier  provided,  a  callback will be invoked providing the metric
52       units, semantics, and type as well as other identifiers associated with
53       it  (pmID, InDom and source identifier).  When this call is issued with
54       a zero value for count, It is an error to pass a zero or negative value
55       of count into this interface.
56
57       To  extract  label  names  and  values, the pmSeriesLabels interface is
58       used.  With a non-zero value for count valid series  identifiers,  this
59       routine  will  invoke  a callback once for each label name and once for
60       each label name:value pair, for labels associated with those  time  se‐
61       ries.   If called with a count of zero, this interface will return (via
62       the label name callback) all label names that have observed to  date  -
63       not  associated with specific time series.  The pmSeriesLabelValues in‐
64       terface is comparable to this latter mode, except will return all label
65       values  that  have  been observed to date for the given array of labels
66       names (not associated with any specific time series identifiers).
67
68       pmSeriesInstances can be used to find metadata about  instance  domains
69       and  instance  identifiers  associated with a given (non-zero) count of
70       time series identifiers.  If a zero value is passed for count then  all
71       instance names observed to date will be returned.
72
73       pmSeriesMetrics can be used to find metric names associated with a giv‐
74       en (non-zero) count of time series identifiers.  If  a  zero  value  is
75       passed  for  count  then  all metric names observed to date will be re‐
76       turned.
77
78       pmSeriesSources can be used to find metadata about the source  of  met‐
79       rics  - that is, host names and archive file paths.  If a zero value is
80       passed for count then all metric sources observed to date will  be  re‐
81       turned.
82

DIAGNOSTICS

84       Where these functions return a status code, this is always zero on suc‐
85       cess.  On failure a negative PMAPI error code is returned.
86

SEE ALSO

88       pmproxy(1), pmlogger(1),  pmseries(1),  pmSeriesQuery(3),  pmSeriesSet‐
89       up(3), PMAPI(3) and PMWEBAPI(3).
90
91
92
93Performance Co-Pilot                  PCP                     PMSERIESDESCS(3)
Impressum