fluent-plugin-geoip-filter 0.3.0 → 1.0.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 66323e536e52cde459016c031e10cbbef45c70cd
4
- data.tar.gz: 2353e40eb98e052b194ece4d6b547b9853620bc0
3
+ metadata.gz: 7b9c9b328b7585a2a68f166ab6c59078e15849df
4
+ data.tar.gz: a4939e9e3e6a83314f273178eecf77f9b776b311
5
5
  SHA512:
6
- metadata.gz: efd2c312b13edaff3fea5cecab51cf07770c12f7314252495104b5ff3a7bdf84efd9a8af53fd21c9c8b3a5e8b6de2fb3a65be1920a2a1079ca43e6b5f62a2753
7
- data.tar.gz: f4e884d8c97e45f0add5368b87ced49bdcb2bfa3ea3c277f1afbd7567b9e1c7b86a5079cd97bcd5acd8f98b880921b63e36898df853bc0ae326d44dcc51589b9
6
+ metadata.gz: 013d91b782a4501a4527e08b4c4d28957b7c09c973ee46dc17b12ef4e8fc502b2cb70ee66d4d572aecfbd87c441a7c8bcf2edfecf06b9cf6f961b246eef45125
7
+ data.tar.gz: c656d0d723c058651821e33c53b30addafa3728813545c0380637b2f867e44a4894fb489cd51ac4a0ae0c5203f4053944290be2cb0ed1236f2d8f3a33388ce10
@@ -1,10 +1,10 @@
1
1
  language: ruby
2
2
 
3
3
  rvm:
4
- - 2.3.0
4
+ - 2.4.2
5
+ - 2.3.5
5
6
  - 2.2
6
- - 2.0
7
- - 1.9.3
7
+ - 2.1
8
8
 
9
9
  before_script:
10
10
  - wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz
data/README.md CHANGED
@@ -7,6 +7,14 @@
7
7
  [Fluentd](http://fluentd.org) filter plugin to add geoip.
8
8
 
9
9
 
10
+ ## Requirements
11
+
12
+ | fluent-plugin-geoip-filter | fluentd | ruby |
13
+ |----------------------------|------------|--------|
14
+ | >= 1.0.0 | >= v0.14.0 | >= 2.1 |
15
+ | < 1.0.0 | >= v0.12.0 | >= 1.9 |
16
+
17
+
10
18
  ## Installation
11
19
 
12
20
  ```bash
@@ -4,7 +4,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
4
 
5
5
  Gem::Specification.new do |spec|
6
6
  spec.name = "fluent-plugin-geoip-filter"
7
- spec.version = "0.3.0"
7
+ spec.version = "1.0.0"
8
8
  spec.authors = ["Yuri Umezaki"]
9
9
  spec.email = ["bungoume@gmail.com"]
10
10
  spec.homepage = "https://github.com/bungoume/fluent-plugin-geoip-filter"
@@ -17,7 +17,7 @@ Gem::Specification.new do |spec|
17
17
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
18
18
  spec.require_paths = ["lib"]
19
19
 
20
- spec.add_runtime_dependency "fluentd", ">= 0.12"
20
+ spec.add_runtime_dependency "fluentd", [">= 0.14.0", "< 2"]
21
21
  spec.add_runtime_dependency "geoip", ">= 1.5.0"
22
22
  spec.add_runtime_dependency "lru_redux", ">= 1.0.0"
23
23
  spec.add_development_dependency "bundler"
@@ -1,9 +1,10 @@
1
1
  require 'geoip'
2
2
  require 'lru_redux'
3
+ require 'fluent/plugin/filter'
3
4
 
4
- module Fluent
5
+ module Fluent::Plugin
5
6
  class GeoipFilter < Filter
6
- Plugin.register_filter('geoip', self)
7
+ Fluent::Plugin.register_filter('geoip', self)
7
8
 
8
9
  def initialize
9
10
  @geoip_cache = LruRedux::Cache.new(8192)
@@ -65,5 +66,5 @@ module Fluent
65
66
  ret
66
67
  end
67
68
 
68
- end if defined?(Filter) # Support only >= v0.12
69
+ end
69
70
  end
@@ -21,8 +21,10 @@ unless ENV.has_key?('VERBOSE')
21
21
  }
22
22
  $log = nulllogger
23
23
  end
24
-
24
+ require 'fluent/test/helpers'
25
+ require 'fluent/test/driver/filter'
25
26
  require 'fluent/plugin/filter_geoip'
26
27
 
27
28
  class Test::Unit::TestCase
29
+ include Fluent::Test::Helpers
28
30
  end
@@ -11,8 +11,8 @@ class GeoipFilterTest < Test::Unit::TestCase
11
11
  out_key geo
12
12
  ]
13
13
 
14
- def create_driver(conf=CONFIG,tag='test',use_v1=true)
15
- Fluent::Test::FilterTestDriver.new(Fluent::GeoipFilter, tag).configure(conf, use_v1)
14
+ def create_driver(conf=CONFIG)
15
+ Fluent::Test::Driver::Filter.new(Fluent::Plugin::GeoipFilter).configure(conf)
16
16
  end
17
17
 
18
18
  def test_configure
@@ -25,13 +25,12 @@ class GeoipFilterTest < Test::Unit::TestCase
25
25
  d1 = create_driver(CONFIG)
26
26
  ip_iddr = '93.184.216.34'
27
27
 
28
- d1.run do
29
- d1.emit({'client_ip' => ip_iddr})
28
+ d1.run(default_tag: 'test') do
29
+ d1.feed({'client_ip' => ip_iddr})
30
30
  end
31
- emits = d1.emits
31
+ emits = d1.filtered
32
32
  assert_equal 1, emits.length
33
- assert_equal 'test', emits[0][0] # tag
34
- geo_object = emits[0][2]['geo']
33
+ geo_object = emits[0][1]['geo']
35
34
  assert_equal [-70.8228, 42.150800000000004], geo_object['coordinates']
36
35
  assert_equal 'US', geo_object['country_code']
37
36
  assert_equal 'Norwell', geo_object['city']
@@ -39,21 +38,20 @@ class GeoipFilterTest < Test::Unit::TestCase
39
38
  end
40
39
 
41
40
  def test_emit_flatten
42
- d1 = d1 = create_driver(%[
41
+ d1 = create_driver(%[
43
42
  @type geoip
44
43
  key_name ip_iddr
45
44
  flatten
46
- ], 'test')
45
+ ])
47
46
  ip_iddr = '93.184.216.34'
48
47
 
49
- d1.run do
50
- d1.emit({'ip_iddr' => ip_iddr})
48
+ d1.run(default_tag: 'test') do
49
+ d1.feed({'ip_iddr' => ip_iddr})
51
50
  end
52
51
 
53
- emits = d1.emits
52
+ emits = d1.filtered
54
53
  assert_equal 1, emits.length
55
- assert_equal 'test', emits[0][0] # tag
56
- geo_object = emits[0][2]
54
+ geo_object = emits[0][1]
57
55
  assert_equal [-70.8228, 42.150800000000004], geo_object['geo_coordinates']
58
56
  assert_equal 'US', geo_object['geo_country_code']
59
57
  assert_equal 'Norwell', geo_object['geo_city']
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fluent-plugin-geoip-filter
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yuri Umezaki
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-01-27 00:00:00.000000000 Z
11
+ date: 2017-11-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: fluentd
@@ -16,14 +16,20 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '0.12'
19
+ version: 0.14.0
20
+ - - "<"
21
+ - !ruby/object:Gem::Version
22
+ version: '2'
20
23
  type: :runtime
21
24
  prerelease: false
22
25
  version_requirements: !ruby/object:Gem::Requirement
23
26
  requirements:
24
27
  - - ">="
25
28
  - !ruby/object:Gem::Version
26
- version: '0.12'
29
+ version: 0.14.0
30
+ - - "<"
31
+ - !ruby/object:Gem::Version
32
+ version: '2'
27
33
  - !ruby/object:Gem::Dependency
28
34
  name: geoip
29
35
  requirement: !ruby/object:Gem::Requirement