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).

PCP Performance Co-Pilot