fluent-plugin-gcloud-metadata 1.0.0 → 1.0.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/README.md +1 -1
- data/fluent-plugin-gcloud-metadata.gemspec +2 -2
- data/lib/fluent/plugin/filter_gcloud_metadata.rb +4 -4
- data/test/plugin/test_filter_gcloud_metadata.rb +17 -14
- metadata +12 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 47ee345230427280907348cc13f19de2d84e0d66
|
4
|
+
data.tar.gz: ab55b3f5088396516edb8a1ca6e8c2e74d8ffbd1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7230502168c622cbfeb21df0cf3fcb796a0ec9bc804ccf21647afe65c5f3b99809624c788efd7fc136e41ecd6c205c24160d28e83759fbed2a009dc62f06a579
|
7
|
+
data.tar.gz: 19fb51a4427ba319eec00556f602bbd96243da8b4c646591604aec587c69cde936c94d9b01b6f4419b9208c568dd93fc0a297c3890049abd7d305130b6ef5213
|
data/README.md
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# Fluentd GoogleCloud Metadata Filter Pluging
|
2
2
|
|
3
|
-
[](https://travis-ci.org/tourstream/fluent-plugin-gcloud-metadata)
|
4
4
|
|
5
5
|
|
6
6
|
The plugin uses the google cloud metadata api in [version1](https://cloud.google.com/compute/docs/storing-retrieving-metadata)
|
@@ -3,7 +3,7 @@ $:.push File.expand_path('../lib', __FILE__)
|
|
3
3
|
|
4
4
|
Gem::Specification.new do |s|
|
5
5
|
s.name = 'fluent-plugin-gcloud-metadata'
|
6
|
-
s.version = '1.0.
|
6
|
+
s.version = '1.0.1'
|
7
7
|
s.authors = ['engerim']
|
8
8
|
s.email = ['alexander.miehe@tourstream.eu']
|
9
9
|
s.description = %q{gcloud metadata filter plugin for Fluent. The Plugin adds gcloud metadata to the record }
|
@@ -18,7 +18,7 @@ Gem::Specification.new do |s|
|
|
18
18
|
|
19
19
|
s.required_ruby_version = Gem::Requirement.new(">= 2.1".freeze)
|
20
20
|
|
21
|
-
s.add_runtime_dependency 'fluentd', '
|
21
|
+
s.add_runtime_dependency 'fluentd', ['>= 0.14.0', '< 2']
|
22
22
|
|
23
23
|
s.add_development_dependency 'rake', '~> 0'
|
24
24
|
s.add_development_dependency 'webmock', '~> 2.3'
|
@@ -1,10 +1,10 @@
|
|
1
|
-
require 'fluent/filter'
|
1
|
+
require 'fluent/plugin/filter'
|
2
2
|
require 'net/http'
|
3
3
|
require 'uri'
|
4
4
|
|
5
|
-
module Fluent
|
5
|
+
module Fluent::Plugin
|
6
6
|
|
7
|
-
class GcloudMetadataFilter <
|
7
|
+
class GcloudMetadataFilter < Filter
|
8
8
|
class ConnectionFailure < StandardError; end
|
9
9
|
Fluent::Plugin.register_filter('gcloud_metadata', self)
|
10
10
|
|
@@ -53,4 +53,4 @@ module Fluent
|
|
53
53
|
end
|
54
54
|
|
55
55
|
end
|
56
|
-
end
|
56
|
+
end
|
@@ -1,6 +1,7 @@
|
|
1
1
|
require_relative '../helper'
|
2
2
|
require 'test/unit'
|
3
3
|
require 'fluent/test'
|
4
|
+
require 'fluent/test/driver/filter'
|
4
5
|
require 'fluent/plugin/filter_gcloud_metadata'
|
5
6
|
require 'vcr'
|
6
7
|
|
@@ -11,7 +12,6 @@ end
|
|
11
12
|
|
12
13
|
|
13
14
|
class TestGcloudMetadataFilter < Test::Unit::TestCase
|
14
|
-
|
15
15
|
def setup
|
16
16
|
Fluent::Test.setup
|
17
17
|
end
|
@@ -23,8 +23,8 @@ class TestGcloudMetadataFilter < Test::Unit::TestCase
|
|
23
23
|
</metadata>
|
24
24
|
]
|
25
25
|
|
26
|
-
def create_driver(conf = CONFIG
|
27
|
-
Fluent::Test::
|
26
|
+
def create_driver(conf = CONFIG)
|
27
|
+
Fluent::Test::Driver::Filter.new(Fluent::Plugin::GcloudMetadataFilter).configure(conf)
|
28
28
|
end
|
29
29
|
|
30
30
|
def test_filter_metadata
|
@@ -33,13 +33,13 @@ class TestGcloudMetadataFilter < Test::Unit::TestCase
|
|
33
33
|
|
34
34
|
d = create_driver
|
35
35
|
VCR.use_cassette('metadata', :allow_unused_http_interactions => false) do
|
36
|
-
d.run do
|
37
|
-
d.
|
36
|
+
d.run(default_tag: "test.input") do
|
37
|
+
d.feed input
|
38
38
|
end
|
39
39
|
end
|
40
40
|
expected = {'message' => 'foobar', 'gce_project' => 'foobar_project', 'environment' => 'testing'}
|
41
41
|
|
42
|
-
assert_equal expected, d.
|
42
|
+
assert_equal expected, d.filtered.map{|e| e.last}.first
|
43
43
|
end
|
44
44
|
|
45
45
|
def test_filter_metadata_with_cache
|
@@ -51,15 +51,18 @@ class TestGcloudMetadataFilter < Test::Unit::TestCase
|
|
51
51
|
|
52
52
|
d = create_driver
|
53
53
|
VCR.use_cassette('metadata', :allow_unused_http_interactions => false) do
|
54
|
-
d.run do
|
54
|
+
d.run(default_tag: "test.input") do
|
55
55
|
inputs.each do |dat|
|
56
|
-
d.
|
56
|
+
d.feed dat
|
57
57
|
end
|
58
58
|
end
|
59
59
|
end
|
60
|
-
expected =
|
60
|
+
expected = [
|
61
|
+
{'message' => 'foobar', 'gce_project' => 'foobar_project', 'environment' => 'testing'},
|
62
|
+
{'message' => 'foobar2', 'gce_project' => 'foobar_project', 'environment' => 'testing'}
|
63
|
+
]
|
61
64
|
|
62
|
-
assert_equal expected, d.
|
65
|
+
assert_equal expected, d.filtered.map{|e| e.last}
|
63
66
|
end
|
64
67
|
|
65
68
|
def test_filter_return_orignal_record_for_error
|
@@ -67,12 +70,12 @@ class TestGcloudMetadataFilter < Test::Unit::TestCase
|
|
67
70
|
input = {'message' => 'foobar'}
|
68
71
|
|
69
72
|
d = create_driver
|
70
|
-
d.run do
|
71
|
-
d.
|
73
|
+
d.run(default_tag: "test.input") do
|
74
|
+
d.feed input
|
72
75
|
end
|
73
76
|
|
74
77
|
expected = {'message' => 'foobar'}
|
75
78
|
|
76
|
-
assert_equal expected, d.
|
79
|
+
assert_equal expected, d.filtered.map{|e| e.last}.first
|
77
80
|
end
|
78
|
-
end
|
81
|
+
end
|
metadata
CHANGED
@@ -1,29 +1,35 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fluent-plugin-gcloud-metadata
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- engerim
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-06-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: fluentd
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - "
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: 0.14.0
|
20
|
+
- - "<"
|
18
21
|
- !ruby/object:Gem::Version
|
19
|
-
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
|
+
- - ">="
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: 0.14.0
|
30
|
+
- - "<"
|
25
31
|
- !ruby/object:Gem::Version
|
26
|
-
version: '
|
32
|
+
version: '2'
|
27
33
|
- !ruby/object:Gem::Dependency
|
28
34
|
name: rake
|
29
35
|
requirement: !ruby/object:Gem::Requirement
|