Provided by: libpcp4-dev_7.0.2-1_amd64 bug

NAME

       pmStore - modify values of performance metrics

C SYNOPSIS

       #include <pcp/pmapi.h>

       int pmStore(const pmResult *result);

       cc ... -lpcp

DESCRIPTION

       In  some special cases it may be helpful to modify the current values of performance metrics, e.g. to re‐
       set a counter to zero, or to modify a ``metric'' which is a control variable for  some  agent  collecting
       performance metrics.

       pmStore is a lightweight inverses of pmFetch(3).

       The caller must build the result data structure (of course, this could have been returned from an earlier
       pmFetch(3) call).

       It  is an error to pass a result to pmStore in which the numval field within any of the pmValueSet struc‐
       tures has a value less than one.

       The current Performance Metrics Application Programming Interface (PMAPI) context must be one with a host
       as the source of metrics, and the current value of the nominated metrics will be changed,  i.e.   pmStore
       cannot be used to make retrospective changes to information in either the archives, or in the recent past
       for real-time sources of metrics.

       The return code from pmStore is zero for success.

DIAGNOSTICS

       PM_ERR_GENERIC
              At least one of the modifications was rejected.  No other status is available from below the PMAPI
              (this  is the lightweight part of the functionality!).  In cases where the outcome of storing into
              individual metrics is important, the caller should make one call to either pmStore for  each  met‐
              ric.   On  the other hand, a bulk modification can be performed in a single call for situations in
              which the outcome is not critical.

       PM_ERR_NOTHOST
              The current PMAPI context is an archive rather than a host, or it is a host that is not set to the
              current time, i.e. has been ``rewound'' to the recent past using pmSetMode(3).

       PM_ERR_TOOSMALL
              The number of metrics specified in result is less than one.

       PM_ERR_VALUE
              One or more of the pmValueSets in result has a numval field with a value less than one.

COMPATIBILITY

       Prior to PCP 7.0 the timestamp field in the pmResult struct was a struct timeval.  To support PMAPI tran‐
       sition, the old interface and semantics can be used if  applications  are  recompiled  with  -DPMAPI_VER‐
       SION=2.

       For  a time in PCP 6.x there was a routine with the same semantics as the current pmStore called pmStore‐
       HighRes, and a struct with the same definition as the current pmResult struct called pmResultHighRes, al‐
       though both are now deprecated and compile-time support for pmStoreHighRes and  pmResultHighRes  will  be
       removed in a future release.

SEE ALSO

       PMAPI(3), pmFetch(3), and pmSetMode(3).

Performance Co-Pilot                                   PCP                                            PMSTORE(3)