bionic (1) pmdadm.1.gz

Provided by: pcp_4.0.1-1_amd64 bug

NAME

       pmdadm - Device Mapper PMDA

DESCRIPTION

       pmdadm  is a Performance Metrics Domain Agent (PMDA) which exports metric values for Device Mapper on the
       local system.

       This PMDA collects its data through the dmsetup(8) utility, dmstats API and requires that the program  is
       installed in order to function.

       In  addition,  at  least  a statistics region must be created to use dmstats(8) in order to get the basic
       counter value.

       Further details on device mapper can be found at http://redhat.com

INSTALLATION

       Install the DM PMDA by using the Install script as root:

             # cd $PCP_PMDAS_DIR/dm
             # ./Install

       To uninstall, do the following as root:

             # cd $PCP_PMDAS_DIR/dm
             # ./Remove

       pmdadm is launched by pmcd(1) and should never be executed directly.   The  Install  and  Remove  scripts
       notify pmcd when the agent is installed or removed.

FILES

       $PCP_PMDAS_DIR/dm/help
           default help text file for the dm metrics

       $PCP_PMDAS_DIR/dm/Install
           installation script for the pmdadm agent

       $PCP_PMDAS_DIR/dm/Remove
           undo installation script for the pmdadm agent

       $PCP_LOG_DIR/pmcd/dm.log
           default log file for error messages from pmdadm

dmstats metric

       This  PMDA use the dmstats API (the userspace device-mapper support library) to allow dmstats performance
       data.
       Using this PMDA, users need the userspace device-mapper support library (libdevmapper) and the  userspace
       command  line  tool  (dmstats).   Before  getting  the  statistics  metric, statistics regions have to be
       created.  When creating the statistics regions of all device-mapper device under /dev/mapper as below:

            # dmstats create --alldevices

       When creating the statistics regions with specified histogram boundaries as below:

            # dmstats create --alldevices --bounds histogram_boundaries

       Specify the boundaries of a latency histogram to be tracked for the region as a comma separated  list  of
       latency  values. Latency values are given in nanoseconds. An optional unit suffix of ns, us, ms, or s may
       be given after each  value  to  specify  units  of  nanoseconds,  microseconds,  miliseconds  or  seconds
       respectively.
       Further Detail on dmstats(8) can be found at man page.

       Basic Counters
           Basic counters provide access to the raw counter data from the kernel, allowing further processing to
           be carried out by another program.
           The Kernel provides thirteen separate counters for each statistics area.  The first eleven  of  these
           match  the  counters  provided  in  /proc/diskstats  or  /sys/block/*/*/stat.  The final pair provide
           separate counters for read and write time.

           dmstats.read
               Count of reads completed this interval per device-mapper device.

           dmstats.reads_merged
               Count of reads merged this interval per device-mapper device.

           dmstats.read_bytes
               Count of kbytes read this interval per device-mapper device.

           dmstats.reads_time
               Accumulated duration of all read requests per device-mapper device.

           dmstats.write
               Count of writes completed this interval per device-mapper device.

           dmstats.writes_merged
               Count of writes completed this interval per device-mapper device.

           dmstats.write_bytes
               Count of kbytes write this interval per device-mapper device.

           dmstats.writes_time
               Accumulated duration of all write requests per device-mapper device.

           dmstats.in_progress
               Count of requests currently in progress per device-mapper device.

           dmstats.io_ticks
               Nanoseconds spent servicing request per device-mapper device.

           dmstats.queue_ticks
               This field is incremented at each I/O start, I/O completion, I/O merge, or read of these stats by
               the  number of I/Os in progress multiplied by the number of nanoseconds spent doing I/O since the
               last update of this field. This can provide an easy measure of both I/O completion time  and  the
               backlog that may be accumulating.

           dmstats.read_ticks
               Nanoseconds spent servicing reads per device-mapper device.

           dmstats.write_ticks
               Nanoseconds spent servicing writes per device-mapper device.

       Histogram fields
           Histograms measure the frequency distribution of user specified I/O latency intervals.  Histogram bin
           boundaries are specified when a region is created.
           Instance name represents devicename, region id and bin boundaries.

           dmstats.histogram.hist_count
               A list of the histogram counts for the current statistics area  in  order  of  ascending  latency
               value.  Each  value represents the number of I/Os with latency times falling into that bin's time
               range during the sample period.

           dmstats.histogram.hist.bins
               The number of latency histogram bins configured for the area.

Examples

            # dmstats create looptest0 --bounds 10us,30us,50us
            looptest0: Created new region with 1 area(s) as region ID 0

            # pminfo -f dmstats.read dmstats.histogram.hist_count
            dmstats.read
                inst [0 or "looptest0"] value 4099

            dmstats.histogram.hist_count
                inst [0 or "looptest0:0:0s"] value 1
                inst [1 or "looptest0:0:10us"] value 3752
                inst [2 or "looptest0:0:30us"] value 250
                inst [3 or "looptest0:0:50us"] value 96

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

SEE ALSO

       pmcd(1), pmstore(1), dmsetup(8), and dmstats(8).