Skip to content

enukane/fluent-bit

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Fluent Bit

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.

Build

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.

Using Fluent Bit

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.

Input Plugins

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

Output Plugins

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

Usage

Flush CPU usage to a Fluentd service

$ fluent-bit -i cpu -o fluentd://localhost:12224

Contributing

In order to contribute to the project please refer to the CONTRIBUTING guidelines.

License

This program is under the terms of the Apache License v2.0.

Contact

irc.freenode.net #fluent-bit

About

Events Collector for Embedded Linux

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 63.9%
  • C++ 25.3%
  • Shell 5.9%
  • HTML 1.9%
  • Roff 1.3%
  • Makefile 0.8%
  • Other 0.9%