pcp
[Top] [All Lists]

RE: [pcp] support for elasticsearch 2 metrics

To: "'Alec Ten Harmsel'" <alec@xxxxxxxxxxxxxxxxxx>, <pcp@xxxxxxxxxxx>
Subject: RE: [pcp] support for elasticsearch 2 metrics
From: "Ken McDonell" <kenj@xxxxxxxxxxxxxxxx>
Date: Sat, 20 Feb 2016 06:45:14 +1100
Delivered-to: pcp@xxxxxxxxxxx
In-reply-to: <20160219145514.GB726@xxxxxxxxxxxxxxxxxxxxxxxxxxx>
References: <20160219145514.GB726@xxxxxxxxxxxxxxxxxxxxxxxxxxx>
Thread-index: AQIY5BebY+q9HK2KMV4+a0vQt0FPs56k0Cmg
Welcome to the list Alec.

> -----Original Message-----
> From: pcp-bounces@xxxxxxxxxxx [mailto:pcp-bounces@xxxxxxxxxxx] On
> Behalf Of Alec Ten Harmsel
> Sent: Saturday, 20 February 2016 1:55 AM
> To: pcp@xxxxxxxxxxx
> Subject: [pcp] support for elasticsearch 2 metrics
> 
> Hi,
> 
> The ElasticSearch PMDA was mostly written in 2011-2013, and now the ES
> REST API has changed. Specifically, some of the URLs have changed:
> 
> * _cluster/nodes/stats -> _nodes/stats
> * _cluster/nodes -> _nodes
> 
> Are there any plans to add support for this new API? I searched on
> bugzilla and tasks.pcp.io, and couldn't find anything referencing an
> update of the elasticsearch PMDA.

I'm not aware of any plans.  But that reflects the fact that the issue has
not been raised previously. For many of the PMDA in PCP the core development
team either does not have access to the associated services or is not using
the PMDA in their day-to-day activities.

We rely on others (like you) with interests in specific PMDAs to alert us to
changes in the PMDA that would make it more useful.

> I am planning on patching this for our elasticsearch cluster; is it
> possible to get this work accepted upstream? Right now, I'm planning
> on copying the elasticsearch PDMA to elasticsearch2, so that they can
> coexist.

We're happy to accept contributions and merge 'em, so that's not likely to
be an issue.

Rather than replicating the PMDA (especially if the bulk of the
functionality is the same) we'd prefer to see a software engineering
approach where the PMDA probes the source of the data, determines which
version is currently running out there, and adjusts its behaviour
accordingly.  This may not be possible in some cases, but most commonly this
is possible.

The PMDA then supports the union of one or more versions of the external
data source (ES in this case) and will continue to work even if that
external source is subsequently upgraded.

If there are additional metrics that may or may not be present, then setting
the metric type to PM_TYPE_NOSUPPORT in the pmDesc structure indicates that
the associated metric is missing (today).

Instance domains are dynamic, so if the available instances of a metric
change between versions of the external data source then this is reflected
directly in the members of the associated instance domain.

If you have further questions, this is the right forum to ask them.

Good luck.

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