1GENPMDA(1)                  General Commands Manual                 GENPMDA(1)
2
3
4

NAME

6       genpmda - Performance Co-Pilot PMDA Generator
7

SYNOPSIS

9       genpmda  [-dv]  [-D domain] [-n pmns] [-o dir] [-s stdpmid] [-t topdir]
10       -c config -i IAM
11

DESCRIPTION

13       genpmda is a rapid application development tool for creating  new  Per‐
14       formance  Metrics  Domain Agents, see PMDA(3).  It provides a very easy
15       and efficient way to extend the Performance  Co-pilot  (PCP)  with  new
16       performance metrics without needing to understand the low level details
17       of how PMDAs are constructed.
18
19       genpmda reads a config file containing an augmented Performance Metrics
20       Name  Space,  see PMNS(5), and automatically generates virtually all of
21       the source code to implement a fully  functional  PMDA,  including  the
22       Makefile, name space, support scripts for configuring the new PMDA, and
23       the metrics help text.  Fairly simple PMDAs can be automatically gener‐
24       ated  from  the  config file without writing any additional code.  More
25       complicated PMDAs, e.g. containing multiple instance  domains,  require
26       only  the  refresh methods for the instance domains to be written manu‐
27       ally.
28
29       An example of the config file format accepted by genpmda is  given  be‐
30       low.
31

OPTIONS

33       Required options:
34
35       -c config
36            input config file, see example below
37
38       -i IAM
39            PMDA  name  IAM, should appear in stdpmid or the -D option must be
40            used to specify a domain.
41
42       Other options:
43
44       -d   generate an Install script for a daemon PMDA (default is DSO)
45
46       -D domain
47            use domain number in the generated pmns and domain.h (if -s is not
48            given)
49
50       -n pmns
51            use pmns as root of the namespace (default matches -i flag)
52
53       -o dir
54            use dir for generated source code, default ./generated
55
56       -s stdpmid
57            path to stdpmid (default ../../pmns/stdpmid)
58
59       -t topdir
60            use topdir in generated GNUmakefile, default ../../..
61
62       -v   print verbose messages about what genpmda is doing.
63
64       Example:
65           Generate an "example" PMDA using domain 99:
66
67           genpmda -D 99 -v -i EXAMPLE -c example.conf
68
69       Here is example.conf config file (for the required -c option):
70
71            example {
72                metric
73            }
74
75            example.metric {
76                ##  metric            string
77                ##  pmid              EXAMPLE:CLUSTER:0
78                ##  indom             PM_INDOM_NULL
79                ##  type              PM_TYPE_STRING
80                ##  units             PMDA_PMUNITS(0,0,0,0,0,0)
81                ##  semantics         PM_SEM_DISCRETE
82                ##  briefhelptext     one line help text for example.metric.string
83                ##  helptext          long help text for example.metric.string
84                ##  helptext          This is the second line of the long help text
85                ##  helptext          and this is the third line.
86                ##  fetch             function example_string_fetch_callback
87                ##  code              atom->cp = "hello world";
88                ##  code              return 1;
89                ##  endmetric
90            }
91
92
93
94

PCP ENVIRONMENT

96       Environment variables with the prefix PCP_ are used to parameterize the
97       file and directory names used by PCP.  On each installation,  the  file
98       /etc/pcp.conf  contains  the  local  values  for  these variables.  The
99       $PCP_CONF variable may be used to specify an alternative  configuration
100       file, as described in pcp.conf(5).
101

SEE ALSO

103       pmcd(1), PMDA(3), pcp.conf(5), pcp.env(5) and PMNS(5).
104
105
106
107Performance Co-Pilot                  PCP                           GENPMDA(1)
Impressum