Skip to content

Commit bbb9b14

Browse files
docs: document max inputs/outputs/filters plugin limits
Remove the outdated "up to 256 OUTPUT plugins" hard limit from both the classic and YAML configuration references. The routing bitmask was changed from a fixed-size array (4 × 64 = 256 bits) to a dynamically allocated bitmask that grows to match the number of configured output plugins, so the 256 cap no longer applies. Add a note to every plugin type section (INPUT, FILTER, OUTPUT) in both configuration formats clarifying that there is no hard-coded maximum and that the practical limit depends on available system resources. Closes fluent/fluent-bit#4201 Signed-off-by: Pierluigi Lenoci <pierluigilenoci@gmail.com>
1 parent 3b7dcab commit bbb9b14

2 files changed

Lines changed: 12 additions & 2 deletions

File tree

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

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,8 @@ The `INPUT` section defines a source (related to an input plugin). Each [input p
6262

6363
`Name` is mandatory and tells Fluent Bit which input plugin to load. `Tag` is mandatory for all plugins except for the `input forward` plugin, which provides dynamic tags.
6464

65+
There is no hard-coded limit on the number of `INPUT` sections. The practical maximum depends on available system resources such as memory and file descriptors.
66+
6567
### Example
6668

6769
The following is an example of an `INPUT` section:
@@ -85,6 +87,8 @@ The `FILTER` section defines a filter (related to an filter plugin). Each filter
8587

8688
`Name` is mandatory and lets Fluent Bit know which filter plugin should be loaded. `Match` or `Match_Regex` is mandatory for all plugins. If both are specified, `Match_Regex` takes precedence.
8789

90+
There is no hard-coded limit on the number of `FILTER` sections. The practical maximum depends on available system resources such as memory.
91+
8892
### Filter example
8993

9094
The following is an example of a `FILTER` section:
@@ -98,7 +102,7 @@ The following is an example of a `FILTER` section:
98102

99103
## Config output
100104

101-
The `OUTPUT` section specifies a destination that certain records should go to after a `Tag` match. Fluent Bit can route up to 256 `OUTPUT` plugins. The configuration supports the following keys:
105+
The `OUTPUT` section specifies a destination that certain records should go to after a `Tag` match. The configuration supports the following keys:
102106

103107
| Key | Description |
104108
| ----------- | -------------- |
@@ -107,6 +111,8 @@ The `OUTPUT` section specifies a destination that certain records should go to a
107111
| `Match_Regex` | A regular expression to match against the tags of incoming records. Use this option if you want to use the full regular expression syntax. |
108112
| `Log_Level` | Set the plugin's logging verbosity level. Allowed values are: `off`, `error`, `warn`, `info`, `debug`, and `trace`. Defaults to the `SERVICE` section's `Log_Level`. |
109113

114+
There is no hard-coded limit on the number of `OUTPUT` sections. The routing bitmask is dynamically sized at startup based on the number of configured output plugins. The practical maximum depends on available system resources such as memory and file descriptors.
115+
110116
### Output example
111117

112118
The following is an example of an `OUTPUT` section:

administration/configuring-fluent-bit/yaml/pipeline-section.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,8 @@ The `inputs` section defines one or more [input plugins](../../../pipeline/input
7777

7878
The `name` parameter is required and defines for Fluent Bit which input plugin should be loaded. The `tag` parameter is required for all plugins except for the `forward` plugin, which provides dynamic tags.
7979

80+
There is no hard-coded limit on the number of input plugins. The practical maximum depends on available system resources such as memory and file descriptors.
81+
8082
### Shared HTTP listener settings for inputs
8183

8284
Some HTTP-based input plugins share the same listener implementation and support the following common settings in addition to their plugin-specific parameters:
@@ -144,6 +146,8 @@ The `filters` section defines one or more [filters](../../../pipeline/filters.md
144146

145147
The `name` parameter is required and lets Fluent Bit know which filter should be loaded. One of either the `match` or `match_regex` parameters is required. If both are specified, `match_regex` takes precedence.
146148

149+
There is no hard-coded limit on the number of filter plugins. The practical maximum depends on available system resources such as memory.
150+
147151
### Example filter configuration
148152

149153
The following is an example of a `filters` section that contains a `grep` plugin:
@@ -168,7 +172,7 @@ The `outputs` section defines one or more [output plugins](../../../pipeline/out
168172
| `match_regex` | A regular expression to match against the tags of incoming records. Use this option if you want to use the full regular expression syntax. |
169173
| `log_level` | Set the plugin's logging verbosity level. Allowed values are: `off`, `error`, `warn`, `info`, `debug`, and `trace`. The output log level defaults to the `service` section's `log_level`. |
170174

171-
Fluent Bit can route up to 256 output plugins.
175+
Fluent Bit has no hard-coded limit on the number of output plugins. The routing bitmask is dynamically sized at startup based on the number of configured output plugins. The practical maximum depends on available system resources such as memory and file descriptors.
172176

173177
### Outgoing `OAuth 2.0` client credentials settings
174178

0 commit comments

Comments
 (0)