pcp
[Top] [All Lists]

pcp updates: dynamic container switching prototype

To: PCP <pcp@xxxxxxxxxxx>
Subject: pcp updates: dynamic container switching prototype
From: Nathan Scott <nathans@xxxxxxxxxx>
Date: Thu, 15 Oct 2015 01:23:42 -0400 (EDT)
Delivered-to: pcp@xxxxxxxxxxx
In-reply-to: <1376178884.54854875.1444886597716.JavaMail.zimbra@xxxxxxxxxx>
Reply-to: Nathan Scott <nathans@xxxxxxxxxx>
Thread-index: PtUjKLfvtDqwrFS7ziTmVuUh1oBnVQ==
Thread-topic: pcp updates: dynamic container switching prototype
Changes committed to git://git.pcp.io/nathans/pcp.git master

Nathan Scott (1):
      pmcd: implement dynamic switching of monitored containers


 qa/src/.gitignore                 |    1 
 qa/src/GNUlocaldefs               |    2 
 qa/src/storepmcd.c                |  184 +++++++++++++++++++++++++++++++++++++
 src/libpcp_pmcd/src/client.c      |   32 ++++++
 src/pmcd/src/client.c             |    3 
 src/pmcd/src/client.h             |    2 
 src/pmcd/src/config.c             |    4 
 src/pmcd/src/pmcd.c               |   12 ++
 src/pmdas/pmcd/help               |    6 +
 src/pmdas/pmcd/root_pmcd          |    1 
 src/pmdas/pmcd/src/pmcd.c         |  187 +++++++++++++++++++++-----------------
 src/pmdas/sample/src/percontext.c |    2 
 12 files changed, 353 insertions(+), 83 deletions(-)


commit 945e6435f042d1a9f0646c029da552feaa131cd6
Author: Nathan Scott <nathans@xxxxxxxxxx>
Date:   Thu Oct 15 16:19:33 2015 +1100

    pmcd: implement dynamic switching of monitored containers
    
    Provides a storable metric pmcd.client.container which both
    reports on the current container associated with a context,
    and allows it to be dynamically modified.  This primarily
    serves to reduce the number of PMAPI contexts required for
    accessing containers, simplifying the client-side access
    for heavily container-focussed client tools.
    
    On the server side (this commit), the change involves some
    delicate interactions between pmdapmcd, pmcd itself, pmdaroot
    and any PMDAs that support containers (attributes callback)
    but in the end the implementation was surprisingly clean IMO.
    
    An example utility showing context changing/clearing (empty
    container name clears things back to using the host) can be
    found at qa/src/storepmcd.c.

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