Fluent Bit: Official Manual
SlackGitHubCommunity MeetingsSandbox and LabsWebinars
1.0
1.0
  • Introduction
  • About
    • Why ?
    • Fluentd & Fluent Bit
    • License
  • Installation
    • Supported Platforms
    • Requirements
    • Download Sources
    • Build and Install
    • Build with Static Configuration
    • Docker Images
    • Kubernetes
    • TD Agent Bit
    • Debian Packages
    • Ubuntu Packages
    • CentOS Packages
    • Raspberry Pi
    • Yocto Project
    • Unit Tests
  • Getting Started
    • Service
    • Input
    • Parser
    • Filter
    • Buffer
    • Routing
    • Output
  • Configuration
    • Configuration Schema
    • Configuration File
    • Configuration Variables
    • Configuration Commands
    • Buffering / Storage
    • Monitoring
    • Unit Sizes
    • TLS / SSL
    • Backpressure
    • Memory Usage
    • Upstream Servers
    • Scheduler
  • Service
  • Input Plugins
    • CPU Usage
    • Disk Usage
    • Dummy
    • Exec
    • Forward
    • Head
    • Health
    • Kernel Log Buffer
    • Memory Usage
    • MQTT
    • Network Traffic
    • Process
    • Random
    • Serial Interface
    • Standard Input
    • Syslog
    • Systemd
    • Tail
    • TCP
  • Parsers
    • JSON Parser
    • Regular Expression Parser
    • Decoders
  • Filter Plugins
    • Grep
    • Kubernetes
    • Lua
    • Parser
    • Record Modifier
    • Standard Output
    • Throttle
    • Nest
    • Modify
  • Output Plugins
    • Azure
    • BigQuery
    • Counter
    • Elasticsearch
    • File
    • FlowCounter
    • Forward
    • HTTP
    • InfluxDB
    • Kafka
    • Kafka REST Proxy
    • NATS
    • Null
    • Stackdriver
    • Standard Output
    • Splunk
    • Treasure Data
  • Fluent Bit for Developers
    • Library API
    • Ingest Records Manually
Powered by GitBook
On this page
  • Prepare environment
  • Build Options
  • General Options
  • Input Plugins
  • Output Plugins

Was this helpful?

Export as PDF
  1. Installation

Build and Install

Last updated 6 years ago

Was this helpful?

uses as it build system. The suggested procedure to prepare the build system consists on the following steps:

Prepare environment

In the following steps you can find exact commands to build and install the project with the default options. If you already know how CMake works you can skip this part and look at the build options available.

Change to the build/ directory inside the Fluent Bit sources:

$ cd build/

Let configure the project specifying where the root path is located:

$ cmake ../
-- The C compiler identification is GNU 4.9.2
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- The CXX compiler identification is GNU 4.9.2
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
...
-- Could NOT find Doxygen (missing:  DOXYGEN_EXECUTABLE)
-- Looking for accept4
-- Looking for accept4 - not found
-- Configuring done
-- Generating done
-- Build files have been written to: /home/edsiper/coding/fluent-bit/build

Now you are ready to start the compilation process through the simple make command:

$ make
Scanning dependencies of target msgpack
[  2%] Building C object lib/msgpack-1.1.0/CMakeFiles/msgpack.dir/src/unpack.c.o
[  4%] Building C object lib/msgpack-1.1.0/CMakeFiles/msgpack.dir/src/objectc.c.o
[  7%] Building C object lib/msgpack-1.1.0/CMakeFiles/msgpack.dir/src/version.c.o
...
[ 19%] Building C object lib/monkey/mk_core/CMakeFiles/mk_core.dir/mk_file.c.o
[ 21%] Building C object lib/monkey/mk_core/CMakeFiles/mk_core.dir/mk_rconf.c.o
[ 23%] Building C object lib/monkey/mk_core/CMakeFiles/mk_core.dir/mk_string.c.o
...
Scanning dependencies of target fluent-bit-static
[ 66%] Building C object src/CMakeFiles/fluent-bit-static.dir/flb_pack.c.o
[ 69%] Building C object src/CMakeFiles/fluent-bit-static.dir/flb_input.c.o
[ 71%] Building C object src/CMakeFiles/fluent-bit-static.dir/flb_output.c.o
...
Linking C executable ../bin/fluent-bit
[100%] Built target fluent-bit-bin

to continue installing the binary on the system just do:

$ make install

it's likely you may need root privileges so you can try to prefixing the command with sudo.

Build Options

Fluent Bit provides certain options to CMake that can be enabled or disabled when configuring, please refer to the following tables under the General Options, Input Plugins and Output Plugins sections.

General Options

option

description

default

FLB_ALL

Enable all features available

No

FLB_DEBUG

Build binaries with debug symbols

No

FLB_JEMALLOC

Use Jemalloc as default memory allocator

No

FLB_TLS

Buils with SSL/TLS support

No

FLB_BINARY

Build executable

Yes

FLB_EXAMPLES

Build examples

Yes

FLB_SHARED_LIB

Build shared library

Yes

FLB_VALGRIND

Enable Valgrind support

No

FLB_TRACE

Enable trace mode

No

FLB_TESTS_RUNTIME

Enable runtime tests

No

FLB_TESTS_INTERNAL

Enable internal tests

No

FLB_TESTS

Enable tests

No

FLB_MTRACE

Enable mtrace support

No

FLB_INOTIFY

Enable Inotify support

Yes

FLB_POSIX_TLS

Force POSIX thread storage

No

FLB_SQLDB

Enable SQL embedded database support

No

FLB_HTTP_SERVER

Enable HTTP Server

No

FLB_BACKTRACE

Enable backtrace/stacktrace support

Yes

FLB_LUAJIT

Enable Lua scripting support

Yes

FLB_STATIC_CONF

Build binary using static configuration files. The value of this option must be a directory containing configuration files.

Input Plugins

The input plugins provides certain features to gather information from a specific source type which can be a network interface, some built-in metric or through a specific input device, the following input plugins are available:

option

description

default

Enable CPU input plugin

On

Enable Forward input plugin

On

Enable Head input plugin

On

Enable Health input plugin

On

Enable Kernel log input plugin

On

Enable Memory input plugin

On

FLB_IN_RANDOM

Enable Random input plugin

On

Enable Serial input plugin

On

Enable Standard input plugin

On

FLB_IN_TCP

Enable TCP input plugin

On

Enable MQTT input plugin

On

Enable Xbee input plugin

Off

Output Plugins

The output plugins gives the capacity to flush the information to some external interface, service or terminal, the following table describes the output plugins available as of this version:

option

description

default

On

On

Enable HTTP output plugin

On

Off

FLB_OUT_PLOT

Enable Plot output plugin

On

Enable STDOUT output plugin

On

On

FLB_OUT_NULL

Enable /dev/null output plugin

On

Enable output plugin

Enable output plugin

Enable output plugin

Enable output plugin

Fluent Bit
CMake
CMake
FLB_IN_CPU
FLB_IN_FORWARD
FLB_IN_HEAD
FLB_IN_HEALTH
FLB_IN_KMSG
FLB_IN_MEM
FLB_IN_SERIAL
FLB_IN_STDIN
FLB_IN_MQTT
FLB_IN_XBEE
FLB_OUT_ES
Elastic Search
FLB_OUT_FORWARD
Fluentd
FLB_OUT_HTTP
FLB_OUT_NATS
NATS
FLB_OUT_STDOUT
FLB_OUT_TD
Treasure Data