pcp
[Top] [All Lists]

Re: [pcp] pcp updates: pcp sub-commands (WIP)

To: pcp@xxxxxxxxxxx
Subject: Re: [pcp] pcp updates: pcp sub-commands (WIP)
From: Mark Goodwin <mgoodwin@xxxxxxxxxx>
Date: Mon, 22 Apr 2013 11:55:25 +1000
Delivered-to: pcp@xxxxxxxxxxx
In-reply-to: <461486508.335195.1366592519995.JavaMail.root@xxxxxxxxxx>
References: <461486508.335195.1366592519995.JavaMail.root@xxxxxxxxxx>
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:14.0) Gecko/20130206 Thunderbird/14.0
I guess we could modify pmafm so the "replay" command used this scheme.
e.g. even though pmcollectl creates a pmafm folio, pmafm replay on
that folio fails because (a) pmafm doesn't know about pmcollectl
(easily fixed), (b) the folio doesn't have the correct comment header
(easily fixed), but (c) pmcollectl doesn't grok the standard -a archive
option .. it uses -p.

Problem (c) is a candidate to be fixed using this new scheme, but I
sort of wonder - are we promoting cmd line option inconsistencies
by fixing these kinds of problems in this way? If we were to reimplement
the sysstat suite in pcp/py, we'd sort of have no choice but to
honour the cmdline options of the original tools.


On 04/22/2013 11:02 AM, Nathan Scott wrote:
Changes committed to git://oss.sgi.com/nathans/pcp.git launch

  man/man1/pcp.1                 |  117 ++++++-
  qa/518                         |   12
  qa/700                         |   59 +++
  qa/700.out                     |   15
  src/GNUmakefile                |    2
  src/pcp/GNUmakefile            |    7
  src/pcp/atop/GNUmakefile       |   31 +
  src/pcp/atop/pmatop.py         |  579 ++++++++++++++++++++++++++++++++++
  src/pcp/collectl/GNUmakefile   |   31 +
  src/pcp/collectl/pmcollectl.py |  683 
+++++++++++++++++++++++++++++++++++++++++
  src/pcp/pcp.sh                 |   87 ++++-
  src/pcp/uptime/GNUmakefile     |   27 +
  src/pcp/uptime/pcp-uptime.py   |   68 ++++
  src/pmatop/GNUmakefile         |   28 -
  src/pmatop/pmatop.py           |  579 ----------------------------------
  src/pmcollectl/GNUmakefile     |   28 -
  src/pmcollectl/pmcollectl.py   |  683 
-----------------------------------------
  17 files changed, 1684 insertions(+), 1352 deletions(-)

commit fe1d8042c0f9e4b3582c151378af052c373d5ef3
Author: Nathan Scott <nathans@xxxxxxxxxx>
Date:   Mon Apr 22 10:58:08 2013 +1000

     A mechanism for re-implemented utilities to offer all PCP functionality

     One issue with commands re-implemented using the PMAPI is that either
     command line options conflict with existing PCP options, or there is no
     equivalent in the re-implemented tool.  This changes the pcp(1) command
     so that it can act as a proxy for adding this extended PCP functionality
     in a way that addresses both of these concerns, using pcp "sub-commands".

     A simple example is provided using uptime(1), re-implemented using python
     APIs.  The intent is that "pcp -h foo.com uptime" will work as expected,
     once complete, as will "pcp -a 20121412 -S @12:00 uptime", and so on.
     The collectl and atop re-implementations should come under this scheme as
     well, once it is ready - a python helper module to translate environment
     variables to PMAPI interfaces/flags is still needed.

     This is a work-in-progress interim commit, mainly to solicit some early
     feedback and to allow others to hack on the WIP code too.  There are a
     good number of similarities between this and the original pmlaunch idea
     that PCP has had in the past.

_______________________________________________
pcp mailing list
pcp@xxxxxxxxxxx
http://oss.sgi.com/mailman/listinfo/pcp


<Prev in Thread] Current Thread [Next in Thread>