fluent-plugin-record-modifier 2.2.0 → 2.2.1
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/.github/workflows/linux.yml +2 -2
- data/ChangeLog +9 -0
- data/VERSION +1 -1
- data/lib/fluent/plugin/filter_record_modifier.rb +2 -2
- data/lib/fluent/plugin/out_record_modifier.rb +2 -2
- data/test/test_filter_record_modifier.rb +19 -0
- data/test/test_out_record_modifier.rb +22 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0162d793dd9d7c24bb4e3ec50aabfd2aa1e094b389d7da5236a9c99a60360209
|
4
|
+
data.tar.gz: 0e4a332894d537696733f3b0cfd824d689a187187ec86987a8bf533ef4d4fff9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 21a8f63aba701b8ffa5c77cf4b1bc6fc373b015a601e658abe77de4a1763de485e5e416b8958a6e9d0ace9b4dfc3ac401fc2ab9f07189b8452daea21153a0816
|
7
|
+
data.tar.gz: c5450f8d89ca5f9578947e49e2723620641658db0607a69ac8cceb19d1bcb3903562c380f0bc5f831c7fe5baeaa7a9c44a54dd485dd00719d3d05f31cedaee00
|
data/.github/workflows/linux.yml
CHANGED
@@ -9,12 +9,12 @@ jobs:
|
|
9
9
|
strategy:
|
10
10
|
fail-fast: false
|
11
11
|
matrix:
|
12
|
-
ruby: ['
|
12
|
+
ruby: ['3.1', '3.2', '3.3', '3.4']
|
13
13
|
os:
|
14
14
|
- ubuntu-latest
|
15
15
|
experimental: [false]
|
16
16
|
include:
|
17
|
-
- ruby
|
17
|
+
- ruby: head
|
18
18
|
os: ubuntu-latest
|
19
19
|
experimental: true
|
20
20
|
|
data/ChangeLog
CHANGED
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.2.
|
1
|
+
2.2.1
|
@@ -74,7 +74,7 @@ DESC
|
|
74
74
|
conf.elements.select { |element| element.name == 'record' }.each do |element|
|
75
75
|
element.each_pair do |k, v|
|
76
76
|
element.has_key?(k) # to suppress unread configuration warning
|
77
|
-
@has_tag_parts = true if v.include?('tag_parts')
|
77
|
+
@has_tag_parts = true if v && v.include?('tag_parts')
|
78
78
|
@map[k] = DynamicExpander.new(k, v, @prepare_value)
|
79
79
|
end
|
80
80
|
end
|
@@ -167,7 +167,7 @@ DESC
|
|
167
167
|
|
168
168
|
class DynamicExpander
|
169
169
|
def initialize(param_key, param_value, prepare_value)
|
170
|
-
if param_value.include?('${')
|
170
|
+
if param_value && param_value.include?('${')
|
171
171
|
__str_eval_code__ = parse_parameter(param_value)
|
172
172
|
|
173
173
|
# Use class_eval with string instead of define_method for performance.
|
@@ -77,7 +77,7 @@ DESC
|
|
77
77
|
conf.elements.select { |element| element.name == 'record' }.each do |element|
|
78
78
|
element.each_pair do |k, v|
|
79
79
|
element.has_key?(k) # to suppress unread configuration warning
|
80
|
-
@has_tag_parts = true if v.include?('tag_parts')
|
80
|
+
@has_tag_parts = true if v && v.include?('tag_parts')
|
81
81
|
@map[k] = DynamicExpander.new(k, v, @prepare_value)
|
82
82
|
end
|
83
83
|
end
|
@@ -198,7 +198,7 @@ DESC
|
|
198
198
|
attr_reader :param_value
|
199
199
|
|
200
200
|
def initialize(param_key, param_value, prepare_value)
|
201
|
-
if param_value.include?('${')
|
201
|
+
if param_value && param_value.include?('${')
|
202
202
|
__str_eval_code__ = parse_parameter(param_value)
|
203
203
|
|
204
204
|
# Use class_eval with string instead of define_method for performance.
|
@@ -226,4 +226,23 @@ CONFIG
|
|
226
226
|
], d.filtered.map { |e| e.last }
|
227
227
|
end
|
228
228
|
end
|
229
|
+
|
230
|
+
def test_use_nil
|
231
|
+
require "fluent/version"
|
232
|
+
if Gem::Version.new(Fluent::VERSION) < Gem::Version.new("1.8.0")
|
233
|
+
omit "use_nil is only available in Fluentd 1.8.0 and higher"
|
234
|
+
end
|
235
|
+
|
236
|
+
d = create_driver %q[
|
237
|
+
<record>
|
238
|
+
test_key "#{use_nil}"
|
239
|
+
</record>
|
240
|
+
]
|
241
|
+
|
242
|
+
d.run(default_tag: @tag) do
|
243
|
+
d.feed("k" => "v")
|
244
|
+
end
|
245
|
+
|
246
|
+
assert_equal [{"k" => "v", "test_key" => nil}], d.filtered.map(&:last)
|
247
|
+
end
|
229
248
|
end
|
@@ -1,6 +1,7 @@
|
|
1
|
+
require 'fluent/test'
|
1
2
|
require 'fluent/test/driver/output'
|
2
3
|
require 'fluent/plugin/out_record_modifier'
|
3
|
-
|
4
|
+
require 'test/unit'
|
4
5
|
|
5
6
|
class RecordModifierOutputTest < Test::Unit::TestCase
|
6
7
|
def setup
|
@@ -139,4 +140,24 @@ class RecordModifierOutputTest < Test::Unit::TestCase
|
|
139
140
|
|
140
141
|
assert_equal [{"k1" => 'v', "k2" => 'v', 'foo' => 'bar'}], d.events.map { |e| e.last }
|
141
142
|
end
|
143
|
+
|
144
|
+
def test_use_nil
|
145
|
+
require "fluent/version"
|
146
|
+
if Gem::Version.new(Fluent::VERSION) < Gem::Version.new("1.8.0")
|
147
|
+
omit "use_nil is only available in Fluentd 1.8.0 and higher"
|
148
|
+
end
|
149
|
+
|
150
|
+
d = create_driver %q[
|
151
|
+
tag foo.filtered
|
152
|
+
<record>
|
153
|
+
test_key "#{use_nil}"
|
154
|
+
</record>
|
155
|
+
]
|
156
|
+
|
157
|
+
d.run(default_tag: "test_tags") do
|
158
|
+
d.feed("k" => "v")
|
159
|
+
end
|
160
|
+
|
161
|
+
assert_equal [{"k" => "v", "test_key" => nil}], d.events.map(&:last)
|
162
|
+
end
|
142
163
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fluent-plugin-record-modifier
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.2.
|
4
|
+
version: 2.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Masahiro Nakagawa
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2025-08-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: fluentd
|