PMPARSETIME(3) Library Functions Manual PMPARSETIME(3)
__pmParseTime - parse time point specification
#include "pmapi.h" #include "libpcp.h" int __pmParseTime(const char *string, struct timeval *logStart, struct timeval *logEnd, struct timeval *rslt, char **errMsg); cc ... -lpcp
This documentation is intended for internal Performance Co-Pilot (PCP) developer use. These interfaces are not part of the PCP APIs that are guaranteed to remain fixed across releases, and they may not work, or may provide different semantics at some point in the future.
__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 pmGetArchiveLabel(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 component 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 __pmParseTime. 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(3) this error message string.
PMAPI(3), pmGetArchiveEnd(3), pmGetArchiveLabel(3), pmNewContextZone(3), pmNewZone(3), pmParseInterval(3), pmParseTimeWindow(3), pmUseZone(3), __pmConvertTime(3) and __pmParseCtime(3).
This page is part of the PCP (Performance Co-Pilot) project. Information about the project can be found at ⟨http://www.pcp.io/⟩. If you have a bug report for this manual page, send it to email@example.com. This page was obtained from the project's upstream Git repository ⟨https://github.com/performancecopilot/pcp.git⟩ on 2021-08-27. (At that time, the date of the most recent commit that was found in the repository was 2021-08-27.) If you discover any rendering problems in this HTML version of the page, or you believe there is a better or more up-to-date source for the page, or you have corrections or improvements to the information in this COLOPHON (which is not part of the original manual page), send a mail to firstname.lastname@example.org Performance Co-Pilot PCP PMPARSETIME(3)
Pages that refer to this page: __pmconverttime(3), __pmparsectime(3)