# pmdatrace

## NAME



           **pmdatrace** - application-level transaction performance metrics
           domain agent
    


## SYNOPSIS



           **$PCP_PMDAS_DIR/trace/pmdatrace**[**-D** _debug_] [**-d** _domain_] [**-l** _logfile_]
           [**-A** _access_] [**-I** _port_] [**-M** _username_] [**-N** _buckets_] [**-T** _period_] [**-U**
           _units_]
    


## DESCRIPTION



           **pmdatrace** is a Performance Metrics Domain Agent (PMDA) which
           exports transaction performance metrics from application processes
           which use the _pcp_trace_ library described in pmdatrace(3).
    
           A brief description of the **pmdatrace** 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.
    
           **-l** Location of the log file.  By default, a log file named
                _trace.log_ is written in the current directory of pmcd(1) when
                **pmdatrace** 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.
    
           **-A** Host-based access control for **pmdatrace**.  _access_ must be
                either an allow or deny specification, using either
                allow:hostspec:maxconns or disallow:hostspec, where `allow'
                and `disallow' are keywords, `hostspec' is a host
                specification conforming to the format used by both pmcd(1)
                and pmlogger(1), and `maxconns' is the maximum number of
                connections allowed from a given `hostspec'.  Using a maximum
                connections of zero specifies an unlimited number of
                connections for the accompanying `hostspec'.
    
           **-I** Communicate with _pcp_trace_ clients via the given Internet
                _port_.  This can alternatively be specified by setting
                **$PCP_TRACE_PORT** in the environment to some valid port number
                (use of the **-I** option overrides this).  The default port
                number is 4323.
    
           **-T** _period_ defines the aggregation period used to compute the
                recent averages and extrema.  Specified as a time interval
                using the syntax described in PCPIntro(1) for the common **-t**
                PCP argument, e.g. **30 seconds** or **1 min**.  The default is 60
                seconds.
    
           **-M** 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.
    
           **-N** Internally, the aggregation _period_ is divided into _bucket_
                divisions, and the rolling average is recomputed every
                _period_ /_bucket_ seconds.  For example, the defaults correspond
                to -T 60 and -N 12, which means the average is recomputed
                every five seconds for a period covering the prior 60
                seconds.
    
           **-U** This option allows the dimension and scale associated with
                the observation value metric to be configured.  _units_ is a
                comma-separated string of six integer values, which are the
                space dimension, time dimension, count dimension, space
                scale, time scale, and count scale, respectively.  The
                default dimension and scale is ``none'', which is equivalent
                to presenting ``0,0,0,0,0,0'' as the argument to -U.  The
                units associated with a metric are most easily viewed using
                the -d (metric description) option to pminfo(1).  The Install
                script described below steps through this option quite
                explicitly, so it is recommended that the Install script be
                used for building up the _units_ specification.
    
           Essentially, the exported metrics provide statistics on the time
           for completion of each transaction, and an average count of
           transactions completed and watch points passed over a given time
           _period_.
    


## INSTALLATION



           In order for a host to export the names, help text and values for
           the Trace performance metrics, do the following as root:
    
                # cd $PCP_PMDAS_DIR/trace
                # ./Install
    
           If you want to undo the installation, do the following as root:
    
                # cd $PCP_PMDAS_DIR/trace
                # ./Remove
    
           **pmdatrace** is launched by pmcd(1) and should never be executed
           directly.  The Install and Remove scripts notify pmcd(1) when the
           agent is installed or removed.
    


## FILES



           **$PCP_PMCDCONF_PATH**
                  command line options used to launch **pmdatrace**
           **$PCP_PMDAS_DIR/trace/help**
                  default help text file for the trace metrics
           **$PCP_DEMOS_DIR/trace/***
                  example programs which use the _pcp_trace_ library
           **$PCP_PMDAS_DIR/trace/Install**
                  installation script for the **pmdatrace** agent
           **$PCP_PMDAS_DIR/trace/Remove**
                  undo installation script for **pmdatrace**
           **$PCP_LOG_DIR/pmcd/trace.log**
                  default log file for error messages and other information
                  from **pmdatrace**
    


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


## 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 end-users.  _debug_ is a comma
           separated list of debugging options; use pmdbg(1) with the **-l**
           option to obtain a list of the available debugging options and
           their meaning.
    
           Debugging options specific to **pmdatrace** are as follows:
           ┌────────┬───────────────────────────────────────────────────────┐
           │ **Option** │ **Description** │
           ├────────┼───────────────────────────────────────────────────────┤
           │ **appl0** │ authentication parsing, client changes, IPC, metric   │
           │        │ data and metadata refreshes                           │
           ├────────┼───────────────────────────────────────────────────────┤
           │ **appl1** │ raw data for rate metrics                             │
           └────────┴───────────────────────────────────────────────────────┘
    


* * *