pmspeclocalpmda(3) — Linux manual page
PMSPECLOCALPMDA(3) Library Functions Manual PMSPECLOCALPMDA(3)
NAME
pmSpecLocalPMDA - process command-line argument for the table of
DSO PMDAs
C SYNOPSIS
#include "pmapi.h"
#include "libpcp.h"
char *pmSpecLocalPMDA(const char *spec);
cc ... -lpcp
DESCRIPTION
For Performance Co-Pilot (PCP) applications, 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 parsed successfully, then the DSO table is updated
with the extracted fields.
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
foo\foo_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
pmcd(1), PMAPI(3) and pmNewContext(3).
COLOPHON
This page is part of the PCP (Performance Co-Pilot) project.
Information 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 PMSPECLOCALPMDA(3)
Pages that refer to this page: pcp2arrow(1), pcp2elasticsearch(1), pcp2graphite(1), pcp2influxdb(1), pcp2json(1), pcp2openmetrics(1), pcp2spark(1), pcp2template(1), pcp2xlsx(1), pcp2xml(1), pcp2zabbix(1), pmchart(1), pminfo(1), pmlogger(1), pmprobe(1), pmrep(1), pmstat(1), pmstore(1), pmval(1), pmgetoptions(3), pmnewcontext(3), pmrep.conf(5)