Man Linux: Main Page and Category List

NAME

       __pmSpecLocalPMDA  - process command-line argument for the table of DSO
       PMDAs

C SYNOPSIS

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

       char * __pmSpecLocalPMDA(const char *spec)

       cc ... -lpcp

DESCRIPTION

       PCP contexts of type PM_CONTEXT_LOCAL are used by clients that wish  to
       fetch metrics directly from one or more PMDAs on the local host without
       involving pmcd(1).

       __pmSpecLocalPMDA  provides  a  convenience  wrapper  to  be  used   by
       applications that wish to use a command line argument (usually with -K)
       to control the DSO PMDAs that  are  available  for  a  PM_CONTEXT_LOCAL
       context.

       The  spec argument specifies actions for one or more DSO PMDAs using up
       to four fields separated by commas (‘‘,’’), namely:

       -  an opcode with one of the values add (add a new  entry),  del
          (delete  an  existing entry) or clear (clear all entries from
          the table).
       -  the PMDA’s domain number
       -  the path to the PMDA DSO (may be absolute or relative to  the
          $PCP_VAR_DIR/pmdas directory and the DSO suffix is optional),
          and
       -  the name of the PMDA’s initialization routine.

       All fields are required to add a new entry.  To delete an  entry
       the  opcode is required plus either or both of the domain number
       and path fields.  To clear  all  entries,  only  the  opcode  is
       required.

       If  spec  is parse successfully, then __pmLocalPMDA(3) is called
       with the extracted arguments.

RETURN VALUE

       On success, __pmSpecLocalPMDA will return NULL.

       On error or failure, __pmSpecLocalPMDA will return a pointer  to
       a static error message.

EXAMPLES

       Some examples of valid spec strings:

       clear  Delete all entries from the DSO table.

       add,123,foo/foo_pmda,foo_init
              Add the ‘‘foo’’ PMDA using domain 123.  The PMDA’s DSO is
              most likely in below  the  directory  $PCP_PMDAS_DIR  and
              named   foo/foo_pmda.so   (for  ELF-style  platforms)  or
              foo/foo_pmda.dylib   (for   BSD-style    platforms)    or
              fooo_pmda.dll   (for   Windows-style   platforms).    The
              initialization  routine   for   the   ‘‘foo’’   PMDA   is
              foo_init().

       del,123
              Delete the entry for the DSO with domain 123.

       del,,foo/foo_pmda
              Delete  the entry with a pathname to the DSO that matches
              foo/foo_pmda.

       del,123,foo/foo_pmda
              Delete the entry for  the  DSO  with  either  domain  123
              and/or a pathname to the DSO that matches foo/foo_pmda.

SEE ALSO

       PMAPI(3), __pmLocalPMDA(3) and pmNewContext(3).