|
NAME | C SYNOPSIS | Perl SYNOPSIS | DESCRIPTION | DIAGNOSTICS | SEE ALSO | COLOPHON |
|
|
|
PMISTART(3) Library Functions Manual PMISTART(3)
pmiStart - establish a new LOGIMPORT context
#include <pcp/pmapi.h>
#include <pcp/import.h>
int pmiStart(const char *archive, int inherit);
cc ... -lpcp_import -lpcp
use PCP::LogImport;
pmiStart($archive, $inherit);
As part of the Performance Co-Pilot Log Import API (see
LOGIMPORT(3)), pmiStart creates a new context. Each context
maintains the following state and metadata:
• The base name (archive) for the physical files that constitute
the output PCP archive.
• The source hostname for the data that will be written to the
PCP archive. Defaults to the hostname of the localhost, but
can be set using pmiSetHostname(3).
• The source timezone for the PCP archive. Defaults to the
timezone of the localhost, but can be set using
pmiSetTimezone(3).
• The output archive version number for the PCP archive.
Defaults to the traditional version 2 format, but can be set
using pmiSetVersion(3).
• Metrics and instance domains, as defined by pmiAddMetric(3).
• Instances for each instance domain, as defined by
pmiAddInstance(3).
• Handles as defined by pmiGetHandle(3). Each handle is a
metric-instance pair, and each metric-instance pair may have an
associated value in each record written to the output PCP
archive.
• An optional set of data values for one or more metric-instance
pairs (ready for the next record to be written to the output
PCP archive) as defined by calls to pmiPutValue(3) or
pmiPutValueHandle(3).
If inherit is true, then the new context will inherit any and all
metadata (metrics, instance domains, instances and handles) from
the current context, otherwise the new context is created with no
metadata. The basename for the output PCP archive, the source
hostname, the source timezone and any data values from the current
context are not inherited. If this is the first call to pmiStart
the metadata will be empty independent of the value of inherit.
Since no physical files for the output PCP archive will be created
until the first call to pmiWrite(3) or pmiPutResult(3), archive
could be NULL to create a convenience context that is populated
with metadata to be inherited by subsequent contexts.
The return value is a context identifier that could be used in a
subsequent call to pmUseContext(3) and the new context becomes the
current context which persists for all subsequent calls up to
either another pmiStart call or a call to pmiUseContext(3) or a
call to pmiEnd(3).
It is an error if the physical files archive.0 and/or
archive.index and/or archive.meta already exist, but this is not
discovered until the first attempt is made to output some data by
calling pmiWrite(3) or pmiPutResult(3), so pmiStart always returns
a positive context identifier.
LOGIMPORT(3), PMAPI(3), pmiAddInstance(3), pmiAddMetric(3),
pmiEnd(3), pmiErrStr(3), pmiGetHandle(3), pmiPutLabel(3),
pmiPutResult(3), pmiPutText(3), pmiPutValue(3),
pmiPutValueHandle(3), pmiSetHostname(3), pmiSetTimezone(3),
pmiSetVersion(3), pmiUseContext(3) and pmiWrite(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 pcp@groups.io. This page was obtained from the
project's upstream Git repository
⟨https://github.com/performancecopilot/pcp.git⟩ on 2025-02-02.
(At that time, the date of the most recent commit that was found
in the repository was 2025-01-30.) 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
man-pages@man7.org
Performance Co-Pilot PMISTART(3)
Pages that refer to this page: logimport(3), pmiend(3), pmisethostname(3), pmisettimezone(3), pmisetversion(3), pmiusecontext(3)