Skip to content

Commit d14d8ea

Browse files
edsipergitbook-bot
authored andcommitted
GitBook: [1.4-dev] 86 pages and 11 assets modified
1 parent d0cf0e2 commit d14d8ea

File tree

96 files changed

+713
-774
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

96 files changed

+713
-774
lines changed
25.6 KB
Loading
25.1 KB
Loading
25.5 KB
Loading
25.7 KB
Loading
25.5 KB
Loading
25.2 KB
Loading
25.1 KB
Loading
25.1 KB
Loading
11.7 KB
Loading

.gitbook/assets/windows_installer.png

11.7 KB
Loading

README.md

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ description: Next generation Log and Stream processor
88

99
[Fluent Bit](http://fluentbit.io) is a Fast and Lightweight Log Processor, Stream Processor and Forwarder for Linux, OSX, Windows and BSD family operating systems. It has been made with a strong focus on performance to allow the collection of events from different sources without complexity.
1010

11-
### Features
11+
## Features
1212

1313
* High Performance
1414
* Data Parsing
@@ -25,17 +25,15 @@ description: Next generation Log and Stream processor
2525
* Write any input, filter or output plugin in C language
2626
* Bonus: write [Filters in Lua](pipeline/filters/lua.md) or [Output plugins in Golang](development/golang-output-plugins.md)
2727
* [Monitoring](administration/monitoring.md): expose internal metrics over HTTP in JSON and [Prometheus](https://prometheus.io/) format
28-
* [Stream Processing](stream-processing/untitled.md): Perform data selection and transformation using simple SQL queries
28+
* [Stream Processing](): Perform data selection and transformation using simple SQL queries
2929
* Create new streams of data using query results
3030
* Aggregation Windows
3131
* Data analysis and prediction: Timeseries forecasting
3232
* Portable: runs on Linux, MacOS, Windows and BSD systems
3333

34-
### Fluent Bit, Fluentd and CNCF
34+
## Fluent Bit, Fluentd and CNCF
3535

3636
[Fluent Bit](http://fluentbit.io) is a sub-component of the [Fluentd](http://fluentd.org) project ecosystem, it's licensed under the terms of the [Apache License v2.0](http://www.apache.org/licenses/LICENSE-2.0). This project was created by [Treasure Data](https://www.treasuredata.com) and is its current primary sponsor.
3737

3838
Nowadays Fluent Bit get contributions from several companies and individuals and same as [Fluentd](https://www.fluentd.org), it's hosted as a [CNCF](https://cncf.io) subproject.
3939

40-
41-

SUMMARY.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@
4444
## Administration
4545

4646
* [Configuring Fluent Bit](administration/configuring-fluent-bit/README.md)
47-
* [Files Schema / Structure](administration/configuring-fluent-bit/files-schema-structure/README.md)
47+
* [Files Schema / Structure](administration/configuring-fluent-bit/files-schema-structure.md)
4848
* [Variables](administration/configuring-fluent-bit/variables.md)
4949
* [Commands](administration/configuring-fluent-bit/commands.md)
5050
* [Configuration File](administration/configuring-fluent-bit/configuration-file.md)
@@ -65,7 +65,7 @@
6565
* [Disk I/O Metrics](pipeline/inputs/disk-io-metrics.md)
6666
* [Dummy](pipeline/inputs/dummy.md)
6767
* [Exec](pipeline/inputs/exec.md)
68-
* [Forward](pipeline/inputs/forward.md)
68+
* [Forward](pipeline/outputs/forward.md)
6969
* [Head](pipeline/inputs/head.md)
7070
* [Health](pipeline/inputs/health.md)
7171
* [Kernel Logs](pipeline/inputs/kernel-logs.md)
@@ -96,7 +96,7 @@
9696
* [Parser](pipeline/filters/parser.md)
9797
* [Record Modifier](pipeline/filters/record-modifier.md)
9898
* [Rewrite Tag](pipeline/filters/rewrite-tag.md)
99-
* [Standard Output](pipeline/filters/standard-output.md)
99+
* [Standard Output](pipeline/outputs/standard-output.md)
100100
* [Throttle](pipeline/filters/throttle.md)
101101
* [Nest](pipeline/filters/nest.md)
102102
* [Modify](pipeline/filters/modify.md)
@@ -124,7 +124,7 @@
124124

125125
## Stream Processing
126126

127-
* [Introduction](stream-processing/README.md)
127+
* [Introduction](stream-processing/stream-processing.md)
128128
* [Overview](stream-processing/overview.md)
129129
* [Changelog](stream-processing/changelog.md)
130130
* [Getting Started](stream-processing/getting-started/README.md)
@@ -137,3 +137,4 @@
137137
* [C Library API](development/library_api.md)
138138
* [Ingest Records Manually](development/ingest-records-manually.md)
139139
* [Golang Output Plugins](development/golang-output-plugins.md)
140+

about/history.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ description: Every project has a story
44

55
# A Brief History of Fluent Bit
66

7-
On 2014, the [Fluentd](https://fluentd.org) team at [Treasure Data](https://www.treasuredata.com) forecasted the need of a lightweight log processor for constraint environments like Embedded Linux and Gateways, the project aimed to be part of the Fluentd Ecosystem and we called it [Fluent Bit](https://fluentbit.io), fully open source and available under the terms of the [Apache License v2.0](http://www.apache.org/licenses/LICENSE-2.0).
7+
On 2014, the [Fluentd](https://fluentd.org) team at [Treasure Data](https://www.treasuredata.com) forecasted the need of a lightweight log processor for constraint environments like Embedded Linux and Gateways, the project aimed to be part of the Fluentd Ecosystem and we called it [Fluent Bit](https://fluentbit.io), fully open source and available under the terms of the [Apache License v2.0](http://www.apache.org/licenses/LICENSE-2.0).
88

99
After the project was around for some time, it got some traction in the Embedded market but we also started getting requests for several features from the Cloud community like more inputs, filters, and outputs. Not so long after that, Fluent Bit becomes one of the preferred solutions to solve the logging challenges in Cloud environments.
1010

about/what-is-fluent-bit.md

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# What is Fluent Bit ?
22

3-
[Fluent Bit](http://fluentbit.io/) is an open source and multi-platform log processor tool which aims to be a generic Swiss knife for log processing and distribution.
3+
[Fluent Bit](http://fluentbit.io/) is an open source and multi-platform log processor tool which aims to be a generic Swiss knife for log processing and distribution.
44

55
Nowadays the number of sources of information in our environments is ever increasing. Handling data collection at scale is complex, and collecting and aggregating diverse data requires a specialized tool that can deal with:
66

@@ -10,7 +10,5 @@ Nowadays the number of sources of information in our environments is ever increa
1010
* Security
1111
* Multiple destinations
1212

13-
[Fluent Bit](https://fluentbit.io) has been designed with performance and low resources consumption in mind.
14-
15-
13+
[Fluent Bit](https://fluentbit.io) has been designed with performance and low resources consumption in mind.
1614

administration/backpressure.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,5 +34,5 @@ After some seconds if the scheduler was able to flush the initial 700KB of data
3434

3535
Each plugin is independent and not all of them implements the **pause** and **resume** callbacks. As said, these callbacks are just a notification mechanism for the plugin.
3636

37-
The plugin who implements and keep a good state is the [Tail Input](../input/tail.md) plugin. When the **pause** callback is triggered, it stop their collectors and stop appending data. Upon **resume**, it re-enable the collectors.
37+
The plugin who implements and keep a good state is the [Tail Input](https://github.com/fluent/fluent-bit-docs/tree/b78cfe98123e74e165f2b6669229da009258f34e/input/tail.md) plugin. When the **pause** callback is triggered, it stop their collectors and stop appending data. Upon **resume**, it re-enable the collectors.
3838

administration/buffering-and-storage.md

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,32 @@
1-
# Fluent Bit and Buffering
1+
# Buffering & Storage
22

33
The end-goal of [Fluent Bit](https://fluentbit.io) is to collect, parse, filter and ship logs to a central place. In this workflow there are many phases and one of the critical pieces is the ability to do _buffering_ : a mechanism to place processed data into a temporal location until is ready to be shipped.
44

5-
By default when Fluent Bit process data, it uses Memory as a primary and temporal place to store the record logs, but there are certain scenarios where would be ideal to have a persistent buffering mechanism based in the filesystem to provide aggregation and data safety capabilities.
5+
By default when Fluent Bit process data, it uses Memory as a primary and temporal place to store the record logs, but there are certain scenarios where would be ideal to have a persistent buffering mechanism based in the filesystem to provide aggregation and data safety capabilities.
66

77
Starting with Fluent Bit v1.0, we introduced a new _storage layer_ that can either work in memory or in the file system. Input plugins can be configured to use one or the other upon demand at start time.
88

99
## Configuration
1010

1111
The storage layer configuration takes place in two areas:
1212

13-
- Service Section
14-
- Input Section
13+
* Service Section
14+
* Input Section
1515

1616
The known Service section configure a global environment for the storage layer, and then in the Input sections defines which mechanism to use.
1717

1818
### Service Section Configuration
1919

20-
| Key | Description | Default |
21-
| ------------------------- | ------------------------------------------------------------ | ------- |
22-
| storage.path | Set an optional location in the file system to store streams and chunks of data. If this parameter is not set, Input plugins can only use in-memory buffering. | |
23-
| storage.sync | Configure the synchronization mode used to store the data into the file system. It can take the values _normal_ or _full_. | normal |
24-
| storage.checksum | Enable the data integrity check when writing and reading data from the filesystem. The storage layer uses the CRC32 algorithm. | Off |
25-
| storage.backlog.mem_limit | If _storage.path_ is set, Fluent Bit will look for data chunks that were not delivered and are still in the storage layer, these are called _backlog_ data. This option configure a hint of maximum value of memory to use when processing these records. | 5M |
20+
| Key | Description | Default |
21+
| :--- | :--- | :--- |
22+
| storage.path | Set an optional location in the file system to store streams and chunks of data. If this parameter is not set, Input plugins can only use in-memory buffering. | |
23+
| storage.sync | Configure the synchronization mode used to store the data into the file system. It can take the values _normal_ or _full_. | normal |
24+
| storage.checksum | Enable the data integrity check when writing and reading data from the filesystem. The storage layer uses the CRC32 algorithm. | Off |
25+
| storage.backlog.mem\_limit | If _storage.path_ is set, Fluent Bit will look for data chunks that were not delivered and are still in the storage layer, these are called _backlog_ data. This option configure a hint of maximum value of memory to use when processing these records. | 5M |
2626

2727
a Service section will look like this:
2828

29-
```
29+
```text
3030
[SERVICE]
3131
flush 1
3232
log_Level info
@@ -36,31 +36,31 @@ a Service section will look like this:
3636
storage.backlog.mem_limit 5M
3737
```
3838

39-
that configuration configure an optional buffering mechanism where it root for data is _/var/log/flb-storage/_, it will use _normal_ synchronization mode, without checksum and up to a maximum of 5MB of memory when processing backlog data.
39+
that configuration configure an optional buffering mechanism where it root for data is _/var/log/flb-storage/_, it will use _normal_ synchronization mode, without checksum and up to a maximum of 5MB of memory when processing backlog data.
4040

4141
### Input Section Configuration
4242

4343
Optionally, any Input plugin can configure their storage preference, the following table describe the options available:
4444

45-
| Key | Description | Default |
46-
| ------------ | ------------------------------------------------------------ | ------- |
47-
| storage.type | Specify the buffering mechanism to use. It can be _memory_ or _filesystem_. | memory |
45+
| Key | Description | Default |
46+
| :--- | :--- | :--- |
47+
| storage.type | Specify the buffering mechanism to use. It can be _memory_ or _filesystem_. | memory |
4848

49-
The following example configure a service that offers filesystem buffering capabilities and two Input plugins being the first based in memory and the second with the filesystem:
49+
The following example configure a service that offers filesystem buffering capabilities and two Input plugins being the first based in memory and the second with the filesystem:
5050

51-
```
51+
```text
5252
[SERVICE]
5353
flush 1
5454
log_Level info
5555
storage.path /var/log/flb-storage/
5656
storage.sync normal
5757
storage.checksum off
5858
storage.backlog.mem_limit 5M
59-
59+
6060
[INPUT]
6161
name cpu
6262
storage.type filesystem
63-
63+
6464
[INPUT]
6565
name mem
6666
storage.type memory

administration/configuring-fluent-bit/commands.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Configuration Commands
1+
# Commands
22

33
Configuration files must be flexible enough for any deployment need, but they must keep a clean and readable format.
44

@@ -9,7 +9,7 @@ Fluent Bit _Commands_ extends a configuration file with specific built-in featur
99
| [@INCLUDE](commands.md#cmd_include) | @INCLUDE FILE | Include a configuration file |
1010
| [@SET](commands.md#cmd_set) | @SET KEY=VAL | Set a configuration variable |
1111

12-
## @INCLUDE Command {#cmd_include}
12+
## @INCLUDE Command <a id="cmd_include"></a>
1313

1414
Configuring a logging pipeline might lead to an extensive configuration file. In order to maintain a human-readable configuration, it's suggested to split the configuration in multiple files.
1515

@@ -60,7 +60,7 @@ Note that despites the order of inclusion, Fluent Bit will **ALWAYS** respect th
6060
* Filters
6161
* Outputs
6262

63-
## @SET Command {#cmd_set}
63+
## @SET Command <a id="cmd_set"></a>
6464

6565
Fluent Bit supports [configuration variables](variables.md), one way to expose this variables to Fluent Bit is through setting a Shell environment variable, the other is through the _@SET_ command.
6666

administration/configuring-fluent-bit/configuration-file.md

Lines changed: 20 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -6,16 +6,16 @@ Fluent Bit allows to use one configuration file which works at a global scope an
66

77
The configuration file supports four types of sections:
88

9-
* [Service](file.md#config_section)
10-
* [Input](file.md#config_input)
11-
* [Filter](file.md#config_filter)
12-
* [Output](file.md#config_output)
9+
* [Service](https://github.com/fluent/fluent-bit-docs/tree/5f926fd1330690179b8c1edab90d672699599ec7/administration/configuring-fluent-bit/file.md#config_section)
10+
* [Input](https://github.com/fluent/fluent-bit-docs/tree/5f926fd1330690179b8c1edab90d672699599ec7/administration/configuring-fluent-bit/file.md#config_input)
11+
* [Filter](https://github.com/fluent/fluent-bit-docs/tree/5f926fd1330690179b8c1edab90d672699599ec7/administration/configuring-fluent-bit/file.md#config_filter)
12+
* [Output](https://github.com/fluent/fluent-bit-docs/tree/5f926fd1330690179b8c1edab90d672699599ec7/administration/configuring-fluent-bit/file.md#config_output)
1313

1414
In addition there is an additional feature to include external files:
1515

16-
* [Include File](file.md#config_include_file)
16+
* [Include File](https://github.com/fluent/fluent-bit-docs/tree/5f926fd1330690179b8c1edab90d672699599ec7/administration/configuring-fluent-bit/file.md#config_include_file)
1717

18-
## Service {#config_section}
18+
## Service <a id="config_section"></a>
1919

2020
The _Service_ section defines global properties of the service, the keys available as of this version are described in the following table:
2121

@@ -26,12 +26,12 @@ The _Service_ section defines global properties of the service, the keys availab
2626
| Log\_File | Absolute path for an optional log file. | |
2727
| Log\_Level | Set the logging verbosity level. Allowed values are: error, info, debug and trace. Values are accumulative, e.g: if 'debug' is set, it will include error, info and debug. Note that _trace_ mode is only available if Fluent Bit was built with the _WITH\_TRACE_ option enabled. | info |
2828
| Parsers\_File | Path for a _parsers_ configuration file. Multiple Parsers\_File entries can be used. | |
29-
| Plugins\_File | Path for a _plugins_ configuration file. A _plugins_ configuration file allows to define paths for external plugins, for an example [see here](https://github.com/fluent/fluent-bit/blob/master/conf/plugins.conf). ||
30-
| Streams\_File | Path for the Stream Processor configuration file. For details about the format of SP configuration file [see here](stream_processor.md). ||
29+
| Plugins\_File | Path for a _plugins_ configuration file. A _plugins_ configuration file allows to define paths for external plugins, for an example [see here](https://github.com/fluent/fluent-bit/blob/master/conf/plugins.conf). | |
30+
| Streams\_File | Path for the Stream Processor configuration file. For details about the format of SP configuration file [see here](https://github.com/fluent/fluent-bit-docs/tree/5f926fd1330690179b8c1edab90d672699599ec7/administration/configuring-fluent-bit/stream_processor.md). | |
3131
| HTTP\_Server | Enable built-in HTTP Server | Off |
3232
| HTTP\_Listen | Set listening interface for HTTP Server when it's enabled | 0.0.0.0 |
3333
| HTTP\_Port | Set TCP Port for the HTTP Server | 2020 |
34-
| Coro_Stack_Size | Set the coroutines stack size in bytes. The value must be greater than the page size of the running system. Don't set too small value (say 4096), or coroutine threads can overrun the stack buffer. | 24576 |
34+
| Coro\_Stack\_Size | Set the coroutines stack size in bytes. The value must be greater than the page size of the running system. Don't set too small value \(say 4096\), or coroutine threads can overrun the stack buffer. | 24576 |
3535

3636
### Example
3737

@@ -44,7 +44,7 @@ The following is an example of a _SERVICE_ section:
4444
Log_Level debug
4545
```
4646

47-
## Input {#config_input}
47+
## Input <a id="config_input"></a>
4848

4949
An _INPUT_ section defines a source \(related to an input plugin\), here we will describe the base configuration for each _INPUT_ section. Note that each input plugin may add it own configuration keys:
5050

@@ -65,17 +65,17 @@ The following is an example of an _INPUT_ section:
6565
Tag my_cpu
6666
```
6767

68-
## Filter {#config_filter}
68+
## Filter <a id="config_filter"></a>
6969

7070
A _FILTER_ section defines a filter \(related to an filter plugin\), here we will describe the base configuration for each _FILTER_ section. Note that each filter plugin may add it own configuration keys:
7171

7272
| Key | Description | |
7373
| :--- | :--- | :--- |
7474
| Name | Name of the filter plugin. | |
7575
| Match | A pattern to match against the tags of incoming records. It's case sensitive and support the star \(\*\) character as a wildcard. | |
76-
| Match_Regex | A regular expression to match against the tags of incoming records. Use this option if you want to use the full regex syntax. | |
76+
| Match\_Regex | A regular expression to match against the tags of incoming records. Use this option if you want to use the full regex syntax. | |
7777

78-
The _Name_ is mandatory and it let Fluent Bit know which filter plugin should be loaded. The _Match_ or _Match_Regex_ is mandatory for all plugins. If both are specified, _Match_Regex_ takes precedence.
78+
The _Name_ is mandatory and it let Fluent Bit know which filter plugin should be loaded. The _Match_ or _Match\_Regex_ is mandatory for all plugins. If both are specified, _Match\_Regex_ takes precedence.
7979

8080
### Example
8181

@@ -87,15 +87,15 @@ The following is an example of an _FILTER_ section:
8787
Match *
8888
```
8989

90-
## Output {#config_output}
90+
## Output <a id="config_output"></a>
9191

9292
The _OUTPUT_ section specify a destination that certain records should follow after a Tag match. The configuration support the following keys:
9393

94-
| Key | Description |
95-
| :--- | :--- |
96-
| Name | Name of the output plugin. |
94+
| Key | Description | |
95+
| :--- | :--- | :--- |
96+
| Name | Name of the output plugin. | |
9797
| Match | A pattern to match against the tags of incoming records. It's case sensitive and support the star \(\*\) character as a wildcard. | |
98-
| Match_Regex | A regular expression to match against the tags of incoming records. Use this option if you want to use the full regex syntax. | |
98+
| Match\_Regex | A regular expression to match against the tags of incoming records. Use this option if you want to use the full regex syntax. | |
9999

100100
### Example
101101

@@ -126,7 +126,7 @@ The following configuration file example demonstrates how to collect CPU metrics
126126
Match my*cpu
127127
```
128128

129-
## Include File {#config_include_file}
129+
## Include File <a id="config_include_file"></a>
130130

131131
To avoid complicated long configuration files is better to split specific parts in different files and call them \(include\) from one main file.
132132

@@ -149,3 +149,4 @@ Wildcard character \(\*\) is supported to include multiple files, e.g:
149149
```text
150150
@INCLUDE input_*.conf
151151
```
152+

0 commit comments

Comments
 (0)