fluent-plugin-extract_query_params 0.0.5 → 0.0.6

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: 4428fe126f8c2bcdfdc73937b0b140c5740ecabf
4
- data.tar.gz: 2304f1fb5c8da4aae857089d03bed3890fad7c2d
3
+ metadata.gz: 84f1e64b8f5690eed0b0bcebfa2d98a4733ae447
4
+ data.tar.gz: 65fa725473a5a549c035dd3b1f0d3c977e56a57a
5
5
  SHA512:
6
- metadata.gz: 98901ac91a3dba4f4a92c6511da1761a78c769c98f70cef957d0d701c5e1a217504904ff21a3f6645c78801d4b2daa03777ac91dec3d0a33743294724e2331c9
7
- data.tar.gz: bf128ba87028b8141fb6c8ce66c79df22729c6d372ea27fb1afc7483d86f389fbf224fba21c4ad7ae6cb4ecd18179437f5ee1232cae47a4313b10ad70c7b1ec9
6
+ metadata.gz: 17e95a517ce31448b09cecff41ecf700ef04fca39770100cb394b84fc16fabb63285a957196ff428b32fffbcdbeaaa038f7bebc722a4da189bd06be2c1e3c0ac
7
+ data.tar.gz: 2a83037ec33506bb2c67d1b57fa1e741d24d843569685ce2a48b1829156593cda25f37d55eec342f5354ae7daa3eeae2aa03b2e5ad36a9f3efda593d5e1ad343
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |gem|
2
2
  gem.name = 'fluent-plugin-extract_query_params'
3
- gem.version = '0.0.5'
3
+ gem.version = '0.0.6'
4
4
  gem.authors = ['Kentaro Kuribayashi']
5
5
  gem.email = ['kentarok@gmail.com']
6
6
  gem.homepage = 'http://github.com/kentaro/fluent-plugin-extract_query_params'
@@ -13,6 +13,5 @@ Gem::Specification.new do |gem|
13
13
  gem.require_paths = ['lib']
14
14
 
15
15
  gem.add_development_dependency 'rake'
16
- gem.add_development_dependency 'fluentd'
17
16
  gem.add_runtime_dependency 'fluentd'
18
17
  end
@@ -13,6 +13,11 @@ module Fluent
13
13
  config_param :add_field_prefix, :string, :default => nil
14
14
  config_param :permit_blank_key, :bool, :default => false
15
15
 
16
+ def initialize
17
+ super
18
+ require 'webrick'
19
+ end
20
+
16
21
  def configure(conf)
17
22
  super
18
23
 
@@ -48,7 +53,11 @@ module Fluent
48
53
  def filter_record(tag, time, record)
49
54
  if record[key]
50
55
  begin
51
- url = URI.parse(record[key])
56
+ url = begin
57
+ URI.parse(record[key])
58
+ rescue URI::InvalidURIError => e
59
+ URI.parse(WEBrick::HTTPUtils.escape(record[key]))
60
+ end
52
61
  unless url.query.nil?
53
62
  url.query.split('&').each do |pair|
54
63
  key, value = pair.split('=').map { |i| URI.unescape(i) }
@@ -298,4 +298,31 @@ class ExtractQueryParamsOutputTest < Test::Unit::TestCase
298
298
  assert_equal 'bar', r['']
299
299
  assert_equal 'qux', r['baz']
300
300
  end
301
+
302
+ def test_raw_multibyte_chars
303
+ d = create_driver(%[
304
+ key path
305
+ add_tag_prefix a.
306
+ permit_blank_key yes
307
+ ])
308
+
309
+ raw_multibytes_src = '/path/to/ほげぽす/x?a=b'
310
+
311
+ d.run {
312
+ d.emit({ 'path' => raw_multibytes_src.dup.encode('sjis').force_encoding('ascii-8bit') })
313
+ d.emit({ 'path' => raw_multibytes_src.dup.encode('eucjp').force_encoding('ascii-8bit') })
314
+ }
315
+ emits = d.emits
316
+
317
+ # nothing raised is correct
318
+ assert_equal 2, emits.count
319
+
320
+ r = emits.shift[2]
321
+ assert_equal 2, r.size
322
+ assert_equal 'b', r['a']
323
+
324
+ r = emits.shift[2]
325
+ assert_equal 2, r.size
326
+ assert_equal 'b', r['a']
327
+ end
301
328
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fluent-plugin-extract_query_params
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
4
+ version: 0.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kentaro Kuribayashi
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-05-29 00:00:00.000000000 Z
11
+ date: 2013-09-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -24,20 +24,6 @@ dependencies:
24
24
  - - '>='
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
- - !ruby/object:Gem::Dependency
28
- name: fluentd
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - '>='
32
- - !ruby/object:Gem::Version
33
- version: '0'
34
- type: :development
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - '>='
39
- - !ruby/object:Gem::Version
40
- version: '0'
41
27
  - !ruby/object:Gem::Dependency
42
28
  name: fluentd
43
29
  requirement: !ruby/object:Gem::Requirement
@@ -87,7 +73,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
87
73
  version: '0'
88
74
  requirements: []
89
75
  rubyforge_project:
90
- rubygems_version: 2.0.0
76
+ rubygems_version: 2.0.3
91
77
  signing_key:
92
78
  specification_version: 4
93
79
  summary: Fluentd plugin to extract key/values from URL query parameters