Integrate collectd with OpenBMC

Kun Yi kunyi at google.com
Fri Jun 28 15:51:03 AEST 2019


Hello there,

In the context of reporting BMC performance metrics, my intern Gabriel
(cc'ed here) and I have started looking at integrating collectd as a
metrics collection tool on OpenBMC. We have got it running, which is
trivial, but the next question is how to report the data.

We have thought about it and thinks implementing a D-Bus interface to be
the most flexible approach. At first, we could implement a snapshot
(instantaneos read) interface. It would then be fairly straightforward to
add them as Redfish/IPMI sensors.

There are two ways to do this:
1. Implement as a collectd "D-Bus" plugin [1]. Collectd supports writing
custom plugins which are C files calling the internal plugin APIs. Could
probably use sdbus to implement.

+ could potentially be upstreamed to collectd
- the code probably will live in a downstream fork first, and if it doesn't
end up upstream, maintaining could become an issue since collectd plugin
API is not guaranteed stable
- C

2. Implement as an interposer daemon that translates between one of the
formats that collectd supports (unix socket, plaintext, RRDTool..) to D-Bus

+ project could be purely OpenBMC
+ can use sdbusplus
- another daemon

Any advice on this? Currently we are leaning towards the first approach,
but do you agree the D-Bus plugin is general enough to be of interest to
the upstream collectd community?

I can definitely reach out to the collectd group but just want to ask here
first :)

[1] Collectd plugins:
https://collectd.org/wiki/index.php/Plugin_architecture
-- 
Regards,
Kun
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ozlabs.org/pipermail/openbmc/attachments/20190627/e1048b09/attachment.htm>


More information about the openbmc mailing list