Query: pmtraversepmns_r
OS: centos
Section: 3
Links: centos man pages all man pages
Forums: unix linux community forum categories
Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar
PMTRAVERSEPMNS(3) Library Functions Manual PMTRAVERSEPMNS(3)NAMEpmTraversePMNS, pmTraversePMNS_r - traverse the performance metrics name spaceC SYNOPSIS#include <pcp/pmapi.h> int pmTraversePMNS(const char *name, void (*dometric)(const char *)); int pmTraversePMNS_r(const char *name, void (*dometric_r)(const char *, void *), void *closure); cc ... -lpcpDESCRIPTIONThe routine pmTraversePMNS may be used to perform a depth-first traversal of the Performance Metrics Name Space (PMNS). The traversal starts at the node identified by name - if name is an empty string (i.e. ""), the traversal starts at the root of the PMNS. Usually name would be the pathname of a non-leaf node in the PMNS. For each leaf node (i.e. performance metric) found in the traversal, the user-supplied routine dometric is called with the full pathname of that metric in the PMNS as the single argument. This argument is null-byte terminated, and is constructed from a buffer that is managed internally to pmTraversePMNS. Consequently the value is only valid during the call to dometric - if the pathname needs to be retained, it should be copied using strdup(3C) before returning from dometric. The pmTraversePMNS_r routine performs the same function, except the callback method func_r has an additional parameter that will be closure from the initial call to pmTraversePMNS_r. The additional parameter to pmTraversePMNS_r and the callback method allows the caller to pass context through pmTraversePMNS_r and into the callback method func_r, making the service more useful for multi-threaded applications where thread-private data can be accessed in the callback method via the closure argument. On success pmTraversePMNS returns the number of children of name, which may be zero.SEE ALSOPMAPI(3) and pmGetChildren(3).DIAGNOSTICSPM_ERR_NOPMNS Failed to access a PMNS for operation. Note that if the application hasn't a priori called pmLoadNameSpace(3) and wants to use the distributed PMNS, then a call to pmTraversePMNS must be made inside a current context. PM_ERR_NAME The initial pathname name is not valid in the current PMNS. PM_ERR_* Other diagnostics are for protocol failures when accessing the distributed PMNS. Performance Co-Pilot PCP PMTRAVERSEPMNS(3)
Related Man Pages |
---|
pminfo(1) - centos |
pmnsadd(1) - centos |
pmnsmerge(1) - centos |
pmgetchildren(3) - centos |
pmloadnamespace(3) - centos |
Similar Topics in the Unix Linux Community |
---|
Tech Article: Using WebLogic Diagnostics Framework to Enable Performance Prediction f |