pmiaddmetric(3) — Linux manual page


PMIADDMETRIC(3)         Library Functions Manual         PMIADDMETRIC(3)

NAME         top

       pmiAddMetric - add a new metric definition to a LOGIMPORT context

C SYNOPSIS         top

       #include <pcp/pmapi.h>
       #include <pcp/import.h>

       int pmiAddMetric(const char *name, pmID pmid, int type,
               pmInDom indom, int sem, pmUnits units);

       cc ... -lpcp_import -lpcp

Perl SYNOPSIS         top

       use PCP::LogImport;

       pmiAddMetric($name, $pmid, $type, $indom, $sem, $units);

DESCRIPTION         top

       As   part  of  the  Performance  Co-Pilot  Log  Import  API  (see
       LOGIMPORT(3)), pmiAddMetric is used to define a new metric.   The
       metric's  name  must  follow  the naming conventions described in
       PCPIntro(1) and should be unique for each LOGIMPORT context.

       The other arguments are in effect the fields of a  pmDesc  struc‐
       ture.  Refer to pmLookupDesc(3) for a complete description of the
       values  and  semantics  of  the components of this structure, and
       hence the valid argument values for pmiAddMetric.

       The internal identifier for the metric may  be  given  using  the
       pmid argument and must be unique for each LOGIMPORT context.  The
       value  for  pmid  which  would typically be constructed using the
       pmID_build macro,  e.g.  pmID_build(PMI_DOMAIN,  0,  3)  for  the
       fourth  metric in first ``cluster'' of metrics in the Performance
       Metrics Domain PMI_DOMAIN (which is the default for all meta data
       created by the LOGIMPORT library).  Alternatively,  pmid  may  be
       PM_IN_NULL  and  pmiAddMetric will assign a unique pmid (although
       this means the pmid remains opaque and the application  must  use
       pmiPutValue(3)    or    pmiPutValueHandle(3)   and   cannot   use
       pmiPutResult(3) to add data values to the PCP archive).

       type defines the data type of the metric and must be one  of  the
       PM_TYPE_...  values defined in <pcp/import.h>.

       The instance domain for the metric is defined by indom and may be
       PM_INDOM_NULL  for a metric with a singular value, else the value
       for indom would normally be constructed using  the  pmInDom_build
       macro, e.g. pmInDom_build(LOGIMPORT,0) for the first instance do‐
       main  in  the  Performance Metrics Domain LOGIMPORT (which is the
       default for all meta data  created  by  the  LOGIMPORT  library).
       Multiple  metrics can share the same instance domain if they have
       values for a similar (or more  usually,  identical)  set  of  in‐

       The  semantics of the metric (counter, instantaneous value, etc.)
       is specified by the sem argument which would normally be the  re‐
       sult of a call to the convenience constructor method pmiUnits(3).

DIAGNOSTICS         top

       pmiAddMetric  returns  zero on success else a negative value that
       can be turned into an error message by calling pmiErrStr(3).

SEE ALSO         top

       PCPIntro(1),   LOGIMPORT(3),    pmiErrStr(3),    pmiPutResult(3),
       pmiPutValue(3),        pmiPutValueHandle(3),       pmiPutText(3),
       pmiPutLabel(3), pmiUnits(3) and pmLookupDesc(3).

COLOPHON         top

       This page is part of the PCP (Performance Co-Pilot) project.  In‐
       formation about the project can be found at ⟨⟩.
       If you have a bug  report  for  this  manual  page,  send  it  to    This  page  was  obtained  from  the  project's
       upstream                      Git                      repository
       ⟨⟩   on  2024-06-14.
       (At that time, the date of the most recent commit that was  found
       in the repository was 2024-06-14.)  If you discover any rendering
       problems  in  this HTML version of the page, or you believe there
       is a better or more up-to-date source for the page, or  you  have
       corrections  or  improvements to the information in this COLOPHON
       (which is not part of the original manual page), send a  mail  to

Performance Co-Pilot                                     PMIADDMETRIC(3)

Pages that refer to this page: sheet2pcp(1)logimport(3)pmiaddinstance(3)pmigethandle(3)pmiputlabel(3)pmiputmark(3)pmiputresult(3)pmiputtext(3)pmiputvalue(3)pmiputvaluehandle(3)pmistart(3)pmiunits(3)pmiwrite(3)