fluent-plugin-flatten 0.0.9 → 0.0.10

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3927fbd30b30d3711eef4ba1e17b72297c47a7fe
4
- data.tar.gz: e3e3e402edf10f0fee43d0b8e2a936c972f43e02
3
+ metadata.gz: 44fed39bc14936c3c382922850cf38ce9f88b0ab
4
+ data.tar.gz: 4d596b67719906871a23265501742fd4e5fdf1b1
5
5
  SHA512:
6
- metadata.gz: a51d7520b44d3c6dc5b3006de78995546f51c9ff2782bfb116177d6d017bf51c46182be57eb5e7d87c17ab34b9e43dce5ba6e9fcd79b9698f371b567399d98c6
7
- data.tar.gz: 5702a9d70a5e680ee9f7967913a36bf690d62d3e0ee88a4adca5b4b107f4ca951ce7e55edeabcba88d0155cb9ffb5b95266da400345700875c558db653926a30
6
+ metadata.gz: 212995f7b1bc5c5e9d44b4f52d192151b862ce6cf0d5514bf682f7834774d1c540e1f07b960fa169355a41de8462da9c902e1deef777881d62eb010cf4162f8a
7
+ data.tar.gz: 42d74c0a6f831607c0e73636d1973f7975077c8f54776bc5b942bf8d9a308c91c4d8d2797d5982de37aba0069469e2519c5a9f5209e54381a68a943e7d2e1dac
data/README.md CHANGED
@@ -12,7 +12,7 @@ Imagin you have a config as below:
12
12
 
13
13
  ```
14
14
  <match test.**>
15
- type flatten
15
+ @type flatten
16
16
 
17
17
  key foo
18
18
  add_tag_prefix flattened.
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |gem|
2
2
  gem.name = 'fluent-plugin-flatten'
3
- gem.version = '0.0.9'
3
+ gem.version = '0.0.10'
4
4
  gem.authors = ['Kentaro Kuribayashi']
5
5
  gem.email = ['kentarok@gmail.com']
6
6
  gem.homepage = 'http://github.com/kentaro/fluent-plugin-flatten'
@@ -22,6 +22,8 @@ This plugin sets `value` for this option as a default if it's not set.
22
22
  DESC
23
23
  config_param :parse_json, :bool, :default => true,
24
24
  :desc => "Parse json record."
25
+ config_param :replace_space_in_tag, :string, :default => nil,
26
+ :desc => "Replaces spaces in the resulting tag with the key passed"
25
27
 
26
28
  def configure(conf)
27
29
  super
@@ -43,8 +45,11 @@ DESC
43
45
  flattened.each do |keypath, value|
44
46
  tag_with_keypath = [tag.clone, keypath].join('.')
45
47
  filter_record(tag_with_keypath, time, value)
46
-
47
- router.emit(tag_with_keypath, time, value)
48
+ if @replace_space_in_tag
49
+ router.emit(tag_with_keypath.gsub(/\s+/, @replace_space_in_tag), time, value)
50
+ else
51
+ router.emit(tag_with_keypath, time, value)
52
+ end
48
53
  end
49
54
  end
50
55
 
@@ -111,35 +111,44 @@ class FlattenOutputTest < Test::Unit::TestCase
111
111
 
112
112
  # test2 parse_json is set false
113
113
  d2 = create_driver(%[
114
- key foo
115
- add_tag_prefix flattened.
116
- remove_tag_prefix test.
117
- parse_json false
114
+ key foo
115
+ add_tag_prefix flattened.
116
+ remove_tag_prefix test.
117
+ parse_json false
118
+ replace_space_in_tag _
118
119
  ])
119
120
 
120
121
  d2.run do
121
122
  d2.emit( 'foo' => {'bar' => 'baz'}, 'hoge' => 'fuga' )
122
123
  d2.emit( 'foo' => {'bar' => {'qux' => 'quux', 'hoe' => 'poe' }, 'baz' => 'bazz' }, 'hoge' => 'fuga' )
124
+ d2.emit( 'foo' => {'bar hoge' => 'baz', 'hoe baz' => 'poe'}, 'hoge' => 'fuga' )
123
125
  end
124
126
  emits2 = d2.emits
125
127
 
126
- assert_equal 4, emits2.count
128
+ assert_equal 6, emits2.count
127
129
 
128
130
  # ["flattened.foo.bar", 1354689632, {"value"=>"baz"}]
129
- assert_equal 'flattened.foo.bar', emits2[0][0]
130
- assert_equal 'baz', emits2[0][2]['value']
131
+ assert_equal 'flattened.foo.bar', emits2[0][0]
132
+ assert_equal 'baz', emits2[0][2]['value']
131
133
 
132
- # ["flattened.foo.bar.qux", 1354689632, {"value"=>"quux"}]
133
- assert_equal 'flattened.foo.bar.qux', emits2[1][0]
134
- assert_equal 'quux', emits2[1][2]['value']
134
+ # ["flattened.foo.bar.qux_qux", 1354689632, {"value"=>"quux"}]
135
+ assert_equal 'flattened.foo.bar.qux', emits2[1][0]
136
+ assert_equal 'quux', emits2[1][2]['value']
135
137
 
136
138
  # ["flattened.foo.bar.hoe", 1354689632, {"value"=>"poe"}]
137
- assert_equal 'flattened.foo.bar.hoe', emits2[2][0]
138
- assert_equal 'poe', emits2[2][2]['value']
139
+ assert_equal 'flattened.foo.bar.hoe', emits2[2][0]
140
+ assert_equal 'poe', emits2[2][2]['value']
139
141
 
140
142
  # ["flattened.foo.bar.baz", 1354689632, {"value"=>"bazz"}]
141
- assert_equal 'flattened.foo.baz', emits2[3][0]
142
- assert_equal 'bazz', emits2[3][2]['value']
143
+ assert_equal 'flattened.foo.baz', emits2[3][0]
144
+ assert_equal 'bazz', emits2[3][2]['value']
145
+
146
+ # ["flattened.foo.bar_hoge", 1354689632, {"value"=>"baz"}]
147
+ assert_equal 'flattened.foo.bar_hoge', emits2[4][0]
148
+ assert_equal 'baz', emits2[4][2]['value']
143
149
 
150
+ # ["flattened.foo.hoe_baz", 1354689632, {"value"=>"baz"}]
151
+ assert_equal 'flattened.foo.hoe_baz', emits2[5][0]
152
+ assert_equal 'poe', emits2[5][2]['value']
144
153
  end
145
154
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fluent-plugin-flatten
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.9
4
+ version: 0.0.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kentaro Kuribayashi
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-01-13 00:00:00.000000000 Z
11
+ date: 2016-07-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake