Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

pmfreemetricspec(3) [centos man page]

PMPARSEMETRICSPEC(3)					     Library Functions Manual					      PMPARSEMETRICSPEC(3)

NAME
pmParseMetricSpec, pmFreeMetricSpec - uniform metric specification parser C SYNOPSIS
#include <pcp/pmapi.h> int pmParseMetricSpec(const char *string, int isarch, char *source, pmMetricSpec **rsltp, char **errmsg); void pmFreeMetricSpec(pmMetricSpec *rslt); cc ... -lpcp DESCRIPTION
pmParseMetricSpec accepts a string specifying the name of a PCP performance metric, and optionally the source (either a hostname or a PCP archive log filename) and instances for that metric. The syntax is described in PCPIntro(1). If neither host nor archive component of the metric specification is provided, the isarch and source arguments are used to fill in the re- turned pmMetricSpec structure. The pmMetricSpec structure that is returned via rsltp represents the parsed string and has the following declaration: typedef struct { int isarch; /* source type: 0 -> live host, 1 -> archive, 2 -> local context */ char *source; /* name of source host or archive */ char *metric; /* name of metric */ int ninst; /* number of instances, 0 -> all */ char *inst[1]; /* array of instance names */ } pmMetricSpec; pmParseMetricSpec returns 0 if the given string was successfully parsed. In this case all the storage allocated by pmParseMetricSpec can be released by a single call to free(3C) using the address returned from pmMetricSpec via rsltp. The convenience macro pmFreeMetricSpec is a thinly disguised wrapper for free(3C). pmParseMetricSpec returns PM_ERR_GENERIC and a dynamically allocated error message string in errmsg, if the given string does not parse. Be sure to free(3C) the error message string in this situation. In the case of an error, rsltp is undefined. In the case of success, errmsg is undefined. If rsltp->ninst is 0, then rsltp->inst[0] is undefined. SEE ALSO
PMAPI(3) and pmLookupName(3). Performance Co-Pilot PCP PMPARSEMETRICSPEC(3)

Check Out this Related Man Page

PMGETCONTEXTHOSTNAME(3) 				     Library Functions Manual					   PMGETCONTEXTHOSTNAME(3)

NAME
pmGetContextHostName - return the hostname associated with a Performance Co-Pilot context C SYNOPSIS
#include <pcp/pmapi.h> const char *pmGetContextHostName(int id); cc ... -lpcp DESCRIPTION
Given a valid PCP context identifier previously created with pmNewContext(3) or pmDupContext(3), the pmGetContextHostName function returns the hostname associated with id. If the context id is associated with an archive source of data, the hostname returned is extracted from the archive label using pmGetArchiveLabel(3). For live contexts, an attempt will first be made to retrieve the hostname from the PCP collector system using pmFetch(3) with the pmcd.hostname metric. This allows client tools using this interface to retrieve an accurate host identifier even in the presence of port forwarding and tunnelled connections. Should this not succeed, then a fallback method is used. For local contexts - with local meaning any of DSO, ``localhost'' or Unix domain socket connection - a hostname will be sought via gethostname(3). For other contexts, the hostname extracted from the initial context host specification will be used. RETURN VALUE
If id is not a valid PCP context identifier, this function returns a zero length string and hence never fails. 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 configura- tion file, as described in pcp.conf(5). Values for these variables may be obtained programmatically using the pmGetConfig(3) function. SEE ALSO
PCPIntro(1), PMAPI(3), gethostname(3), pmDupContext(3), pmFetch(3), pmGetArchiveLabel(3), pmNewContext(3), pcp.conf(5) and pcp.env(5). Performance Co-Pilot PCP PMGETCONTEXTHOSTNAME(3)
Man Page

Featured Tech Videos