pmaddprofile(3) — Linux manual page

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

PMADDPROFILE(3)          Library Functions Manual         PMADDPROFILE(3)

NAME         top

       pmAddProfile - add instance(s) to the current PMAPI instance
       profile

C SYNOPSIS         top

       #include <pcp/pmapi.h>

       int pmAddProfile(pmInDom indom, int numinst, int *instlist);

       cc ... -lpcp

DESCRIPTION         top

       The  set  of  instances  for  performance  metrics returned from a
       pmFetch(3) call may be filtered or restricted  using  an  instance
       profile.   There  is one instance profile for each context the ap‐
       plication creates at the Performance Metrics Application  Program‐
       ming  Interface  (PMAPI(3)), and each instance profile may include
       instances from one or more instance domains (see pmLookupDesc(3)).

       pmAddProfile may be used to add new instance specifications to the
       instance profile of the current PMAPI context.

       In the simplest variant, the list of instances identified  by  the
       instlist  argument  for the indom instance domain are added to the
       instance profile.  The list of instance identifiers  contains  nu‐
       minst values.

       The  indom  value  would  normally  be  extracted  from  a call to
       pmLookupDesc(3) for a particular performance metric, and  the  in‐
       stances  in  instlist  would  typically  be determined by calls to
       pmGetInDom(3) or pmLookupInDom(3).

       To select all instances in all instance domains, use

          pmAddProfile(PM_INDOM_NULL, 0, (int *)0)

       This is the only case where indom may be equal  to  PM_INDOM_NULL.
       If numinst is zero, or instlist is NULL, then all instances in in‐
       dom are selected.

CAVEAT         top

       It  is possible to add non-existent instance domains and non-exis‐
       tent instances to an instance profile.  None of the routines  that
       use  the instance profile will ever issue an error if you do this.
       The cost of checking, when checking  is  possible,  outweighs  any
       benefits.

DIAGNOSTICS         top

       PM_ERR_PROFILESPEC
              indom was PM_INDOM_NULL and instlist was not empty

SEE ALSO         top

       PMAPI(3), pmDelProfile(3), pmFetch(3), pmGetInDom(3),
       pmLookupDesc(3), pmLookupInDom(3), pmNewContext(3),
       pmUseContext(3) and pmWhichContext(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-08-11.  (At that time, the date of the most recent commit
       that was found in the repository was 2025-08-11.)  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               PCP                    PMADDPROFILE(3)

Pages that refer to this page: pcpintro(3)pmapi(3)pmdelprofile(3)pmfetch(3)pmnewcontext(3)pmwebapi(3)