---
name: "pmdaOpenLog"
section: "3"
platform: "linux"
package: "pcp"
version: "7.2.2-2"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/pmdaOpenLog"
---

# pmdaOpenLog(3)

redirect stderr to a logfile

## NAME

**pmdaOpenLog** - redirect stderr to a logfile

## C SYNOPSIS

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

**void pmdaOpenLog(pmdaInterface \*** *dispatch***);**

**cc ... -lpcp\_pmda -lpcp**

## DESCRIPTION

**pmdaOpenLog** redirects *stderr* to the logfile specified in the *dispatch* structure, set by the previous call to [**pmdaDaemon**(3)](/pmdaDaemon/3.md) or [**pmdaGetOpt**(3)](/pmdaGetOpt/3.md). The first line of the log file will detail the name of the calling process, the host the process is running on, and the current time.  In addition, the log is appended with the exit time of the process by a routine registered with [**atexit**(3)](/atexit/3.md).

## CAVEAT

The PMDA must be using **PMDA\_INTERFACE\_2** or later, as specified in the call to [**pmdaDSO**(3)](/pmdaDSO/3.md) or [**pmdaDaemon**(3)](/pmdaDaemon/3.md).

## 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 configuration file, as described in [**pcp.conf**(5)](/pcp.conf/5.md). Values for these variables may be obtained programmatically using the [*pmGetConfig*(3)](/pmGetConfig/3.md) function.

## SEE ALSO

[**pmcd**(1)](/pmcd/1.md), **atexit**(2), [**PMAPI**(3)](/PMAPI/3.md), [**PMDA**(3)](/PMDA/3.md), [**pmdaDaemon**(3)](/pmdaDaemon/3.md) and [**pmdaGetOpt**(3)](/pmdaGetOpt/3.md).
