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

NAME

6       pmlc - configure active Performance Co-Pilot pmlogger(s) interactively
7

SYNOPSIS

9       pmlc  [-e]  [-h  host]  [-i] [-n pmnsfile] [-P] [-p port] [-Z timezone]
10       [-z] [pid]
11

DESCRIPTION

13       pmlc may be used to change those metrics and instances which  a  pmlog‐
14       ger(1)  writes to a Performance Co-Pilot archive (see PCPIntro(1)), the
15       frequency with which the metrics are collected and whether the  logging
16       is mandatory, advisory, on or off.  It also reports the current logging
17       status of metrics and instances.  pmlc may be used to control  pmlogger
18       instances on remote hosts as well as those on the local host.
19
20       Normally  pmlc  operates  on  the  distributed Performance Metrics Name
21       Space (PMNS), however if the -n  option  is  specified  an  alternative
22       local PMNS is loaded from the file pmnsfile.
23
24       If  the  -P option is specified, pmlc will attempt to start with a con‐
25       nection to the primary pmlogger on the local host.  If the -p option is
26       specified,  then  pmlc  will  attempt to start with a connection to the
27       pmlogger on this TCP/IP port.  Alternatively, if pid  is  specified,  a
28       connection  to  the  pmlogger  instance  with  that  process id will be
29       attempted on startup.  The -h option may only be used if -P, -p port or
30       a  pid  is also specified.  In that case pmlc will initially connect to
31       the specified (remote) pmlogger instance on host rather than the  local
32       host.   If  the connection to the specified pmlogger instance cannot be
33       established, pmlc will start with no connection.  These  options  typi‐
34       cally  allow  the same file of pmlc commands to be directed to multiple
35       pmlogger instances by varying the command line  arguments.   Note  that
36       -P, -p port, pid and -h are used only when making an initial connection
37       to a pmlogger instance.  They are not used as  defaults  if  subsequent
38       connections are made interactively (see the connect command below).
39
40       By  default,  pmlc reports the time of day according to the local time‐
41       zone on the system where pmlc is run.  The -Z option changes the  time‐
42       zone  to  timezone  in  the  format  of  the environment variable TZ as
43       described in environ(5).  The -z option changes  the  timezone  to  the
44       timezone  of  the  pmlogger  instance  from  which information is being
45       obtained.  Only one of -z or -Z may be specified.
46
47       If standard input is from a tty, pmlc  is  interactive,  with  prompts.
48       The -i flag may be used to force interactive behavior, and is typically
49       used in conjunction with -e to echo all command input on standard  out‐
50       put.
51
52       The following commands may be used:
53
54       show [ loggers ] [ @host ]
55           Displays  the  process identities of all pmlogger instances running
56           on the local host (or host, if specified).   The  primary  pmlogger
57           pid  is parenthesized because it can be referred to as "primary" as
58           well as by its pid.
59
60       connect pid [ @host ]
61       connect primary [ @host ]
62           Connects pmlc to the specified pmlogger process.  Any existing con‐
63           nection  to  a  pmlogger  instance  is closed first.  Each pmlogger
64           instance will accept at most one connection at a time,  so  if  the
65           connection  is successfully established, your pmlc will be the only
66           one controlling the pmlogger instance it is connected to.
67
68       new volume
69           This command works only while a connection to a  pmlogger  instance
70           is  established.  It tells the pmlogger to close the current volume
71           of the log and open a new volume.  Closed volumes may be  archived,
72           e.g.  as  part of a regular log management procedure to control the
73           size of the physical log files.
74
75       status
76           This command works only while a connection to a  pmlogger  instance
77           is  established.   It  prints  information  about  the state of the
78           pmlogger instance and its associated log.
79
80       timezone local | logger | "timezone"
81           This command sets the time zone used when times are printed.  local
82           means  use  the  time  zone of the machine that pmlc is running on.
83           logger means use the time zone of the machine  where  the  pmlogger
84           instance  is  running.  Alternatively an explicit timezone enclosed
85           in quotes may be supplied (refer to TZ in environ(5) for  details).
86           The  default  time zone is local unless one of the -z or -Z options
87           has been supplied on the command line.
88
89       flush
90           This command works only while a connection to a  pmlogger  instance
91           is established, and requests the pmlogger instance to flush to disk
92           all buffers associated with the current archive.   For  old-timers,
93           sync is a synonym for flush.
94
95       help
96           Displays a summary of the available commands.
97           h and ? are synonyms for help.
98
99       quit
100           Exits from pmlc.
101
102       The  remaining  commands  query and change the logging state of metrics
103       and instances.  They will work only if  pmlc  has  a  connection  to  a
104       pmlogger  instance.   Metrics may be specified as fully qualified names
105       (e.g. hinv.ncpu) or subtrees of the PMNS (e.g. hinv) which are expanded
106       to  include  all metrics in the subtree (e.g. hinv.ncpu, hinv.cpuclock,
107       etc.).  Lists of metrics may be specified by enclosing them  in  braces
108       with  spaces  or a comma between metrics (e.g. {hinv.ncpu hinv.ndisk}).
109       Subtrees of metrics may be included in such lists.
110
111       Each individual metric specification may be further  qualified  with  a
112       space  or  comma  separated  list of instances in square brackets (e.g.
113       kernel.all.load["1 minute", "5 minute"]).  External instance  names  or
114       numeric  internal  instance identifiers or both may be used in the same
115       list (e.g. sample.colour.[red,1,"blue"]).  If an instance qualification
116       is  applied  to a subtree of the PMNS all of the metrics in the subtree
117       must have the same instance domain.  Instance qualifications may not be
118       applied to entire lists of metrics but may appear inside such lists.
119
120       If  no  instances  are  specified for a metric, all instances are used.
121       All instances means all instances available at the  time  the  pmlogger
122       instance  in  question fetches the metrics for logging.  If an instance
123       domain changes over time this is not always the  same  as  the  set  of
124       instances  displayed  by  pmlc,  which  can  only display the currently
125       available  instances.   To  prevent  unintentional  errors,  only   the
126       instances  that  are currently available to pmlc may appear in instance
127       specifications.
128
129       query metriclist
130           The current logging state of  each  metric  (and  instances,  where
131           applicable)  in metriclist is displayed.  This includes the logging
132           state (e.g. on, maybe, off) and the logging interval for each  met‐
133           ric (and instance) requested.  The following abbreviations pertain‐
134           ing to metrics (and instances) may appear in the output: adv, advi‐
135           sory;  mand,  mandatory; nl, not in the log; na, in the log but not
136           currently available  from  its  Performance  Metrics  Domain  Agent
137           (PMDA).   Where appropriate, an instance name will appear last on a
138           line preceded by its numeric internal instance identifier.
139
140       [ log ] mandatory on interval metriclist
141           This form of the log command turns on logging for the metrics  (and
142           any  instances)  in  metriclist.   interval specifies how often the
143           specified metrics/instances should be logged.  once indicates  that
144           the  metrics/instances should appear at most once in the log.  More
145           often one would use the optional keyword every followed by a  posi‐
146           tive  number  and  one  of  millisecond (or msec), second (or sec),
147           minute (or min), hour or their plurals.
148           Note that the keyword default which may be  used  for  the  default
149           interval  in  a  pmlogger(1)  configuration  file cannot be used in
150           pmlc.
151           Internal limitations require the interval to be less than (approxi‐
152           mately) 74 hours.  An interval value of zero is a synonym for once.
153
154       [ log ] mandatory off metriclist
155           This  tells  the  pmlogger  instance  not  to  log  any of the met‐
156           rics/instances in metriclist.
157
158       [ log ] mandatory maybe metriclist
159           This tells the pmlogger instance to honor any  subsequent  advisory
160           logging  requests  for the metrics/instances in metriclist.  If the
161           current logging state of the metrics/instances is mandatory (either
162           on or off) the new state will be set to maybe (effectively advisory
163           off).  If the current state of  the  metrics/instances  is  already
164           advisory  (either on or off) the state(s) for the metrics/instances
165           will remain as they are.
166
167       [ log ] advisory on interval metriclist
168       [ log ] advisory off metriclist
169           Advisory logging is only applicable if the last logging state spec‐
170           ified  for  a  metric/instance was "mandatory maybe" (which permits
171           subsequent advisory logging control) or if  the  logging  state  is
172           already advisory.  These two statements turn advisory logging on or
173           off (respectively) for the specified metrics/instances.
174           The interpretation for interval is as above for the mandatory case.
175
176       There is no continuation character  required  for  commands  that  span
177       lines.
178
179       The word at may be used interchangeably with @.
180
181       A  request  to  log  all instances of a metric will supersede any prior
182       request to log either all or specific instances of  a  metric  (if  the
183       request  specifies  a  permissible transition in the logging state).  A
184       request to log specific instances of a metric when all instances  of  a
185       metric are already being logged is refused by pmlogger.
186

PCP ENVIRONMENT

188       Environment variables with the prefix PCP_ are used to parameterize the
189       file and directory names used by PCP.  On each installation,  the  file
190       /etc/pcp.conf  contains  the  local  values  for  these variables.  The
191       $PCP_CONF variable may be used to specify an alternative  configuration
192       file, as described in pcp.conf(4).
193

SEE ALSO

195       PCPIntro(1),    pmcd(1),    pmdumplog(1),   pmlogger(1),   pcp.conf(4),
196       pcp.env(4) and environ(5).
197

DIAGNOSTICS

199       Most error or warning messages are self-explanatory.  A message of  the
200       form
201               Warning: unable to change logging state for...
202       followed  by  a list of metrics (and possibly instances) indicates that
203       pmlogger refused the request  for  the  metrics  (and  instances)  that
204       appear.   Any  metrics  (and  instances) that were specified but do not
205       appear in the message have had their logging state updated successfully
206       (no  news  is good news).  Usually this warning results from requesting
207       advisory logging when a mandatory  control  is  already  in  place,  or
208       requesting  logging  for  specific  instances  when  all  instances are
209       already being logged.
210

CAVEAT

212       If all instances of a metric are being logged and a request is made  to
213       log specific instances of the metric with the same state and frequency,
214       the request may appear to succeed, even though pmlogger has refused the
215       request.   This  is not normally a problem, as the required information
216       will still be placed into the log by pmlogger.
217
218       However in the case where the metric is to be logged once, the  outcome
219       is not what might be expected.  When pmlogger receives a request to log
220       a metric once, it places the current value(s) of the  metric  into  the
221       log  as  soon as it can, regardless of whether the metric is already in
222       the log.  This may be used to  force  values  into  the  log.   When  a
223       request  to  log  specific instances of a metric arrives and is refused
224       because all instances of the metric are already being logged,  pmlogger
225       does  not  place  values  for the instances requested into the log.  It
226       returns the current logging state for each instance requested to  pmlc.
227       The  requested and returned states are identical, so pmlc doesn't raise
228       an error as it should.
229
230       To ensure that only certain instances of a metric are being logged, one
231       should always turn off logging for all instances of the metric prior to
232       turning on logging for the specific instances required.
233
234
235
236Performance Co-Pilot                  SGI                              PMLC(1)
Impressum