Provided by: libpcp3-dev_5.0.3-1_amd64 bug

NAME

       pmGetContextHostName, pmGetContextHostName_r - return the hostname associated with a Performance Co-Pilot
       context

C SYNOPSIS

       #include <pcp/pmapi.h>

       const char *pmGetContextHostName(int id);
       char *pmGetContextHostName_r(int id, char *buf, int buflen);

       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.   The  pmGetContextHostName_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 MAXHOSTNAMELEN bytes.

       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, the returned hostname is a zero length string.

NOTES

       pmGetContextHostName  returns a pointer to a static buffer, so the returned value is only valid until the
       next call to pmGetContextHostName and hence is not thread-safe.  Multi-threaded applications  should  use
       pmGetContextHostName_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

       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)