Is there any plan or option to output the system collected metrics to Prometheus?
I know that you expose an endpoint for the fluentbit agent metrics itself, just wondering whether we can have the other metrics from the system plugins exported too like:
CPU, MEM. Process, Health, Disk etc..
I guess there's a memory overhead of holding them for the scrape to occur.
Not sure whether there's a preferred route to this, or whether you'd expect to push them to a Fluentd aggregator instance instead?
do you mean to gather metrics from the running container or running node ?
Yes that's the intent. FluentBit has a significantly smaller footprint than other solutions, so would be awesome if it could export these node or container metrics.
As a maintainer of the prometheus node-exporter I might be biased but I think providing these metrics is a very different concern than the logshipping fluent-bit does, so not sure it makes sense to add that here?
While I do agree that duplicating the works of the node-exporter seems a bit much a generic prometheus output plugin, that makes it possible to turn logs into metrics does sound pretty great and something that would imo be quite useful.
Ok so maybe my request hasn't been clear.
As far as I understand fluentbit already has inputs to collect cpu, memory, io, disk so in that regard I believe it is already duplicating 'some' node exporter features.
My request was more about providing the capability to expose the above mentioned collected data for Prometheus.
For context, my rationale here is that FluentBit IMO is ideally positioned to be the best lightweight collector capable of BOTH text and numeric data i.e. logs and metrics. Other such solutions tend to focus on one or the other, and as much as I recognise that fluentbit is predominantly interested in logs, the fact remains that it can and does collect some base useful metrics. So as a way to reduce the footprint on the host, a single lightweight agent would really be appealing.
Hopefully that helps explain my ask, and hopefully my current understanding is correct.
FYI: this is something we already started (at least from a design perspective). WIP
I understand this is an older issue, I just wanted to chime in and say I would very much like this feature. My use case is parsing log files that have performance and progress metrics (using filters) and charting those in real-time (e.g. the bitrate or speed of an encoding process). Right now I have this somewhat working by dumping the parsed metrics to InfluxDB and using Grafana to visualize the data, but I'm interested in Prometheus more than InfluxDB and I prefer fluent-bit to the native logging routers for prometheus and influx (in part due to my production environment being AWS).
Thanks a ton @edsiper !
noted
Just adding on another one. I would love to use stream processing to collect some metrics for prometheus.
Examples
Most helpful comment
While I do agree that duplicating the works of the node-exporter seems a bit much a generic prometheus output plugin, that makes it possible to turn logs into metrics does sound pretty great and something that would imo be quite useful.