NAME
__pmConnectLogger - connect to a performance metrics log
ger control port
C SYNOPSIS
#include <pcp/pmapi.h>
#include <pcp/impl.h>
int __pmConnectLogger(const char *hostname, int pid)
cc ... -lpcp
DESCRIPTION
Each instance of the Performance Co-Pilot (PCP) archive
logger program pmlogger(1) supports a control port on
which __pmControlLog(3) requests are received, and
responses sent. Optionally, the pmlogger(1) instance may
be designated the ``primary'' logger.
__pmConnectLogger may be used to establish a control port
connection to the pmlogger(1) instance identified by pro
cess id pid on the host hostname.
One special case is supported; for the reserved pid value
of PM_LOG_CONTROL_PORT the requested connection is to the
control port for the ``primary'' logger, whatever its pro
cess id might be.
On success, __pmConnectLogger returns a non-negative inte
ger, that is a file descriptor that may be used in subse
quent communication with the pmlogger(1) instance, e.g.
for __pmControlLog(3).
As the control port to pmlogger(1) is not mulitplexed,
applications using __pmConnectLogger should use close(2)
to terminate the connection to pmlogger(1) as soon as they
have finished communicating.
If the application connects, and the pmlogger(1) instance
subsequently terminates, e.g. becuase the associated
pmcd(1) instance is terminated, the application will have
to explicitly re-establish connection to a re-started
pmlogger(1) instance by calling __pmConnectLogger again.
SEE ALSO
pmcd(1), pmlc(1), pmlogger(1), PMAPI(3) and __pmControl
Log(3).
DIAGNOSTICS
PM_ERR_PERMISSION
no permission to connect to the specifed pmlog
ger(1) instance
the designated pmlogger(1) instance does not exist
-EEADDRINUSE
the requested control port is already in use
CAVEAT
On Irix this routine is part of the libpcp_dev.a, so your
compile lines should include -lpcp_dev and
-DHAVE_DEV_IN_LIBPCP where necessary.
Man(1) output converted with
man2html