pmdaPMID (3) - Linux Manuals

pmdaPMID: translate a dynamic performance metric name into a PMID


pmdaPMID - translate a dynamic performance metric name into a PMID


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

int pmdaPMID(char *name, pmID *pmid, pmdaExt *pmda);

cc ... -lpcp_pmda -lpcp


As part of the Performance Metrics Domain Agent (PMDA) API (see PMDA(3)), pmdaPMID is the generic callback for translating a dynamic metric name into a PMID (pmid).

Because implementing dynamic performance metrics requires specific PMDA support, and the facility is an optional component of a PMDA (most PMDAs do not support dynamic performance metrics), pmdaPMID is a skeleton implementation that returns PM_ERR_NAME.

A PMDA that supports dynamic performance metrics will provide a private callback that replaces pmdaPMID (by assignment to version.four.pmid of the pmdaInterface structure) and implements the translation from a dynamic performance metric name into the associated pmid.


pmdaPMID returns PM_ERR_NAME if the name is not recognized or cannot be translated, else returns 0.


The PMDA must be using PMDA_PROTOCOL_4 or later, as specified in the call to pmdaDSO(3) or pmdaDaemon(3).


PMAPI(3), PMDA(3), pmdaDaemon(3), pmdaDSO(3), pmdaMain(3) and pmLookupName(3).