fluentd 1.18.0 → 1.19.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.rubocop.yml +116 -0
- data/CHANGELOG.md +235 -12
- data/MAINTAINERS.md +8 -2
- data/README.md +3 -7
- data/Rakefile +2 -0
- data/SECURITY.md +5 -3
- data/lib/fluent/command/cap_ctl.rb +2 -2
- data/lib/fluent/command/fluentd.rb +6 -2
- data/lib/fluent/compat/formatter.rb +6 -0
- data/lib/fluent/compat/socket_util.rb +2 -2
- data/lib/fluent/config/configure_proxy.rb +1 -1
- data/lib/fluent/config/element.rb +2 -2
- data/lib/fluent/config/literal_parser.rb +3 -3
- data/lib/fluent/config/parser.rb +15 -3
- data/lib/fluent/config/section.rb +2 -2
- data/lib/fluent/config/types.rb +1 -1
- data/lib/fluent/config/v1_parser.rb +3 -3
- data/lib/fluent/counter/store.rb +1 -1
- data/lib/fluent/engine.rb +1 -1
- data/lib/fluent/env.rb +3 -2
- data/lib/fluent/event.rb +7 -6
- data/lib/fluent/log/console_adapter.rb +5 -7
- data/lib/fluent/log.rb +23 -0
- data/lib/fluent/plugin/bare_output.rb +0 -16
- data/lib/fluent/plugin/base.rb +2 -2
- data/lib/fluent/plugin/buf_file.rb +15 -1
- data/lib/fluent/plugin/buf_file_single.rb +15 -1
- data/lib/fluent/plugin/buffer/chunk.rb +74 -10
- data/lib/fluent/plugin/buffer/file_chunk.rb +9 -5
- data/lib/fluent/plugin/buffer/file_single_chunk.rb +3 -3
- data/lib/fluent/plugin/buffer/memory_chunk.rb +2 -2
- data/lib/fluent/plugin/buffer.rb +34 -6
- data/lib/fluent/plugin/compressable.rb +68 -22
- data/lib/fluent/plugin/filter.rb +0 -8
- data/lib/fluent/plugin/filter_record_transformer.rb +1 -1
- data/lib/fluent/plugin/formatter_csv.rb +18 -4
- data/lib/fluent/plugin/formatter_json.rb +7 -4
- data/lib/fluent/plugin/formatter_out_file.rb +5 -2
- data/lib/fluent/plugin/in_forward.rb +9 -5
- data/lib/fluent/plugin/in_http.rb +9 -4
- data/lib/fluent/plugin/in_monitor_agent.rb +4 -8
- data/lib/fluent/plugin/in_tail/position_file.rb +1 -1
- data/lib/fluent/plugin/in_tail.rb +80 -57
- data/lib/fluent/plugin/in_tcp.rb +2 -2
- data/lib/fluent/plugin/in_udp.rb +1 -1
- data/lib/fluent/plugin/input.rb +0 -8
- data/lib/fluent/plugin/multi_output.rb +1 -17
- data/lib/fluent/plugin/out_exec_filter.rb +2 -2
- data/lib/fluent/plugin/out_file.rb +37 -30
- data/lib/fluent/plugin/out_forward/connection_manager.rb +2 -2
- data/lib/fluent/plugin/out_forward.rb +23 -13
- data/lib/fluent/plugin/out_http.rb +1 -1
- data/lib/fluent/plugin/out_secondary_file.rb +2 -2
- data/lib/fluent/plugin/out_stdout.rb +10 -3
- data/lib/fluent/plugin/out_stream.rb +3 -3
- data/lib/fluent/plugin/output.rb +24 -35
- data/lib/fluent/plugin/owned_by_mixin.rb +2 -2
- data/lib/fluent/plugin/parser.rb +3 -3
- data/lib/fluent/plugin/parser_json.rb +3 -3
- data/lib/fluent/plugin/sd_file.rb +2 -2
- data/lib/fluent/plugin/storage_local.rb +8 -4
- data/lib/fluent/plugin.rb +1 -1
- data/lib/fluent/plugin_helper/child_process.rb +2 -2
- data/lib/fluent/plugin_helper/http_server/request.rb +13 -2
- data/lib/fluent/plugin_helper/http_server/server.rb +4 -14
- data/lib/fluent/plugin_helper/http_server.rb +1 -8
- data/lib/fluent/plugin_helper/metrics.rb +7 -0
- data/lib/fluent/plugin_helper/server.rb +4 -1
- data/lib/fluent/plugin_helper/service_discovery.rb +1 -1
- data/lib/fluent/plugin_helper/socket_option.rb +2 -2
- data/lib/fluent/plugin_helper/storage.rb +1 -1
- data/lib/fluent/plugin_id.rb +3 -3
- data/lib/fluent/root_agent.rb +4 -3
- data/lib/fluent/static_config_analysis.rb +3 -2
- data/lib/fluent/supervisor.rb +51 -5
- data/lib/fluent/system_config.rb +13 -4
- data/lib/fluent/test/base.rb +1 -1
- data/lib/fluent/test/driver/base.rb +2 -2
- data/lib/fluent/test/filter_test.rb +2 -2
- data/lib/fluent/test/formatter_test.rb +1 -1
- data/lib/fluent/test/helpers.rb +4 -0
- data/lib/fluent/test/input_test.rb +2 -2
- data/lib/fluent/test/output_test.rb +4 -4
- data/lib/fluent/test/parser_test.rb +1 -1
- data/lib/fluent/tls.rb +24 -0
- data/lib/fluent/variable_store.rb +1 -1
- data/lib/fluent/version.rb +1 -1
- data/lib/fluent/winsvc.rb +38 -8
- metadata +85 -16
- data/lib/fluent/plugin_helper/http_server/compat/server.rb +0 -92
- data/lib/fluent/plugin_helper/http_server/compat/ssl_context_extractor.rb +0 -52
- data/lib/fluent/plugin_helper/http_server/compat/webrick_handler.rb +0 -58
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6c15a2a165d2c506d9c97d5f370905cc1dc6a479440c3e8a01cc55900d1f0e72
|
4
|
+
data.tar.gz: ac53d407592733019e812062aa353d20d866d9dc45da1bd884e28e5545f02259
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e2f4558b9a9c9d6818c645ac305a63fead7b4f2ebabc0b96c2fba5b0a9226bae539740fd816e969400391de0512d29cb14ebd5cd5a262cf5bfdabbcb2d18a3cf
|
7
|
+
data.tar.gz: f68aec16ddcb80075cdc47d0eaa21c1fc8d3736c75d2a787d5fbaee478e3074e19a2f6d87d0d7dc3cac91573c967d8279b26f6145d5c5d813c86eaef2ad27a79
|
data/.rubocop.yml
ADDED
@@ -0,0 +1,116 @@
|
|
1
|
+
plugins:
|
2
|
+
- rubocop-performance
|
3
|
+
|
4
|
+
AllCops:
|
5
|
+
Exclude:
|
6
|
+
- 'vendor/**/*'
|
7
|
+
NewCops: enable
|
8
|
+
SuggestExtensions: false
|
9
|
+
TargetRubyVersion: 3.4
|
10
|
+
|
11
|
+
#
|
12
|
+
# Policy: Check Security & Performance in primary use-cases
|
13
|
+
# (Disable most of cosmetic rules)
|
14
|
+
#
|
15
|
+
|
16
|
+
Lint:
|
17
|
+
Enabled: false
|
18
|
+
|
19
|
+
Style:
|
20
|
+
Enabled: false
|
21
|
+
|
22
|
+
Gemspec:
|
23
|
+
Enabled: false
|
24
|
+
|
25
|
+
Naming:
|
26
|
+
Enabled: false
|
27
|
+
|
28
|
+
Layout:
|
29
|
+
Enabled: false
|
30
|
+
|
31
|
+
Metrics:
|
32
|
+
Enabled: false
|
33
|
+
|
34
|
+
Security:
|
35
|
+
Enabled: true
|
36
|
+
|
37
|
+
Performance:
|
38
|
+
Enabled: true
|
39
|
+
|
40
|
+
#
|
41
|
+
# False positive or exceptional cases
|
42
|
+
#
|
43
|
+
|
44
|
+
# False positive because it's intentional
|
45
|
+
Security/Open:
|
46
|
+
Exclude:
|
47
|
+
- lib/fluent/plugin/buffer/chunk.rb
|
48
|
+
Enabled: true
|
49
|
+
|
50
|
+
# False positive because it's intentional
|
51
|
+
Security/Eval:
|
52
|
+
Exclude:
|
53
|
+
- lib/fluent/config/dsl.rb
|
54
|
+
- lib/fluent/plugin.rb
|
55
|
+
- lib/fluent/plugin/in_debug_agent.rb
|
56
|
+
Enabled: true
|
57
|
+
|
58
|
+
# False positive because send method must accept literals.
|
59
|
+
Performance/StringIdentifierArgument:
|
60
|
+
Exclude:
|
61
|
+
- test/plugin/test_in_tcp.rb
|
62
|
+
- test/plugin/test_in_udp.rb
|
63
|
+
- test/counter/test_server.rb
|
64
|
+
- test/plugin/test_out_forward.rb
|
65
|
+
- lib/fluent/plugin/out_forward.rb
|
66
|
+
Enabled: true
|
67
|
+
|
68
|
+
Performance/StringInclude:
|
69
|
+
Exclude:
|
70
|
+
- 'test/**/*'
|
71
|
+
# It was not improved with String#include?
|
72
|
+
- lib/fluent/command/plugin_config_formatter.rb
|
73
|
+
Enabled: true
|
74
|
+
|
75
|
+
# False positive for include? against constant ranges.
|
76
|
+
# Almost same between include? and cover?.
|
77
|
+
# See https://github.com/rubocop/rubocop-jp/issues/20
|
78
|
+
Performance/RangeInclude:
|
79
|
+
Exclude:
|
80
|
+
- lib/fluent/plugin/parser_multiline.rb
|
81
|
+
Enabled: true
|
82
|
+
|
83
|
+
# Allow using &method(:func)
|
84
|
+
Performance/MethodObjectAsBlock:
|
85
|
+
Exclude:
|
86
|
+
- 'test/**/*'
|
87
|
+
Enabled: false
|
88
|
+
|
89
|
+
# Allow block.call
|
90
|
+
Performance/RedundantBlockCall:
|
91
|
+
Exclude:
|
92
|
+
- 'test/**/*'
|
93
|
+
- 'lib/fluent/plugin_helper/*.rb'
|
94
|
+
- 'lib/fluent/plugin/*.rb'
|
95
|
+
- 'lib/fluent/compat/*.rb'
|
96
|
+
- 'lib/fluent/config/*.rb'
|
97
|
+
- 'lib/fluent/*.rb'
|
98
|
+
Enabled: true
|
99
|
+
|
100
|
+
#
|
101
|
+
# TODO: low priority to be fixed
|
102
|
+
#
|
103
|
+
Performance/ConstantRegexp:
|
104
|
+
Exclude:
|
105
|
+
- 'test/**/*'
|
106
|
+
Enabled: true
|
107
|
+
|
108
|
+
Performance/Sum:
|
109
|
+
Exclude:
|
110
|
+
- 'test/**/*'
|
111
|
+
Enabled: true
|
112
|
+
|
113
|
+
Performance/CollectionLiteralInLoop:
|
114
|
+
Exclude:
|
115
|
+
- 'test/**/*'
|
116
|
+
Enabled: true
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,132 @@
|
|
1
|
+
# v1.19
|
2
|
+
|
3
|
+
## Release v1.19.0 - 2025/07/29
|
4
|
+
|
5
|
+
### Enhancement
|
6
|
+
|
7
|
+
New features:
|
8
|
+
|
9
|
+
* Add zstd compression support https://github.com/fluent/fluentd/pull/4657
|
10
|
+
* Buffer: add `zstd` to `compress` option.
|
11
|
+
* out_file: add `zstd` to `compress` option.
|
12
|
+
* out_forward: add `zstd` to `compress` option.
|
13
|
+
* in_forward: support `zstd` format. (Experimental)
|
14
|
+
* buffer: add feature to evacuate chunk files when retry limit
|
15
|
+
https://github.com/fluent/fluentd/pull/4986
|
16
|
+
* out_http: TLS1.3 support
|
17
|
+
https://github.com/fluent/fluentd/pull/4859
|
18
|
+
* out_stdout: support output to STDOUT independently of Fluentd logger by setting `use_logger` to `false`
|
19
|
+
https://github.com/fluent/fluentd/pull/5036
|
20
|
+
* out_file: add symlink_path_use_relative option to use relative path instead of absolute path in symlink_path
|
21
|
+
https://github.com/fluent/fluentd/pull/4904
|
22
|
+
* System configuration: Add forced_stacktrace_level to force the log level of stacktraces.
|
23
|
+
https://github.com/fluent/fluentd/pull/5008
|
24
|
+
* System configuration: support built-in config files
|
25
|
+
https://github.com/fluent/fluentd/pull/4893
|
26
|
+
|
27
|
+
Metrics:
|
28
|
+
|
29
|
+
* metrics: enable input metrics by default
|
30
|
+
https://github.com/fluent/fluentd/pull/4966
|
31
|
+
* in_tail: add "tracked_file_count" metrics to see how many log files are being tracked
|
32
|
+
https://github.com/fluent/fluentd/pull/4980
|
33
|
+
* output: add metrics for number of writing events in secondary
|
34
|
+
https://github.com/fluent/fluentd/pull/4971
|
35
|
+
* output: add metrics for dropped oldest chunk count
|
36
|
+
https://github.com/fluent/fluentd/pull/4981
|
37
|
+
|
38
|
+
Others:
|
39
|
+
|
40
|
+
* in_forward: enable skip_invalid_event by default not to process broken data
|
41
|
+
https://github.com/fluent/fluentd/pull/5003
|
42
|
+
* buf_file: reinforce buffer file corruption check
|
43
|
+
https://github.com/fluent/fluentd/pull/4998
|
44
|
+
* in_http: allow empty Origin header requests to pass CORS checks
|
45
|
+
https://github.com/fluent/fluentd/pull/4866
|
46
|
+
* in_tail: add warning for directory permission
|
47
|
+
https://github.com/fluent/fluentd/pull/4865
|
48
|
+
* Add logging for errors about loading dependencies on startup
|
49
|
+
https://github.com/fluent/fluentd/pull/4858
|
50
|
+
* Performance improvements
|
51
|
+
* https://github.com/fluent/fluentd/pull/4759
|
52
|
+
https://github.com/fluent/fluentd/pull/4760
|
53
|
+
https://github.com/fluent/fluentd/pull/4763
|
54
|
+
https://github.com/fluent/fluentd/pull/4764
|
55
|
+
https://github.com/fluent/fluentd/pull/4769
|
56
|
+
https://github.com/fluent/fluentd/pull/4813
|
57
|
+
https://github.com/fluent/fluentd/pull/4817
|
58
|
+
https://github.com/fluent/fluentd/pull/4835
|
59
|
+
https://github.com/fluent/fluentd/pull/4845
|
60
|
+
https://github.com/fluent/fluentd/pull/4881
|
61
|
+
https://github.com/fluent/fluentd/pull/4884
|
62
|
+
https://github.com/fluent/fluentd/pull/4886
|
63
|
+
https://github.com/fluent/fluentd/pull/4930
|
64
|
+
https://github.com/fluent/fluentd/pull/4931
|
65
|
+
https://github.com/fluent/fluentd/pull/4932
|
66
|
+
https://github.com/fluent/fluentd/pull/4933
|
67
|
+
https://github.com/fluent/fluentd/pull/4934
|
68
|
+
https://github.com/fluent/fluentd/pull/4995
|
69
|
+
|
70
|
+
### Bug Fix
|
71
|
+
|
72
|
+
* in_tail: fixed where specifying only encoding parameter might cause data corruption (affects since v0.14.12).
|
73
|
+
https://github.com/fluent/fluentd/pull/5010
|
74
|
+
* formatter_csv: fix memory leak
|
75
|
+
https://github.com/fluent/fluentd/pull/4864
|
76
|
+
* server plugin helper: ensure to close all connections at shutdown
|
77
|
+
https://github.com/fluent/fluentd/pull/502
|
78
|
+
* Fixed a bug where the default `umask` was not set to `0` when using `--daemon` (td-agent, fluent-package) since v1.14.6.
|
79
|
+
https://github.com/fluent/fluentd/pull/4836
|
80
|
+
* `--umask` command line option: Fixed so that it is applied when Fluentd runs with `--daemon` (fluent-package) as well as when Fluentd runs with `--no-supervisor`.
|
81
|
+
https://github.com/fluent/fluentd/pull/4836
|
82
|
+
* Windows: Stop the service when the supervisor is dead
|
83
|
+
https://github.com/fluent/fluentd/pull/4909
|
84
|
+
* Windows: Fixed an issue where stopping the service immediately after startup could leave the processes.
|
85
|
+
https://github.com/fluent/fluentd/pull/4782
|
86
|
+
* Windows: Fixed an issue where stopping service sometimes can not be completed forever.
|
87
|
+
https://github.com/fluent/fluentd/pull/4782
|
88
|
+
|
89
|
+
### Misc
|
90
|
+
|
91
|
+
* in_monitor_agent: stop using CGI.parse due to support Ruby 3.5
|
92
|
+
https://github.com/fluent/fluentd/pull/4962
|
93
|
+
* HTTP server plugin helper: stop using CGI.parse due to support Ruby 3.5
|
94
|
+
https://github.com/fluent/fluentd/pull/4962
|
95
|
+
* config: change inspect format
|
96
|
+
https://github.com/fluent/fluentd/pull/4914
|
97
|
+
* console_adapter: support console gem v1.30
|
98
|
+
https://github.com/fluent/fluentd/pull/4857
|
99
|
+
* gemspec: fix io-event and io-stream version to avoid unstable behavior on Windows
|
100
|
+
https://github.com/fluent/fluentd/pull/5042
|
101
|
+
* in_http: replace WEBrick::HTTPUtils.parse_query with URI
|
102
|
+
Note that at least, this makes it unable to use ; delimiter.
|
103
|
+
https://github.com/fluent/fluentd/pull/4900
|
104
|
+
* http_server: stop fallback to WEBrick
|
105
|
+
https://github.com/fluent/fluentd/pull/4899
|
106
|
+
* metrics: add getter method automatically
|
107
|
+
https://github.com/fluent/fluentd/pull/4978
|
108
|
+
* http_server helper: add `header` method for `Request`
|
109
|
+
https://github.com/fluent/fluentd/pull/4903
|
110
|
+
* multi_output: fix metrics name
|
111
|
+
https://github.com/fluent/fluentd/pull/4979
|
112
|
+
* plugin_id: fix typo
|
113
|
+
https://github.com/fluent/fluentd/pull/4964
|
114
|
+
* CI fixes
|
115
|
+
* https://github.com/fluent/fluentd/pull/4728
|
116
|
+
https://github.com/fluent/fluentd/pull/4730
|
117
|
+
https://github.com/fluent/fluentd/pull/4746
|
118
|
+
https://github.com/fluent/fluentd/pull/4747
|
119
|
+
https://github.com/fluent/fluentd/pull/4748
|
120
|
+
https://github.com/fluent/fluentd/pull/4750
|
121
|
+
https://github.com/fluent/fluentd/pull/4755
|
122
|
+
https://github.com/fluent/fluentd/pull/4820
|
123
|
+
https://github.com/fluent/fluentd/pull/4874
|
124
|
+
https://github.com/fluent/fluentd/pull/4877
|
125
|
+
* Fixes RuboCop's remarks
|
126
|
+
https://github.com/fluent/fluentd/pull/4928
|
127
|
+
* CI: Add benchmark scripts
|
128
|
+
https://github.com/fluent/fluentd/pull/4989
|
129
|
+
|
1
130
|
# v1.18
|
2
131
|
|
3
132
|
## Release v1.18.0 - 2024/11/29
|
@@ -142,6 +271,100 @@
|
|
142
271
|
|
143
272
|
# v1.16
|
144
273
|
|
274
|
+
## Release v1.16.9 - 2025/05/14
|
275
|
+
|
276
|
+
### Bug Fix
|
277
|
+
|
278
|
+
* winsvc: Fix bug where service accidentally stops after starting.
|
279
|
+
The previous version (v1.16.8) should not be used for Windows Service.
|
280
|
+
https://github.com/fluent/fluentd/pull/4955
|
281
|
+
|
282
|
+
### Misc
|
283
|
+
|
284
|
+
* CI improvements
|
285
|
+
https://github.com/fluent/fluentd/pull/4956
|
286
|
+
|
287
|
+
## Release v1.16.8 - 2025/05/01
|
288
|
+
|
289
|
+
**This version has a critical bug about Windows Service. Do not use this version.**
|
290
|
+
(https://github.com/fluent/fluentd/pull/4955)
|
291
|
+
|
292
|
+
### Bug Fix
|
293
|
+
|
294
|
+
* winsvc: Stop the service when the supervisor is dead
|
295
|
+
https://github.com/fluent/fluentd/pull/4942
|
296
|
+
* formatter_csv: Fix memory leak
|
297
|
+
https://github.com/fluent/fluentd/pull/4920
|
298
|
+
|
299
|
+
### Misc
|
300
|
+
|
301
|
+
* Add fiddle as dependency gem for Ruby 3.5 on Windows
|
302
|
+
https://github.com/fluent/fluentd/pull/4919
|
303
|
+
* Refactoring code
|
304
|
+
https://github.com/fluent/fluentd/pull/4921
|
305
|
+
https://github.com/fluent/fluentd/pull/4922
|
306
|
+
https://github.com/fluent/fluentd/pull/4926
|
307
|
+
https://github.com/fluent/fluentd/pull/4943
|
308
|
+
* CI improvements
|
309
|
+
https://github.com/fluent/fluentd/pull/4821
|
310
|
+
https://github.com/fluent/fluentd/pull/4850
|
311
|
+
https://github.com/fluent/fluentd/pull/4851
|
312
|
+
https://github.com/fluent/fluentd/pull/4862
|
313
|
+
https://github.com/fluent/fluentd/pull/4915
|
314
|
+
https://github.com/fluent/fluentd/pull/4923
|
315
|
+
https://github.com/fluent/fluentd/pull/4925
|
316
|
+
https://github.com/fluent/fluentd/pull/4927
|
317
|
+
|
318
|
+
## Release v1.16.7 - 2025/01/29
|
319
|
+
|
320
|
+
### Bug Fix
|
321
|
+
|
322
|
+
* Windows: Fix `NoMethodError` of `--daemon` option
|
323
|
+
https://github.com/fluent/fluentd/pull/4796
|
324
|
+
* Windows: Fixed an issue where stopping the service immediately after startup could leave the processes
|
325
|
+
https://github.com/fluent/fluentd/pull/4782
|
326
|
+
* Windows: Fixed an issue where stopping service sometimes can not be completed forever
|
327
|
+
https://github.com/fluent/fluentd/pull/4782
|
328
|
+
|
329
|
+
### Misc
|
330
|
+
|
331
|
+
* Windows: Add workaround for unexpected exception
|
332
|
+
https://github.com/fluent/fluentd/pull/4747
|
333
|
+
* README: remove deprecated google analytics beacon
|
334
|
+
https://github.com/fluent/fluentd/pull/4797
|
335
|
+
* CI improvements
|
336
|
+
https://github.com/fluent/fluentd/pull/4723
|
337
|
+
https://github.com/fluent/fluentd/pull/4788
|
338
|
+
https://github.com/fluent/fluentd/pull/4789
|
339
|
+
https://github.com/fluent/fluentd/pull/4790
|
340
|
+
https://github.com/fluent/fluentd/pull/4791
|
341
|
+
https://github.com/fluent/fluentd/pull/4793
|
342
|
+
https://github.com/fluent/fluentd/pull/4794
|
343
|
+
https://github.com/fluent/fluentd/pull/4795
|
344
|
+
https://github.com/fluent/fluentd/pull/4798
|
345
|
+
https://github.com/fluent/fluentd/pull/4799
|
346
|
+
https://github.com/fluent/fluentd/pull/4800
|
347
|
+
https://github.com/fluent/fluentd/pull/4801
|
348
|
+
https://github.com/fluent/fluentd/pull/4803
|
349
|
+
|
350
|
+
## Release v1.16.6 - 2024/08/16
|
351
|
+
|
352
|
+
### Bug Fix
|
353
|
+
|
354
|
+
* YAML config syntax: Fix issue where `$log_level` element was not supported correctly
|
355
|
+
https://github.com/fluent/fluentd/pull/4486
|
356
|
+
* parser_json: Fix wrong LoadError warning
|
357
|
+
https://github.com/fluent/fluentd/pull/4592
|
358
|
+
* `fluentd` command: Fix `--plugin` (`-p`) option not to overwrite default value
|
359
|
+
https://github.com/fluent/fluentd/pull/4605
|
360
|
+
|
361
|
+
### Misc
|
362
|
+
|
363
|
+
* out_file: Add warn message for symlink_path setting
|
364
|
+
https://github.com/fluent/fluentd/pull/4512
|
365
|
+
* Keep console gem v1.23 to avoid LoadError
|
366
|
+
https://github.com/fluent/fluentd/pull/4510
|
367
|
+
|
145
368
|
## Release v1.16.5 - 2024/03/27
|
146
369
|
|
147
370
|
### Bug Fix
|
@@ -831,7 +1054,7 @@ We recommend to upgrade Fluentd to v1.14.2 or use patched version of
|
|
831
1054
|
|
832
1055
|
* Add webrick to support Ruby 3.0
|
833
1056
|
https://github.com/fluent/fluentd/pull/3257
|
834
|
-
* Suggest
|
1057
|
+
* Suggest Discourse instead of Google Groups
|
835
1058
|
https://github.com/fluent/fluentd/pull/3261
|
836
1059
|
* Update MAINTAINERS.md
|
837
1060
|
https://github.com/fluent/fluentd/pull/3282
|
@@ -920,7 +1143,7 @@ We recommend to upgrade Fluentd to v1.14.2 or use patched version of
|
|
920
1143
|
|
921
1144
|
### Bug fix
|
922
1145
|
|
923
|
-
* Fix a bug that windows service isn't stopped
|
1146
|
+
* Fix a bug that windows service isn't stopped gracefully
|
924
1147
|
https://github.com/fluent/fluentd/pull/3156
|
925
1148
|
|
926
1149
|
## Release v1.11.4 - 2020/10/13
|
@@ -979,7 +1202,7 @@ We recommend to upgrade Fluentd to v1.14.2 or use patched version of
|
|
979
1202
|
https://github.com/fluent/fluentd/pull/3092
|
980
1203
|
* cert: Raise an error for broken certificate file
|
981
1204
|
https://github.com/fluent/fluentd/pull/3086
|
982
|
-
* cert: Set TLS ciphers list
|
1205
|
+
* cert: Set TLS ciphers list correctly on older OpenSSL
|
983
1206
|
https://github.com/fluent/fluentd/pull/3093
|
984
1207
|
|
985
1208
|
## Release v1.11.1 - 2020/06/22
|
@@ -1231,7 +1454,7 @@ We recommend to upgrade Fluentd to v1.14.2 or use patched version of
|
|
1231
1454
|
https://github.com/fluent/fluentd/pull/2787
|
1232
1455
|
* in_tail: Add `path_delimiter` to split with any char
|
1233
1456
|
https://github.com/fluent/fluentd/pull/2796
|
1234
|
-
* in_tail: Remove an entry from
|
1457
|
+
* in_tail: Remove an entry from PositionFile when it is unwatched
|
1235
1458
|
https://github.com/fluent/fluentd/pull/2803
|
1236
1459
|
* out_http: Add warning for `retryable_response_code`
|
1237
1460
|
https://github.com/fluent/fluentd/pull/2809
|
@@ -1251,7 +1474,7 @@ We recommend to upgrade Fluentd to v1.14.2 or use patched version of
|
|
1251
1474
|
|
1252
1475
|
### New feature
|
1253
1476
|
|
1254
|
-
* New light-weight config reload
|
1477
|
+
* New light-weight config reload mechanism
|
1255
1478
|
https://github.com/fluent/fluentd/pull/2716
|
1256
1479
|
* Drop ruby 2.1/2.2/2.3 support
|
1257
1480
|
https://github.com/fluent/fluentd/pull/2750
|
@@ -1274,7 +1497,7 @@ We recommend to upgrade Fluentd to v1.14.2 or use patched version of
|
|
1274
1497
|
|
1275
1498
|
* buffer: Disable the optimization of Metadata instance comparison on Windows
|
1276
1499
|
https://github.com/fluent/fluentd/pull/2778
|
1277
|
-
*
|
1500
|
+
* output/buffer: Fix stage size computation
|
1278
1501
|
https://github.com/fluent/fluentd/pull/2734
|
1279
1502
|
* server: Ignore Errno::EHOSTUNREACH in TLS accept to avoid fluentd restart
|
1280
1503
|
https://github.com/fluent/fluentd/pull/2773
|
@@ -1321,7 +1544,7 @@ We recommend to upgrade Fluentd to v1.14.2 or use patched version of
|
|
1321
1544
|
https://github.com/fluent/fluentd/pull/2673
|
1322
1545
|
* log: Deprecate top-level match for capturing fluentd logs
|
1323
1546
|
https://github.com/fluent/fluentd/pull/2689
|
1324
|
-
* in_monitor_agent: Expose Fluentd
|
1547
|
+
* in_monitor_agent: Expose Fluentd version in REST API
|
1325
1548
|
https://github.com/fluent/fluentd/pull/2706
|
1326
1549
|
* time: Accept localtime xor utc
|
1327
1550
|
https://github.com/fluent/fluentd/pull/2720
|
@@ -1756,7 +1979,7 @@ We recommend to upgrade Fluentd to v1.14.2 or use patched version of
|
|
1756
1979
|
https://github.com/fluent/fluentd/pull/2193
|
1757
1980
|
* record_accessor helper: Delete top level field with bracket style
|
1758
1981
|
https://github.com/fluent/fluentd/pull/2192
|
1759
|
-
* filter_record_transformer: Keep `class`
|
1982
|
+
* filter_record_transformer: Keep `class` method to avoid undefined method error
|
1760
1983
|
https://github.com/fluent/fluentd/pull/2186
|
1761
1984
|
|
1762
1985
|
## Release v1.3.0 - 2018/11/10
|
@@ -2010,7 +2233,7 @@ We recommend to upgrade Fluentd to v1.14.2 or use patched version of
|
|
2010
2233
|
https://github.com/fluent/fluentd/pull/1805
|
2011
2234
|
* time: Fix the method for TimeFormatter#call
|
2012
2235
|
https://github.com/fluent/fluentd/pull/1813
|
2013
|
-
|
2236
|
+
|
2014
2237
|
# v1.0
|
2015
2238
|
|
2016
2239
|
## Release v1.0.2 - 2017/12/17
|
@@ -2129,7 +2352,7 @@ See [CNCF announcement](https://www.cncf.io/blog/2017/12/06/fluentd-v1-0/) :)
|
|
2129
2352
|
|
2130
2353
|
* formatter_tsv: Add add_newline parameter
|
2131
2354
|
https://github.com/fluent/fluentd/pull/1691
|
2132
|
-
* out_file/out_secondary_file: Support ${chunk_id} placeholder. This includes
|
2355
|
+
* out_file/out_secondary_file: Support ${chunk_id} placeholder. This includes extract_placeholders API change
|
2133
2356
|
https://github.com/fluent/fluentd/pull/1708
|
2134
2357
|
* record_accessor: Support double quotes in bracket notation
|
2135
2358
|
https://github.com/fluent/fluentd/pull/1716
|
@@ -2144,7 +2367,7 @@ See [CNCF announcement](https://www.cncf.io/blog/2017/12/06/fluentd-v1-0/) :)
|
|
2144
2367
|
|
2145
2368
|
* parser_apache2: Delay time parser initialization
|
2146
2369
|
https://github.com/fluent/fluentd/pull/1690
|
2147
|
-
* cert_option: Improve generated certificates' conformance to X.509 specification
|
2370
|
+
* cert_option: Improve generated certificates' conformance to X.509 specification
|
2148
2371
|
https://github.com/fluent/fluentd/pull/1714
|
2149
2372
|
* buffer: Always lock chunks first to avoid deadlock
|
2150
2373
|
https://github.com/fluent/fluentd/pull/1721
|
@@ -2280,7 +2503,7 @@ See [CNCF announcement](https://www.cncf.io/blog/2017/12/06/fluentd-v1-0/) :)
|
|
2280
2503
|
|
2281
2504
|
### Bug fixes
|
2282
2505
|
|
2283
|
-
* in_http: Fix X-Forwarded-For header handling.
|
2506
|
+
* in_http: Fix X-Forwarded-For header handling. Accept multiple headers
|
2284
2507
|
https://github.com/fluent/fluentd/pull/1535
|
2285
2508
|
* Fix backward compatibility with Fluent::DetachProcess and Fluent::DetachMultiProcess
|
2286
2509
|
https://github.com/fluent/fluentd/pull/1522
|
data/MAINTAINERS.md
CHANGED
@@ -2,12 +2,18 @@
|
|
2
2
|
|
3
3
|
- [Naotoshi Seo](https://github.com/sonots), [ZOZO Technologies](https://tech.zozo.com/en/)
|
4
4
|
- [Okkez](https://github.com/okkez)
|
5
|
-
- [Hiroshi Hatake](https://github.com/cosmo0920), [
|
5
|
+
- [Hiroshi Hatake](https://github.com/cosmo0920), [Chronosphere](https://chronosphere.io/)
|
6
6
|
- [Masahiro Nakagawa](https://github.com/repeatedly)
|
7
7
|
- [Satoshi Tagomori](https://github.com/tagomoris)
|
8
8
|
- [Toru Takahashi](https://github.com/toru-takahashi), [Treasure Data](https://www.treasuredata.com/)
|
9
|
-
- [Eduardo Silva](https://github.com/edsiper), [
|
9
|
+
- [Eduardo Silva](https://github.com/edsiper), [Chronosphere](https://chronosphere.io/)
|
10
10
|
- [Fujimoto Seiji](https://github.com/fujimots)
|
11
11
|
- [Takuro Ashie](https://github.com/ashie), [ClearCode](https://www.clear-code.com/)
|
12
12
|
- [Kentaro Hayashi](https://github.com/kenhys), [ClearCode](https://www.clear-code.com/)
|
13
13
|
- [Daijiro Fukuda](https://github.com/daipom), [ClearCode](https://www.clear-code.com/)
|
14
|
+
|
15
|
+
## Sub Projects: Fluent Bit
|
16
|
+
|
17
|
+
Fluent Bit maintainers list can be found here:
|
18
|
+
|
19
|
+
- https://github.com/fluent/fluent-bit/blob/master/MAINTAINERS.md
|
data/README.md
CHANGED
@@ -1,10 +1,8 @@
|
|
1
1
|
Fluentd: Open-Source Log Collector
|
2
2
|
===================================
|
3
3
|
|
4
|
-
[](https://github.com/fluent/fluentd/actions/workflows/macos-test.yaml)
|
7
|
-
[](https://codeclimate.com/github/fluent/fluentd)
|
4
|
+
[](https://github.com/fluent/fluentd/actions/workflows/test.yml)
|
5
|
+
[](https://github.com/fluent/fluentd/actions/workflows/test-ruby-head.yml)
|
8
6
|
[](https://bestpractices.coreinfrastructure.org/projects/1189)
|
9
7
|
[](https://scorecard.dev/viewer/?uri=github.com/fluent/fluentd)
|
10
8
|
|
@@ -30,7 +28,7 @@ Fluentd: Open-Source Log Collector
|
|
30
28
|
|
31
29
|
### Prerequisites
|
32
30
|
|
33
|
-
- Ruby 2
|
31
|
+
- Ruby 3.2 or later
|
34
32
|
- git
|
35
33
|
|
36
34
|
`git` should be in `PATH`. On Windows, you can use `Github for Windows` and `GitShell` for easy setup.
|
@@ -72,5 +70,3 @@ See [SECURITY](SECURITY.md) to contact us about vulnerability.
|
|
72
70
|
## Contributors:
|
73
71
|
|
74
72
|
Patches contributed by [great developers](https://github.com/fluent/fluentd/contributors).
|
75
|
-
|
76
|
-
[<img src="https://ga-beacon.appspot.com/UA-24890265-6/fluent/fluentd" />](https://github.com/fluent/fluentd)
|
data/Rakefile
CHANGED
data/SECURITY.md
CHANGED
@@ -2,9 +2,11 @@
|
|
2
2
|
|
3
3
|
## Supported Versions
|
4
4
|
|
5
|
-
|
|
6
|
-
|
7
|
-
| 1.
|
5
|
+
| Version | Supported |
|
6
|
+
|-----------|--------------------|
|
7
|
+
| 1.19.x | :white_check_mark: |
|
8
|
+
| 1.18.x | :x: |
|
9
|
+
| 1.17.x | :x: |
|
8
10
|
| 1.16.x | :white_check_mark: |
|
9
11
|
| <= 1.15.x | :x: |
|
10
12
|
|
@@ -28,11 +28,11 @@ module Fluent
|
|
28
28
|
@opts[:clear_capabilities] = true
|
29
29
|
}
|
30
30
|
|
31
|
-
@op.on('--add [
|
31
|
+
@op.on('--add [CAPABILITY1,CAPABILITY2, ...]', "Add capabilities into Fluentd Ruby") {|s|
|
32
32
|
@opts[:add_capabilities] = s
|
33
33
|
}
|
34
34
|
|
35
|
-
@op.on('--drop [
|
35
|
+
@op.on('--drop [CAPABILITY1,CAPABILITY2, ...]', "Drop capabilities from Fluentd Ruby") {|s|
|
36
36
|
@opts[:drop_capabilities] = s
|
37
37
|
}
|
38
38
|
|
@@ -133,7 +133,7 @@ unless Fluent.windows?
|
|
133
133
|
}
|
134
134
|
end
|
135
135
|
|
136
|
-
op.on('--config-file-type
|
136
|
+
op.on('--config-file-type VALUE', 'guessing file type of fluentd configuration. yaml/yml or guess') { |s|
|
137
137
|
if (s == 'yaml') || (s == 'yml')
|
138
138
|
cmd_opts[:config_file_type] = s.to_sym
|
139
139
|
elsif (s == 'guess')
|
@@ -155,7 +155,11 @@ op.on('--strict-config-value', "Parse config values strictly", TrueClass) {|b|
|
|
155
155
|
cmd_opts[:strict_config_value] = b
|
156
156
|
}
|
157
157
|
|
158
|
-
op.on('--enable-input-metrics', "Enable input plugin metrics on fluentd", TrueClass) {|b|
|
158
|
+
op.on('--enable-input-metrics', "[DEPRECATED] Enable input plugin metrics on fluentd", TrueClass) {|b|
|
159
|
+
cmd_opts[:enable_input_metrics] = b
|
160
|
+
}
|
161
|
+
|
162
|
+
op.on('--disable-input-metrics', "Disable input plugin metrics on fluentd", FalseClass) {|b|
|
159
163
|
cmd_opts[:enable_input_metrics] = b
|
160
164
|
}
|
161
165
|
|
@@ -101,6 +101,12 @@ module Fluent
|
|
101
101
|
|
102
102
|
class CsvFormatter < Fluent::Plugin::CsvFormatter
|
103
103
|
# TODO: warn when deprecated
|
104
|
+
|
105
|
+
# Do not cache because it is hard to consider the thread key correctly.
|
106
|
+
# (We can try, but it would be low priority.)
|
107
|
+
def csv_cacheable?
|
108
|
+
false
|
109
|
+
end
|
104
110
|
end
|
105
111
|
|
106
112
|
class SingleValueFormatter < Fluent::Plugin::SingleValueFormatter
|
@@ -129,7 +129,7 @@ module Fluent
|
|
129
129
|
|
130
130
|
def shutdown
|
131
131
|
@loop.watchers.each { |w| w.detach }
|
132
|
-
@loop.stop if @loop.instance_variable_get(
|
132
|
+
@loop.stop if @loop.instance_variable_get(:@running)
|
133
133
|
@handler.close
|
134
134
|
@thread.join
|
135
135
|
|
@@ -148,7 +148,7 @@ module Fluent
|
|
148
148
|
def on_message(msg, addr)
|
149
149
|
@parser.parse(msg) { |time, record|
|
150
150
|
unless time && record
|
151
|
-
log.warn "pattern not matched: #{msg.inspect}"
|
151
|
+
log.warn { "pattern not matched: #{msg.inspect}" }
|
152
152
|
return
|
153
153
|
end
|
154
154
|
|
@@ -31,7 +31,7 @@ module Fluent
|
|
31
31
|
@unused = unused || attrs.keys
|
32
32
|
@v1_config = false
|
33
33
|
@corresponding_proxies = [] # some plugins use flat parameters, e.g. in_http doesn't provide <format> section for parser.
|
34
|
-
@unused_in = nil # if this element is not used in plugins,
|
34
|
+
@unused_in = nil # if this element is not used in plugins, corresponding plugin name and parent element name is set, e.g. [source, plugin class].
|
35
35
|
|
36
36
|
# it's global logger, not plugin logger: deprecated message should be global warning, not plugin level.
|
37
37
|
@logger = defined?($log) ? $log : nil
|
@@ -73,7 +73,7 @@ module Fluent
|
|
73
73
|
|
74
74
|
def inspect
|
75
75
|
attrs = super
|
76
|
-
"name:#{@name}, arg:#{@arg},
|
76
|
+
"<name:#{@name}, arg:#{@arg}, attrs:#{attrs}, elements:#{@elements.inspect}>"
|
77
77
|
end
|
78
78
|
|
79
79
|
# Used by PP and Pry
|
@@ -98,11 +98,11 @@ module Fluent
|
|
98
98
|
else
|
99
99
|
return string.join
|
100
100
|
end
|
101
|
-
elsif check(/[^"]#{LINE_END_WITHOUT_SPACING_AND_COMMENT}/)
|
102
|
-
if s = check(/[^\\]#{LINE_END_WITHOUT_SPACING_AND_COMMENT}/)
|
101
|
+
elsif check(/[^"]#{LINE_END_WITHOUT_SPACING_AND_COMMENT}/o)
|
102
|
+
if s = check(/[^\\]#{LINE_END_WITHOUT_SPACING_AND_COMMENT}/o)
|
103
103
|
string << s
|
104
104
|
end
|
105
|
-
skip(/[^"]#{LINE_END_WITHOUT_SPACING_AND_COMMENT}/)
|
105
|
+
skip(/[^"]#{LINE_END_WITHOUT_SPACING_AND_COMMENT}/o)
|
106
106
|
elsif s = scan(/\\./)
|
107
107
|
string << eval_escape_char(s[1,1])
|
108
108
|
elsif skip(/\#\{/)
|