---
name: "pmiwrite"
section: "3"
platform: "linux"
package: "libpcp3-dev"
version: "4.3.2+really4.3.1-0.1"
release: "Debian 10 (Buster)"
platforms: ["linux"]
url: "https://new.carta.tech/pmiWrite"
---

# pmiwrite(3)

flush data to a LOGIMPORT archive

Part of [pmiWrite(3)](/pmiWrite/3.md).

## NAME

**pmiWrite** - flush data to a LOGIMPORT archive

## C SYNOPSIS

**#include \<pcp/pmapi.h\>**\
 **#include \<pcp/import.h\>**

**int pmiWrite(int** *sec***, int** *usec***);**

**cc ... -lpcp\_import -lpcp**

## Perl SYNOPSIS

**use PCP::LogImport;**

**pmiWrite($***sec***, $***usec***);**

## DESCRIPTION

As part of the Performance Co-Pilot Log Import API (see [**LOGIMPORT**(3)](/LOGIMPORT/3.md)), **pmiWrite** forces accumulated data values out to the PCP archive.

The data values and associated metadata have previously been built up using calls to [**pmiAddMetric**(3)](/pmiAddMetric/3.md), [**pmiAddInstance**(3)](/pmiAddInstance/3.md), [**pmiPutValue**(3)](/pmiPutValue/3.md) and [**pmiPutValueHandle**(3)](/pmiPutValueHandle/3.md).

The current set of data values and any new metadata is written to the archive with a timestamp of *sec* and *usec* in the source timezone of the archive, see [**pmiSetTimezone**(3)](/pmiSetTimezone/3.md).

## DIAGNOSTICS

**pmiWrite** returns zero on success else a negative value that can be turned into an error message by calling [**pmiErrStr**(3)](/pmiErrStr/3.md).

## SEE ALSO

[**LOGIMPORT**(3)](/LOGIMPORT/3.md), [**pmiAddInstance**(3)](/pmiAddInstance/3.md), [**pmiAddMetric**(3)](/pmiAddMetric/3.md), [**pmiErrStr**(3)](/pmiErrStr/3.md), [**pmiPutValue**(3)](/pmiPutValue/3.md), [**pmiPutValueHandle**(3)](/pmiPutValueHandle/3.md), [**pmiPutText**(3)](/pmiPutText/3.md), [**pmiPutLabel**(3)](/pmiPutLabel/3.md) and [**pmiSetTimezone**(3)](/pmiSetTimezone/3.md).
