pmiaddmetric(3) — Linux manual page

NAME | C SYNOPSIS | Perl SYNOPSIS | DESCRIPTION | DIAGNOSTICS | SEE ALSO | COLOPHON

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 de‐
       fault for all meta data created by the LOGIMPORT library).  Multi‐
       ple metrics can share the same instance domain if they have values
       for a similar (or more usually, identical) set of instances.

       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  ⟨http://www.pcp.io/⟩.
       If  you  have  a  bug  report  for  this  manual  page, send it to
       pcp@groups.io.  This page was obtained from the project's upstream
       Git repository ⟨https://github.com/performancecopilot/pcp.git⟩  on
       2025-02-02.   (At  that  time,  the date of the most recent commit
       that was found in the repository was 2025-01-30.)  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 man-pages@man7.org

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)