You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The following article cover the relevant notes for users upgrading from previous Fluent Bit versions. We aim to cover compatibility changes that you must be aware of.
3
+
The following article covers the relevant compatibility changes for users upgrading
4
+
from previous Fluent Bit versions.
4
5
5
-
For more details about changes on each release please refer to the [Official Release Notes](https://fluentbit.io/announcements/).
6
+
For more details about changes on each release, refer to the
Note: release notes will be prepared in advance of a Git tag for a release so an official release should provide both a tag and a release note together to allow users to verify and understand the release contents.
9
+
Release notes will be prepared in advance of a Git tag for a release. An official
10
+
release should provide both a tag and a release note together to allow users to
11
+
verify and understand the release contents.
8
12
9
-
The tag drives the overall binary release process so release binaries (containers/packages) will appear after a tag and its associated release note.
10
-
This allows users to expect the new release binary to appear and allow/deny/update it as appropriate in their infrastructure.
13
+
The tag drives the binary release process. Release binaries (containers and packages)
14
+
will appear after a tag and its associated release note. This lets users to expect
15
+
the new release binary to appear and allow/deny/update it as appropriate in their
16
+
infrastructure.
11
17
12
18
## Fluent Bit v1.9.9
13
19
@@ -16,42 +22,63 @@ Users should switch to the `fluent-bit` package.
16
22
17
23
## Fluent Bit v1.6
18
24
19
-
If you are migrating from previous version of Fluent Bit please review the following important changes:
25
+
If you are migrating from previous version of Fluent Bit, review the following
26
+
important changes:
20
27
21
28
### Tail Input Plugin
22
29
23
-
Now by default the plugin follows a file from the end once the service starts \(old behavior was always read from the beginning\). For every file found at start, its followed from it last position, for new files discovered at runtime or rotated, they are read from the beginning.
30
+
By default, the tail input plugin follows a file from the end after the service starts,
31
+
instead of reading it from the beginning. Every file found when the plugin starts is
32
+
followed from it last position. New files discovered at runtime or when files rotate
33
+
are read from the beginning.
24
34
25
-
If you desire to keep the old behavior you can set the option `read_from_head` to true.
35
+
To keep the old behavior, set the option `read_from_head` to `true`.
26
36
27
37
### Stackdriver Output Plugin
28
38
29
-
The project\_id of [resource](https://cloud.google.com/logging/docs/reference/v2/rest/v2/MonitoredResource) in [LogEntry](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry) sent to Google Cloud Logging would be set to the project ID rather than the project number. To learn the difference between Project ID and project number, see [this](https://cloud.google.com/resource-manager/docs/creating-managing-projects#before_you_begin) for more details.
in [LogEntry](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry)
42
+
sent to Google Cloud Logging would be set to the `project_id` rather than the project
43
+
number. To learn the difference between Project ID and project number, see
44
+
[Creating and managing projects](https://cloud.google.com/resource-manager/docs/creating-managing-projects#before_you_begin).
30
45
31
-
If you have any existing queries based on the resource's project\_id, please update your query accordingly.
46
+
If you have existing queries based on the resource's `project_id,` update your query accordingly.
32
47
33
48
## Fluent Bit v1.5
34
49
35
50
The migration from v1.4 to v1.5 is pretty straightforward.
36
51
37
-
* If you enabled `keepalive` mode in your configuration, note that this configuration property has been renamed to `net.keepalive`. Now all Network I/O keepalive is enabled by default, to learn more about this and other associated configuration properties read the [Networking Administration](https://docs.fluentbit.io/manual/administration/networking#tcp-keepalive) section.
38
-
* If you use the Elasticsearch output plugin, note the default value of `type`[changed from `flb_type` to `_doc`](https://github.com/fluent/fluent-bit/commit/04ed3d8104ca8a2f491453777ae6e38e5377817e#diff-c9ae115d3acaceac5efb949edbb21196). Many versions of Elasticsearch will tolerate this, but ES v5.6 through v6.1 require a type _without_ a leading underscore. See the [Elasticsearch output plugin documentation FAQ entry](https://docs.fluentbit.io/manual/pipeline/outputs/elasticsearch#faq-underscore) for more.
52
+
- The `keepalive` configuration mode has been renamed to `net.keepalive`. Now,
53
+
all Network I/O keepalive is enabled by default. To learn more about this and other
- If you use the Elasticsearch output plugin, the default value of `type`
58
+
[changed from `flb_type` to `_doc`](https://github.com/fluent/fluent-bit/commit/04ed3d8104ca8a2f491453777ae6e38e5377817e#diff-c9ae115d3acaceac5efb949edbb21196).
59
+
Many versions of Elasticsearch tolerate this, but Elasticsearch v5.6 through v6.1
60
+
require a `type` without a leading underscore. See the
61
+
[Elasticsearch output plugin documentation FAQ entry](https://docs.fluentbit.io/manual/pipeline/outputs/elasticsearch#faq-underscore) for more.
39
62
40
63
## Fluent Bit v1.4
41
64
42
-
If you are migrating from Fluent Bit v1.3, there are no breaking changes. Just new exciting features to enjoy :\)
65
+
If you are migrating from Fluent Bit v1.3, there are no breaking changes.
43
66
44
67
## Fluent Bit v1.3
45
68
46
-
If you are migrating from Fluent Bit v1.2 to v1.3, there are no breaking changes. If you are upgrading from an older version please review the incremental changes below.
69
+
If you are migrating from Fluent Bit v1.2 to v1.3, there are no breaking changes.
70
+
If you are upgrading from an older version, review the following incremental changes:
47
71
48
72
## Fluent Bit v1.2
49
73
50
74
### Docker, JSON, Parsers and Decoders
51
75
52
-
On Fluent Bit v1.2 we have fixed many issues associated with JSON encoding and decoding, for hence when parsing Docker logs **is no longer necessary** to use decoders. The new Docker parser looks like this:
76
+
Fluent Bit v1.2 fixed many issues associated with JSON encoding and decoding.
53
77
54
-
```text
78
+
For example, when parsing Docker logs, it's no longer necessary to use decoders. The
79
+
new Docker parser looks like this:
80
+
81
+
```python
55
82
[PARSER]
56
83
Name docker
57
84
Format json
@@ -60,15 +87,17 @@ On Fluent Bit v1.2 we have fixed many issues associated with JSON encoding and d
60
87
Time_Keep On
61
88
```
62
89
63
-
> Note: again, do not use decoders.
64
-
65
90
### Kubernetes Filter
66
91
67
-
We have done improvements also on how Kubernetes Filter handle the stringified _log_ message. If the option _Merge\_Log_ is enabled, it will try to handle the log content as a JSON map, if so, it will add the keys to the root map.
92
+
Fluent Bit made improvements to Kubernetes Filter handling of stringified `log`
93
+
messages. If the `Merge_Log` option is enabled, it will try to handle the log content
94
+
as a JSON map, if so, it will add the keys to the root map.
68
95
69
-
In addition, we have fixed and improved the option called _Merge\_Log\_Key_. If a merge log succeed, all new keys will be packaged under the key specified by this option, a suggested configuration is as follows:
96
+
In addition, fixes and improvements were made to the `Merge_Log_Key` option. If a
97
+
merge log succeed, all new keys will be packaged under the key specified by this
98
+
option. A suggested configuration is as follows:
70
99
71
-
```text
100
+
```python
72
101
[FILTER]
73
102
Name Kubernetes
74
103
Match kube.*
@@ -97,15 +126,20 @@ the final record will be composed as follows:
97
126
98
127
## Fluent Bit v1.1
99
128
100
-
If you are upgrading from **Fluent Bit <= 1.0.x** you should take in consideration the following relevant changes when switching to **Fluent Bit v1.1** series:
129
+
If you are upgrading from Fluent Bit 1.0.x or earlier, review the following relevant
130
+
changes when switching to Fluent Bit v1.1 or later series:
101
131
102
-
### Kubernetes Filter
132
+
### Kubernetes filter
103
133
104
-
We introduced a new configuration property called _Kube\_Tag\_Prefix_ to help Tag prefix resolution and address an unexpected behavior that landed in previous versions.
134
+
Fluent Bit introduced a new configuration property called `Kube_Tag_Prefix` to help
135
+
Tag prefix resolution and address an unexpected behavior in previous versions.
105
136
106
-
During 1.0.x release cycle, a commit in Tail input plugin changed the default behavior on how the Tag was composed when using the wildcard for expansion generating breaking compatibility with other services. Consider the following configuration example:
137
+
During the `1.0.x` release cycle, a commit in the Tail input plugin changed the
138
+
default behavior on how the Tag was composed when using the wildcard for expansion
139
+
generating breaking compatibility with other services. Consider the following
140
+
configuration example:
107
141
108
-
```text
142
+
```python
109
143
[INPUT]
110
144
Name tail
111
145
Path /var/log/containers/*.log
@@ -118,19 +152,26 @@ The expected behavior is that Tag will be expanded to:
118
152
kube.var.log.containers.apache.log
119
153
```
120
154
121
-
but the change introduced in 1.0 series switched from absolute path to the base file name only:
155
+
The change introduced in the 1.0 series switched from absolute path to the base
156
+
filename only:
122
157
123
158
```text
124
159
kube.apache.log
125
160
```
126
161
127
-
On Fluent Bit v1.1 release we restored to our default behavior and now the Tag is composed using the absolute path of the monitored file.
162
+
THe Fluent Bit v1.1 release restored the default behavior and now the Tag is
163
+
composed using the absolute path of the monitored file.
128
164
129
-
> Having absolute path in the Tag is relevant for routing and flexible configuration where it also helps to keep compatibility with Fluentd behavior.
165
+
Having absolute path in the Tag is relevant for routing and flexible configuration
166
+
where it also helps to keep compatibility with Fluentd behavior.
130
167
131
-
This behavior switch in Tail input plugin affects how Filter Kubernetes operates. As you know when the filter is used it needs to perform local metadata lookup that comes from the file names when using Tail as a source. Now with the new _Kube\_Tag\_Prefix_ option you can specify what's the prefix used in Tail input plugin, for the configuration example above the new configuration will look as follows:
168
+
This behavior switch in Tail input plugin affects how Filter Kubernetes operates.
169
+
When the filter is used it needs to perform local metadata lookup that comes from the
170
+
file names when using Tail as a source. With the new `Kube_Tag_Prefix` option
171
+
you can specify the prefix used in the Tail input plugin. For the previous configuration
172
+
example the new configuration will look like:
132
173
133
-
```text
174
+
```python
134
175
[INPUT]
135
176
Name tail
136
177
Path /var/log/containers/*.log
@@ -142,4 +183,5 @@ This behavior switch in Tail input plugin affects how Filter Kubernetes operates
142
183
Kube_Tag_Prefix kube.var.log.containers.
143
184
```
144
185
145
-
So the proper for _Kube\_Tag\_Prefix_ value must be composed by Tag prefix set in Tail input plugin plus the converted monitored directory replacing slashes with dots.
186
+
The proper value for `Kube_Tag_Prefix` must be composed by Tag prefix set in Tail
187
+
input plugin plus the converted monitored directory replacing slashes with dots.
0 commit comments