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

# pmdasample(1)

sample performance metrics domain agent (PMDA)

## NAME

**pmdasample** - sample performance metrics domain agent (PMDA)

## SYNOPSIS

**$PCP\_PMDAS\_DIR/pmdasample** \[**-D** *debug*\] \[**-d** *domain*\] \[**-i** *port*\] \[**-l** *logfile*\] \[**-p**\] \[**-u** *socket*\] \[**-U** *username*\]

## DESCRIPTION

**pmdasample** is a sample Performance Metrics Domain Agent (PMDA) which exports a variety of synthetic performance metrics.

This PMDA was developed as part of the quality assurance testing for the PCP product, but has other uses, most notably in the development of new PCP clients.

The metrics exported by the sample PMDA cover the full range of data types, data semantics, value cardinality, instance domain stability and error conditions found in real PMDAs.

A brief description of the **pmdasample** command line options follows:

- **-d**

  It is absolutely crucial that the performance metrics *domain* number specified here is unique and consistent. That is, *domain* should be different for every PMDA on the one host, and the same *domain* number should be used for the same PMDA on all hosts.

- **-i**

  Expect PMCD to connect to **pmdasample** on the specified TCP/IP port. *port* may be a port number or port name.

- **-l**

  Location of the log file.  By default, a log file named *sample.log* is written in the current directory of [**pmcd**(1)](/pmcd/1.md) when **pmdasample** is started, i.e. **$PCP\_LOG\_DIR/pmcd**. If the log file cannot be created or is not writable, output is written to the standard error instead.

- **-p**

  Expect PMCD to create a pipe and the connection to **pmdasample** is via standard input and standard output.  This is the default connection mode.

- **-u**

  Expect PMCD to connect to **pmdasample** on the Unix domain socket named *socket*.

- **-U**

  User account under which to run the agent. The default is the unprivileged "pcp" account in current versions of PCP, but in older versions the superuser account ("root") was used by default.

At most one of the options **-i**, **-p** and **-u** may be specified.

## INSTALLATION

If you want access to the names, help text and values for the sample performance metrics, do the following as root:

```
# cd $PCP_PMDAS_DIR/sample
# ./Install
```

Note that the installation script also installs the DSO version of the sample PMDA, so there are in fact two PMDAs installed, and two sets of performance metrics, namely **sample.\*** and **sampledso.\***.

If you want to undo the installation (and remove both PMDAs), do the following as root:

```
# cd $PCP_PMDAS_DIR/sample
# ./Remove
```

**pmdasample** is launched by [**pmcd**(1)](/pmcd/1.md) and should never be executed directly. The Install and Remove scripts notify [**pmcd**(1)](/pmcd/1.md) when the agent is installed or removed.

## FILES

- **$PCP\_PMCDCONF\_PATH**

  command line options used to launch **pmdasample**

- **$PCP\_PMDAS\_DIR/sample/help**

  default help text file for the sample metrics

- **$PCP\_PMDAS\_DIR/sample/Install**

  installation script for the **pmdasample** agent

- **$PCP\_PMDAS\_DIR/sample/Remove**

  undo installation script for the **pmdasample** agent

- **$PCP\_LOG\_DIR/pmcd/sample.log**

  default log file for error messages and other information from **pmdasample**

## 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).

## DEBUGGING OPTIONS

The **-D** or **--debug** option enables the output of additional diagnostics on *stderr* to help triage problems, although the information is sometimes cryptic and primarily intended to provide guidance for developers rather than for end-users. *debug* is a comma separated list of debugging options; use [**pmdbg**(1)](/pmdbg/1.md) with the **-l** option to obtain a list of the available debugging options and their meaning.

Debugging options specific to **pmdasample** are as follows:

| | |
| --- | --- |
| Option | Description |
| appl0 | verbose diagnostics for dynamic instance domains and metric mapping |

## SEE ALSO

[**PCPIntro**(1)](/PCPIntro/1.md), [**pmcd**(1)](/pmcd/1.md), [**pmdasimple**(1)](/pmdasimple/1.md), [**pmdatrivial**(1)](/pmdatrivial/1.md), [**pmdatxmon**(1)](/pmdatxmon/1.md), [**pcp.conf**(5)](/pcp.conf/5.md) and [**pcp.env**(5)](/pcp.env/5.md).
