pmloadnamespace(3) — Linux manual page

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

PMLOADNAMESPACE(3)       Library Functions Manual      PMLOADNAMESPACE(3)

NAME         top

       pmLoadNameSpace - load a local PMNS for an application

C SYNOPSIS         top

       #include <pcp/pmapi.h>

       int pmLoadNameSpace(const char *filename);

       cc ... -lpcp

DESCRIPTION         top

       If  the  application wants to force using a local Performance Met‐
       rics Name Space (PMNS) instead of a distributed PMNS then it  must
       load  the  PMNS  using pmLoadNameSpace or pmLoadASCIINameSpace(3).
       If the application is to use a distributed PMNS,  then  it  should
       NOT make a call to load the PMNS explicitly.

       Most applications using a Performance Metrics Application Program‐
       ming Interface (PMAPI) context (of any type, so PM_CONTEXT_HOST or
       PM_CONTEXT_ARCHIVE  or  PM_CONTEXT_LOCAL)  should not need to call
       pmLoadNameSpace.

       The filename argument designates the PMNS of interest.  For appli‐
       cations not requiring a tailored PMNS, the special value PM_NS_DE‐
       FAULT may be used for filename, to force the default local PMNS to
       be loaded.

       The default local PMNS is found in the file $PCP_VAR_DIR/pmns/root
       unless the environment variable PMNS_DEFAULT is set, in which case
       the value is assumed to be the pathname to the file containing the
       default local PMNS.

       Externally a PMNS is stored in an ASCII  format  as  described  in
       PMNS(5).  However, note that pmLoadNameSpace assumes filename does
       not  contain  any  C-style  comments,  preprocessor  directives or
       macros; if this is not the case, pmLoadASCIINameSpace(3) should be
       used instead.

       As of Version 3.10.3 of PCP, by default,  multiple  names  in  the
       PMNS  are  allowed to be associated with a single Performance Met‐
       rics Identifier (PMID) and this is unconditionally allowed by  pm‐
       LoadNameSpace.   pmLoadASCIINameSpace(3)  provides  an alternative
       interface with user-defined control over the handling of duplicate
       names for the same PMID in the PMNS.

       pmLoadNameSpace returns zero on success.

DIAGNOSTICS         top

       Syntax and other errors in the parsing of the PMNS are reported on
       stderr with a message of the  form  ``Error  Parsing  ASCII  PMNS:
       ...''.

       PM_ERR_DUPPMNS

              It  is  an  error to try and load more than one PMNS, or to
              call either pmLoadNameSpace and/or  pmLoadASCIINameSpace(3)
              more than once.

       PM_ERR_PMNS

              Syntax error in the PMNS file.

FILES         top

       $PCP_VAR_DIR/pmns/root   the default local PMNS, when the environ‐
                                ment variable PMNS_DEFAULT is unset

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).  Values
       for these variables may be obtained programmatically using the
       pmGetConfig(3) function.

SEE ALSO         top

       PMAPI(3), pmGetConfig(3), pmLoadASCIINameSpace(3),
       pmTrimNameSpace(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
       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                 PMLOADNAMESPACE(3)

Pages that refer to this page: pcpintro(1)pmcpp(1)pmnscomp(1)pcpintro(3)pmapi(3)pmgetchildren(3)pmgetchildrenstatus(3)pmgetpmnslocation(3)pmloadasciinamespace(3)pmlookupname(3)pmnameall(3)pmnameid(3)pmtrimnamespace(3)pmunloadnamespace(3)pmns(5)