pmgetchildrenstatus(3) — Linux manual page

NAME | C SYNOPSIS | DESCRIPTION | DIAGNOSTICS | PCP ENVIRONMENT | SEE ALSO | COLOPHON

PMGETCHILDRENSTATUS(3)  Library Functions Manual  PMGETCHILDRENSTATUS(3)

NAME         top

       pmGetChildrenStatus - return the descendent nodes of a PMNS node
       and their respective status

C SYNOPSIS         top

       #include <pcp/pmapi.h>

       int pmGetChildrenStatus(const char *name, char ***offspring,
               int **status);

       cc ... -lpcp

DESCRIPTION         top

       Given a fully qualified pathname to a node in the current Perfor‐
       mance   Metrics   Name  Space  (PMNS),  as  identified  by  name,
       pmGetChildrenStatus returns via offspring a list of the  relative
       names  of  all  of  the immediate descendent nodes of name in the
       current PMNS.

       As a special case, if name is an empty string (i.e.""), the imme‐
       diate descendants of the root node in the PMNS will be returned.

       If status is not NULL, then pmGetChildrenStatus will also  return
       the  status  of  each child via status.  The status will refer to
       either a leaf node (with value PMNS_LEAF_STATUS)  or  a  non-leaf
       node (with value PMNS_NONLEAF_STATUS).

       Normally,  pmGetChildrenStatus  will return the number of descen‐
       dent names discovered, else a value less than zero for an  error.
       The  value  zero indicates that name is a valid metric name, i.e.
       is associated with a leaf node in the PMNS.

       The resulting list of pointers offspring and the values (the rel‐
       ative names) that the pointers reference will have been allocated
       by pmGetChildrenStatus with a single call to malloc(3), and it is
       the responsibility of the pmGetChildrenStatus caller to free(off‐
       spring) to release the space when it is no longer required.   The
       same holds true for the status array.

       When  an error occurs, or name is a leaf node (i.e. the result of
       pmGetChildrenStatus is less than one), both offspring and  status
       are  undefined  (no space will have been allocated and so calling
       free(3) is a singularly bad idea).

DIAGNOSTICS         top

       PM_ERR_NOPMNS
              Failed to access a PMNS for operation.  Note that if the
              application hasn't a priori called pmLoadNameSpace(3) and
              wants to use the distributed PMNS, then a call to
              pmGetChildrenStatus must be made inside a current context.

       PM_ERR_NAME
              The pathname name is not valid in the current PMNS

       PM_ERR_*
              Other diagnostics are for protocol failures when accessing
              the distributed PMNS.

PCP ENVIRONMENT         top

       Environment variables with the prefix PCP_ are used to parameter‐
       ize the file and directory names used by PCP.  On each installa‐
       tion, the file /etc/pcp.conf contains the local values for these
       variables.  The $PCP_CONF variable may be used to specify an al‐
       ternative configuration file, as described in pcp.conf(5).  Val‐
       ues for these variables may be obtained programmatically using
       the pmGetConfig(3) function.

SEE ALSO         top

       PMAPI(3), pmGetChildren(3), pmGetConfig(3),
       pmLoadASCIINameSpace(3), pmLoadNameSpace(3), pmLookupName(3),
       pmNameID(3), pcp.conf(5), pcp.env(5) and PMNS(5).

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 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
       man-pages@man7.org

Performance Co-Pilot               PCP            PMGETCHILDRENSTATUS(3)

Pages that refer to this page: pmgetchildren(3)pmgetderivedcontrol(3)pmlookupname(3)pmnameall(3)pmnameid(3)pmwebapi(3)