pmdaPMID — translate a dynamic performance metric name into a PMID
C Synopsis
#include <pcp/pmapi.h>
#include <pcp/pmda.h>
int pmdaPMID(char *name, pmID *pmid, pmdaExt *pmda);
cc ... -lpcp_pmda -lpcp
Description
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.
Diagnostics
pmdaPMID returns PM_ERR_NAME if the name is not recognized or cannot be translated, else returns 0.
Caveat
The PMDA must be using PMDA_PROTOCOL_4 or later, as specified in the call to pmdaDSO(3) or pmdaDaemon(3).
See Also
PMAPI(3), PMDA(3), pmdaDaemon(3), pmdaDSO(3), pmdaMain(3) and pmLookupName(3).
Referenced By
The man page pmdapmid(3) is an alias of pmdaPMID(3).