pmTypeStr man page

pmTypeStr, pmTypeStr_r — convert a performance metric type into a string

C Synopsis

#include <pcp/pmapi.h>

const char *pmTypeStr(int type);
char *pmTypeStr_r(int type, char *buf, int buflen);

cc ... -lpcp


Given a performance metric type, pmTypeStr produces a terse ASCII equivalent, appropriate for use in error and diagnostic messages. The pmTypeStr_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.

The value for type is typically extracted from a pmDesc structure, following a call to pmLookupDesc(3) for a particular performance metric.

Examples are 32 (for type equals PM_TYPE_32), U64 (for type equals PM_TYPE_U64), AGGREGATE (for type equals PM_TYPE_AGGREGATE), etc.

The string value result for pmTypeStr is held in a single static buffer, so the returned value is only valid until the next call to pmTypeStr.


pmTypeStr returns a pointer to a static buffer and hence is not thread-safe. Multi-threaded applications should use pmTypeStr_r instead.

See Also

PMAPI(3), pmAtomStr(3), pmConvScale(3), pmExtractValue(3), pmLookupDesc(3), pmPrintValue(3), pmIDStr(3), pmInDomStr(3), pmSemStr(3) and pmUnitsStr(3).

Referenced By

pmAtomStr(3), pmConvScale(3), pmExtractValue(3), pmIDStr(3), pmInDomStr(3), pmLookupDesc(3), pmPrintValue(3), pmSemStr(3), pmUnitsStr(3).

pmtypestr(3) is an alias of pmTypeStr(3).

PCP Performance Co-Pilot