pcp
[Top] [All Lists]

Re: [pcp] possible collectd interoperation options

To: "Frank Ch. Eigler" <fche@xxxxxxxxxx>, pcp developers <pcp@xxxxxxxxxxx>
Subject: Re: [pcp] possible collectd interoperation options
From: Mark Goodwin <mgoodwin@xxxxxxxxxx>
Date: Fri, 24 Apr 2015 10:01:21 +1000
Delivered-to: pcp@xxxxxxxxxxx
In-reply-to: <20150318182507.GB29537@xxxxxxxxxx>
References: <20150318182507.GB29537@xxxxxxxxxx>
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.3.0
On 03/19/2015 05:25 AM, Frank Ch. Eigler wrote:
Hi -

A potential pcp user recently asked whether pcp can match the data
gathering capabilities of collectd [1], listing a smorgasbord of
their-equivalent-of-pmda's.  The simple answer is "no", but maybe we
can get to "not yet" and maybe even "soon", while not reinventing the
wheel.

A brief review: collectd is kind of like pmlogger+pmcd in one, where
their pmdas as well as logging-output backends [2] are packaged in
shared libraries that use a fixedish abi/api [3].  The main loop of
collectd periodically polls the configured data sources and relays to
data sinks.

So, how do we play in the same sandbox?  A few options:

just revisiting this since I initially confused collectd with collectl
(and we already have a collectl2pcp importer). Additionally to the options
listed below - the collectd daemon supports a unix domain socket interface,
see: https://collectd.org/documentation/manpages/collectd-unixsock.5.shtml

There is a perl binding too. A bridging PMDA using this socket interface
could import collectd metrics - we'd need some sort of descriptor table
for the PCP metadata since this seems to be implicit in collectd.

Regards
-- Mark


- write a pcp data source plugin for collectd

   This would leave collectd as the driver, but we would get to
   provide our wealth of data to supplement theirs, kind of like
   pcp2graphite.


- write a pcp data sink plugin for collectd

   This would leave collectd as the driver, but we could get an
   incrementally written pcp log-archive as output.


- write a collectd plugin-host/impersonator pmda for pcp

   This would consist of a new pmda that implements the collectd plugin
   abi (server side), loads unmodified collectd plugin .so's, invokes
   their 'read' callbacks on demand and saves their output for relaying
   into pmcd/pcp.

   This would let pcp "drive", exploit the library of collectd plugins,
   and ease some of the adverse performance implications of collectd's
   design (by for example refreshing only those agents & metrics that
   were solicited).


Are any of these (or other possibilities) of interest to the group?


[1] https://collectd.org/
[2] https://collectd.org/wiki/index.php/Table_of_Plugins
[3] https://collectd.org/wiki/index.php/Plugin_architecture

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


<Prev in Thread] Current Thread [Next in Thread>
  • Re: [pcp] possible collectd interoperation options, Mark Goodwin <=