fluent-plugin-array-splitter 0.1.0 → 0.1.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7b744e9de9c27aef607ee4954f10942b1a1de51ed36767ead52026abe028b171
4
- data.tar.gz: b456cd234a8940164f8d4efd4372724224fb504cd55ab5b81a4435445a2d5655
3
+ metadata.gz: 0d04da9205757d519b782b4f8603c6cd5999a0ca1ed15d50044ab9600259d200
4
+ data.tar.gz: c97d3587db8921bf2b25ca8b930b6e0e96dcc6e47f41ad2169a48775073217cc
5
5
  SHA512:
6
- metadata.gz: d666f6b204fd61c70a2e033edce5fde4a174d8e36e549eda9330b97bf5cc47eb9ad994e088185e56cda0884728546090095b532896ee28f6985c6675c609ee9b
7
- data.tar.gz: b39b59481bf68ffe1b1831904d1a356fc5a4567818419e30881f882bd81a3ceed9755d101c81634136c6fef2c53a5d029da4c23f7c8c87505d1cf76f0c25e4ea
6
+ metadata.gz: 720519d90f4c95983ec89fc616626cce0712be211673724d3f8db15e2bd0a4e562dd196344a13127f4c177c923ee5018c0ad98b19be27ee71f189868a43216c1
7
+ data.tar.gz: 40d369cb984e7b01125328e98df4c01b0c5a7f6725fae82d55a26e7cd8ab37001474a14913f4cd27c34260cf71ab4a115df69ddc9c8a9298da4339e7dc8b41cf
@@ -3,7 +3,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
3
 
4
4
  Gem::Specification.new do |spec|
5
5
  spec.name = "fluent-plugin-array-splitter"
6
- spec.version = "0.1.0"
6
+ spec.version = "0.1.1"
7
7
  spec.authors = ["pcoffmanjr"]
8
8
  spec.email = ["pcoffman@ctc-america.com"]
9
9
 
@@ -18,17 +18,15 @@ module Fluent
18
18
  if record['message'].is_a?(Array)
19
19
  record['message'].each do |value|
20
20
  new_record = record.dup
21
- new_record['message'] = value
22
- new_es.add(time, new_record)
23
- end
24
- elsif record['target_field'].is_a?(Array)
25
- record['target_field'].each do |hash|
26
- hash.each do |k, v|
27
- new_record = record.dup
28
- new_record.delete('target_field')
29
- new_record[k] = v
30
- new_es.add(time, new_record)
21
+ new_record.delete('message')
22
+ if value.is_a?(Hash)
23
+ value.each do |k, v|
24
+ new_record[k] = v
25
+ end
26
+ else
27
+ new_record['message'] = value
31
28
  end
29
+ new_es.add(time, new_record)
32
30
  end
33
31
  else
34
32
  new_es.add(time, record)
@@ -28,8 +28,27 @@ class ArraySplitterFilterTest < Test::Unit::TestCase
28
28
  assert_equal("v2", filtered_records[1]["message"])
29
29
  assert_equal("v3", filtered_records[2]["message"])
30
30
  end
31
-
32
- # More tests for other cases...
31
+
32
+ test "expand array with hashes in message field" do
33
+ record = {
34
+ "key1" => "foo",
35
+ "key2" => "bar",
36
+ "message" => [{"k1" => "hoge"}, {"k2" => "foobar"}]
37
+ }
38
+ @driver.run(default_tag: "test") do
39
+ @driver.feed(record)
40
+ end
41
+ filtered_records = @driver.filtered_records
42
+ assert_equal(2, filtered_records.size)
43
+ assert_equal("foo", filtered_records[0]["key1"])
44
+ assert_equal("bar", filtered_records[0]["key2"])
45
+ assert_equal("hoge", filtered_records[0]["k1"])
46
+ assert_nil(filtered_records[0]["message"])
47
+ assert_equal("foo", filtered_records[1]["key1"])
48
+ assert_equal("bar", filtered_records[1]["key2"])
49
+ assert_equal("foobar", filtered_records[1]["k2"])
50
+ assert_nil(filtered_records[1]["message"])
51
+ end
33
52
  end
34
53
  end
35
54
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fluent-plugin-array-splitter
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - pcoffmanjr