Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

pmgetarchiveend(3) [centos man page]

PMGETARCHIVEEND(3)					     Library Functions Manual						PMGETARCHIVEEND(3)

NAME
pmGetArchiveEnd - locate logical end of file for an archive log C SYNOPSIS
#include <pcp/pmapi.h> int pmGetArchiveEnd(struct timeval *tvp); cc ... -lpcp DESCRIPTION
Assuming the current PMAPI context is associated with an archive log, pmGetArchiveEnd will attempt to find the logical end of file (after the last complete record in the archive), and return the last recorded timestamp via tvp. This timestamp may be passed to pmSetMode(3) to reliably position the context at the last valid log record, e.g. in preparation for subsequent reading in reverse chronological order. For archive logs that are not concurrently being written, the physical end of file and the logical end of file are co-incident. However if an archive log is being written by pmlogger(1) at the same time an application is trying to read the archive, the logical end of file may be before the physical end of file due to write buffering that is not aligned with the logical record boundaries. pmGetArchiveEnd returns an error less than zero if the context is neither valid, nor associated with an archive, or the archive is seri- ously corrupted. Otherwise, the return value is 0 if there has been no change of state since the last call, or 1 if the logical end of file has advanced since the last call. In the absence of an error, the result returned via tvp is well-defined. pmGetArchiveEnd preserves the positioning state of the log file prior to this function call. 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
PMAPI(3), pmFetch(3), pmFetchArchive(3), pmGetArchiveLabel(3), pmGetConfig(3), pmSetMode(3), pcp.conf(5) and pcp.env(5). DIAGNOSTICS
PM_ERR_NOCONTEXT the current PMAPI context is either invalid, or not associated with an archive log PM_ERR_LOGREC the archive is sufficiently damaged, that not a single valid record can be found Performance Co-Pilot PCP PMGETARCHIVEEND(3)

Check Out this Related Man Page

PMPARSETIME(3)						     Library Functions Manual						    PMPARSETIME(3)

NAME
__pmParseTime - parse time point specification C SYNOPSIS
#include <pcp/pmapi.h> #include <pcp/impl.h> int __pmParseTime(const char *string, struct timeval *logStart, struct timeval *logEnd, struct timeval *rslt, char **errMsg); cc ... -lpcp DESCRIPTION
__pmParseTime is designed to encapsulate the interpretation of a time point specification in command line switches for use by the PCP client tools. This function expects to be called with the time point specification as string. If the tool is running against PCP archive(s), you also need to supply the start time of the first (only) archive as logStart, and the end of the last (only) archive as logEnd. See pmGetArchive- Label(3) and pmGetArchiveEnd(3) for how to obtain values for these parameters. If the tool is running against a live feed of performance data, logStart should be the current time (but could be aligned on the next second for example), while logEnd should have its tv_sec compo- nent set to INT_MAX. The rslt structure must be allocated before calling __pmParseTime. You also need to set the current PCP reporting time zone to correctly reflect the -z and -Z command line parameters before calling __pm- ParseTime. See pmUseZone(3) and friends for information on how this is done. If the conversion is successful, __pmParseTime returns 0, and fills in rslt with the time value defined by the input parameters. If the argument strings could not be parsed, it returns -1 and a dynamically allocated error message string in errMsg. Be sure to free(3C) this error message string. SEE ALSO
PMAPI(3), pmGetArchiveEnd(3), pmGetArchiveLabel(3), pmNewContextZone(3), pmNewZone(3), pmParseInterval(3), pmParseTimeWindow(3), pmUse- Zone(3), __pmConvertTime(3) and __pmParseCtime(3). Performance Co-Pilot PCP PMPARSETIME(3)
Man Page