NAME¶
pmIDStr,
pmIDStr_r - convert a performance metric identifier into
a string
C SYNOPSIS¶
#include <pcp/pmapi.h>
const char *pmIDStr(pmID
pmid);
char *pmIDStr_r(pmID
pmid, char *
buf, int
buflen);
cc ... -lpcp
DESCRIPTION¶
For use in error and diagnostic messages,
pmIDStr returns a `human
readable' version of the specified Performance Metric Identifier (PMID). The
pmIDStr_r function does the same, but stores the result in a
user-supplied buffer
buf of length
buflen, which should have
room for at least 20 bytes.
Internally, a PMID is encoded as follows;
typedef struct {
int pad:2;
unsigned int domain:8;
unsigned int cluster:12;
unsigned int item:10;
} __pmID_int;
pmIDStr returns a string with each of the
domain,
cluster
and
item subfields appearing as decimal numbers, separated by periods.
The string value result from
pmIDStr is held in a single static buffer,
so the returned value is only valid until the next call to
pmIDStr.
NOTES¶
pmIDStr returns a pointer to a static buffer and hence is not
thread-safe. Multi-threaded applications should use
pmIDStr_r instead.
PCP ENVIRONMENT¶
Environment variables with the prefix
PCP_ are used to parameterize the
file and directory names used by PCP. On each installation, the file
/etc/pcp.conf contains the local values for these variables. The
$PCP_CONF variable may be used to specify an alternative configuration
file, as described in
pcp.conf(5). Values for these variables may be
obtained programmatically using the
pmGetConfig(3) function.
SEE ALSO¶
PMAPI(3),
pmGetConfig(3),
pmInDomStr(3),
pmLookupDesc(3),
pcp.conf(5) and
pcp.env(5).