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
|