Hi users!
We have just shipped Fluentd v0.14.9 including built-in plugin migration and bug fixes.
Here are major changes (full ChangeLog is available here):
We say again, fluentd v0.14 is still development version. If you try to use v0.14, check your configuration and plugins carefully.
We continue to migrate built-in plugins to v0.14 API. Here are migrated plugins in this release:
We describe important changes of these plugins.
We removed un-documented detach process feature from in_http
because DetachMultiProcessMixin
module is deprecated in v0.14. If you set detach process related parameters in your configuration, it is ignored.
Since this version, time_as_integer
parameter is now false
. It means v0.14.9's out_forward
can't forward data to v0.12's in_forward
by default. You need to set time_as_integer true
explicitly.
We have already mentioned this point in v0.14.0 release, so we hope this change doesn't break your v0.14 to v0.12 forwarding.
v0.14 Plugin API provides placeholder feature. You can emulate fluent-plugin-forest
by more flexible way. Here is configuration example:
<match mydata>
@type file
path /path/to/${key}
<buffer time,key>
flush_at_shutdown true
</buffer>
<format>
@type json
</format>
</match>
${key}
refers the key
field of event record. If you pass {"key":"foo"}
record, actual output file becomes /path/to/foo
. The important point is if you want to refer time, tag or record keys on path
, you need to list keys in <buffer CHUNK_KEYS>
(See also v0.14 Plugin API slide). Here are several examples:
# Popular time, tag and key case
<match mydata>
@type file
path /path/to/%Y/%m/%d/${tag}/${key} # path is /path/to/2016/11/15/mydata/foo_0.log
<buffer time,tag,key>
flush_at_shutdown true
</buffer>
# ...
</match>
# Of course, you can use more keys
<match mydata>
@type file
path /path/to/${key1}/${key2}/{key3} # If record is {"key1":"foo","key2":"bar","key3":"baz"}, path is /path/to/foo/bar/baz.20161115_0.log
<buffer time,key1,key2,key3>
flush_at_shutdown true
</buffer>
# ...
</match>
out_file
plugin requires time
in CHUNK_KEYS
because its placeholder is used in path
implicitly.
We have a plan to migrate other 3rd party plugins to v0.14, e.g s3
, kafka
and more. We can say "Goodbye fluent-plugin-forest!" in near future.
fluent-plugin-parser
plugin is widely used in the world, so we decided to port this plugin into the core.
Note that we changed invalid event handling. fluent-plugin-parser
logs warning when log is invalid. On the other hand, built-in parser
filter emits invalid events to built-in @ERROR
label. In this result, you can process invalid events using other plugins.
<source>
@type forward
</source>
<filter app.**>
@type parser
key_name log
<parse>
@type json
</parse>
</filter>
# If log field is json, record comes here
<match app.**>
@type stdout
</match>
<label @ERROR>
# If log field is not json, record comes here. Store such events into local file.
<match app.**>
@type file
# ...
</match>
</label>
record_transformer
changes and removes old behaviours.
auto_typecast
is now true
. It means the result of ${10 - 2}
or ${record["int_field"]}
is integer, not string, by default.tag_parts
instead.We also have a plan to remove ${key}
placeholder in the next version. Use ${record["key"]}
instead.
Enjoy logging!
Subscribed to the RSS feed here.
Masahiro (@repeatedly) is the main maintainer of Fluentd. He works on Fluentd development and support full-time. He is also a committer of the D programming language.
Fluentd is an open source data collector to unify log management.
2024-08-29: Scheduled support lifecycle announcement about Fluent Package v6
2023-08-29: Drop schedule announcement about EOL of Treasure Agent (td-agent) 4
2023-08-29: Scheduled support lifecycle announcement about Fluent Package
2023-07-31: Upgrade to fluent-package v5
2024-11-29: Fluentd v1.18.0 has been released
2024-11-08: fluent-package v5.0.5 has been released
2024-08-29: Scheduled support lifecycle announcement about Fluent Package v6
2024-08-20: Fluentd v1.16.6 has been released
2024-08-19: Fluentd v1.17.1 has been released
2024-08-02: fluent-package v5.1.0 has been released
2024-07-02: fluent-package v5.0.4 has been released
2024-04-30: Fluentd v1.17.0 has been released
2024-03-29: fluent-package v5.0.3 has been released
2024-03-27: Fluentd v1.16.5 has been released
Want to learn the basics of Fluentd? Check out these pages.
Couldn't find enough information? Let's ask the community!
You need commercial-grade support from Fluentd committers and experts?
©2010-2024 Fluentd Project. ALL Rights Reserved.
Fluentd is a hosted project under the Cloud Native Computing Foundation (CNCF). All components are available under the Apache 2 License.