__pmSpecLocalPMDA man page

__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


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:

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 parsed 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.


Some examples of valid spec strings:


Delete all entries from the DSO table.


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().


Delete the entry for the DSO with domain 123.


Delete the entry with a pathname to the DSO that matches 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).

Referenced By

pcp2elasticsearch(1), pcp2json(1), pcp2xml(1), pcp2zabbix(1), pmevent(1), pminfo(1), __pmLocalPMDA(3), pmlogger(1), pmprobe(1), pmrep(1), pmrep.conf(5), pmstore(1), pmwebd(1).

Performance Co-Pilot