The project is under active development, so changes on the API and internal mechanism are expected.
Fluent-Bit is an events collector for Linux, Embedded Linux, OSX and BSD family operating systems. It's part of the Fluentd project ecosystem. It allows to collects information from different sources, package and dispatch them to different outputs such as Fluentd.
The current project builds an executable called fluent-bit, a shared library libfluent-bit.so and a static library libfluent-bit.a. Please refer to the build options described below for more details.
To build Fluent-Bit, you need cmake and a C compiler such as GCC or Clang. If you already have the requirements proceed with the following steps:
$ cd build/
$ cmake ..
$ make
When building Fluent-Bit, the following options are available when running cmake:
option | value type | description | default |
---|---|---|---|
WITH_ALL | bool | Enable all features available | off |
WITH_XBEE | bool | Enable XBee support (input) | off |
WITH_DEBUG | bool | Include debug symbols when building targets | off |
WITHOUT_BIN | bool | Do not build the fluent-bit executable | off |
In order to active one of these features, you need to set a boolean value. As an example if we would like to build Fluent-Bit with XBee support we should do:
$ cd build/
$ cmake -DWITH_XBEE=1 ..
$ make
Multiple features can be enabled with cmake, just not that the WITH_ALL option will activate and override any previous value for all of them.
Once the tool have been compiled, a binary file called Fluent-Bit will be found on the bin/ directory. The tool is designed with the same philosophy than Fluentd, it requires an Input type (or many) from where the data will be collected and an Output where it will be flushed.
name | option | description |
---|---|---|
CPU | cpu | gather CPU usage between snapshots of one second. It support multiple cores |
Memory | mem | usage of system memory |
Kernel Ring Buffer | kmsg | read Linux Kernel messages, same behavior as the dmesg command line program |
XBee | xbee | listen for incoming messages over a Xbee device |
name | option | description |
---|---|---|
Fluentd | fluentd://host:port | flush content to a Fluentd service. On the Fluentd side, it requires an in_forward. |
TreasureData | td | flush data collected to TreasureData service (cloud analytics platform) |
STDOUT | stdout | prints the collected data to standard output stream |
$ fluent-bit -i cpu -o fluentd://localhost:12224
In order to contribute to the project please refer to the CONTRIBUTING guidelines.
This program is under the terms of the Apache License v2.0.
irc.freenode.net #fluent-bit