fluent-plugin-kubernetes-objects 1.1.7 → 1.1.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
  SHA256:
3
- metadata.gz: 4be52e5438c7c1f7d8acd231fd0fcba2b6b87001e8956bd12fc63b2c1f423d80
4
- data.tar.gz: 3151c6aeb8cb277d690661e093d36c1682496e28ac3c9879f1e616ce264db4ba
3
+ metadata.gz: 31c2ee4ae02b06ac69811b0df399f70ca9641a0449b6891e715363d0122a2805
4
+ data.tar.gz: 945e7c6459aa6de997e6b578f7205a839c8300c6ab598852bb656e493659e1a3
5
5
  SHA512:
6
- metadata.gz: e92e5dcebe66bbc4f6f47668e6be438d756e9d73764176a0110e738b009d34b007407954696f240b4959df14ac1ad54808a54216368019adef24a020ea4b2e1d
7
- data.tar.gz: 2c430bdc8ff4bff01930121c1542228d642e4adff6bc7e168687da3d6e59a2cc90f856d0796696c28ff445cb25044f066d47220d8916dc1cdbd8602f136bc2c2
6
+ metadata.gz: 6c6c6197b3cfa30a9c12f53de39a49a2b9e6faa17ebb58e89999349df390422e458171d3fcb32207074b3cc3b801df619e188a4a7ef1646e2ef05c26ea26bb1a
7
+ data.tar.gz: 369e596ee739619b78f484ce4611b77726d8acb54b386da5c4f057d699a4aac71f3d47858b57a9f86c655ee10878c80463dab520247d1b556dc1be3de32ce7fd
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- fluent-plugin-kubernetes-objects (1.1.7)
4
+ fluent-plugin-kubernetes-objects (1.1.10)
5
5
  fluentd (>= 1.9.1)
6
6
  http_parser.rb (= 0.5.3)
7
7
  kubeclient (~> 4.6.0)
@@ -18,18 +18,18 @@ GEM
18
18
  docile (1.4.0)
19
19
  domain_name (0.5.20190701)
20
20
  unf (>= 0.0.5, < 1.0.0)
21
- ffi (1.15.3)
21
+ ffi (1.15.5)
22
22
  ffi-compiler (1.0.1)
23
23
  ffi (>= 1.0.0)
24
24
  rake
25
- fluentd (1.13.2)
25
+ fluentd (1.14.4)
26
26
  bundler
27
27
  cool.io (>= 1.4.5, < 2.0.0)
28
- http_parser.rb (>= 0.5.1, < 0.8.0)
28
+ http_parser.rb (>= 0.5.1, < 0.9.0)
29
29
  msgpack (>= 1.3.1, < 2.0.0)
30
30
  serverengine (>= 2.2.2, < 3.0.0)
31
31
  sigdump (~> 0.2.2)
32
- strptime (>= 0.2.2, < 1.0.0)
32
+ strptime (>= 0.2.4, < 1.0.0)
33
33
  tzinfo (>= 1.0, < 3.0)
34
34
  tzinfo-data (~> 1.0)
35
35
  webrick (>= 1.4.2, < 1.8.0)
@@ -51,13 +51,13 @@ GEM
51
51
  http (>= 3.0, < 5.0)
52
52
  recursive-open-struct (~> 1.0, >= 1.0.4)
53
53
  rest-client (~> 2.0)
54
- mime-types (3.3.1)
54
+ mime-types (3.4.1)
55
55
  mime-types-data (~> 3.2015)
56
- mime-types-data (3.2021.0704)
56
+ mime-types-data (3.2022.0105)
57
57
  minitest (5.14.4)
58
- msgpack (1.4.2)
58
+ msgpack (1.4.4)
59
59
  netrc (0.11.0)
60
- power_assert (2.0.0)
60
+ power_assert (2.0.1)
61
61
  public_suffix (4.0.6)
62
62
  rake (13.0.6)
63
63
  recursive-open-struct (1.1.3)
@@ -67,7 +67,7 @@ GEM
67
67
  mime-types (>= 1.16, < 4.0)
68
68
  netrc (~> 0.8)
69
69
  rexml (3.2.5)
70
- serverengine (2.2.4)
70
+ serverengine (2.2.5)
71
71
  sigdump (~> 0.2.2)
72
72
  sigdump (0.2.4)
73
73
  simplecov (0.21.2)
@@ -77,17 +77,17 @@ GEM
77
77
  simplecov-html (0.12.3)
78
78
  simplecov_json_formatter (0.1.3)
79
79
  strptime (0.2.5)
80
- test-unit (3.4.4)
80
+ test-unit (3.5.0)
81
81
  power_assert
82
82
  tzinfo (2.0.4)
83
83
  concurrent-ruby (~> 1.0)
84
- tzinfo-data (1.2021.1)
84
+ tzinfo-data (1.2021.5)
85
85
  tzinfo (>= 1.0.0)
86
86
  unf (0.1.4)
87
87
  unf_ext
88
- unf_ext (0.0.7.7)
89
- webmock (3.13.0)
90
- addressable (>= 2.3.6)
88
+ unf_ext (0.0.8)
89
+ webmock (3.14.0)
90
+ addressable (>= 2.8.0)
91
91
  crack (>= 0.3.2)
92
92
  hashdiff (>= 0.4.0, < 2.0.0)
93
93
  webrick (1.7.0)
@@ -106,4 +106,4 @@ DEPENDENCIES
106
106
  webmock (~> 3.5)
107
107
 
108
108
  BUNDLED WITH
109
- 2.2.24
109
+ 2.3.9
data/README.md CHANGED
@@ -1,4 +1,4 @@
1
- [![CircleCI](https://circleci.com/gh/git-lfs/git-lfs.svg?style=shield&circle-token=856152c2b02bfd236f54d21e1f581f3e4ebf47ad)](https://circleci.com/gh/splunk/fluent-plugin-kubernetes-objects)
1
+
2
2
  # fluent-plugin-kubernetes-objects
3
3
 
4
4
  [Fluentd](https://fluentd.org/) input plugin to collect [objects](https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/) in a kubernetes cluster.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.1.7
1
+ 1.1.10
@@ -200,7 +200,12 @@ module Fluent::Plugin
200
200
  tag = generate_tag resource_name
201
201
  while thread_current_running?
202
202
  log.debug "Going to pull #{resource_name}"
203
- response = @client.public_send "get_#{resource_name}", options
203
+ begin
204
+ response = @client.public_send "get_#{resource_name}", options
205
+ rescue Kubeclient::ResourceNotFoundError, NoMethodError
206
+ log.error "resource '#{resource_name}' not found. Stopped pulling it"
207
+ break
208
+ end
204
209
  now = Fluent::Engine.now
205
210
  es = Fluent::MultiEventStream.new
206
211
 
@@ -243,22 +248,27 @@ module Fluent::Plugin
243
248
 
244
249
  thread_create :"watch_#{resource_name}" do
245
250
  while thread_current_running?
246
- @client.public_send("watch_#{resource_name}", options).tap do |watcher|
247
- tag = generate_tag "#{resource_name}"
248
- begin
249
- watcher.each do |entity|
250
- begin
251
- entity = JSON.parse(entity)
252
- router.emit tag, Fluent::Engine.now, entity
253
- options[:resource_version] = entity['object']['metadata']['resourceVersion']
254
- @storage.put resource_name, entity['object']['metadata']['resourceVersion']
255
- rescue => e
256
- log.info "Got exception #{e} parsing entity #{entity}. Resetting watcher."
251
+ begin
252
+ @client.public_send("watch_#{resource_name}", options).tap do |watcher|
253
+ tag = generate_tag "#{resource_name}"
254
+ begin
255
+ watcher.each do |entity|
256
+ begin
257
+ entity = JSON.parse(entity)
258
+ router.emit tag, Fluent::Engine.now, entity
259
+ options[:resource_version] = entity['object']['metadata']['resourceVersion']
260
+ @storage.put resource_name, entity['object']['metadata']['resourceVersion']
261
+ rescue => e
262
+ log.info "Got exception #{e} parsing entity #{entity}. Resetting watcher."
263
+ end
257
264
  end
265
+ rescue => e
266
+ log.info "Got exception #{e}. Resetting watcher."
258
267
  end
259
- rescue => e
260
- log.info "Got exception #{e}. Resetting watcher."
261
268
  end
269
+ rescue Kubeclient::ResourceNotFoundError, NoMethodError
270
+ log.error "resource '#{resource_name}' not found. Stopped watching it"
271
+ break
262
272
  end
263
273
  end
264
274
  end
@@ -144,5 +144,28 @@ describe Fluent::Plugin::KubernetesObjectsInput do
144
144
  f.unlink
145
145
  end
146
146
  end
147
+ it "checks for invalid pull request" do
148
+ d = create_input_driver(<<~CONF)
149
+ kubernetes_url #{k8s_url}
150
+ <pull>
151
+ resource_name fakeResource
152
+ </pull>
153
+ CONF
154
+
155
+ d.run expect_emits: 0, timeout: 3
156
+
157
+ expect(d.logs.any? { |log| log.include? "resource 'fakeResource' not found." }).must_equal(true)
158
+ end
159
+ it "checks for invalid watch request" do
160
+ d = create_input_driver(<<~CONF)
161
+ kubernetes_url #{k8s_url}
162
+ <watch>
163
+ resource_name fakeResource
164
+ </watch>
165
+ CONF
166
+
167
+ d.run expect_emits: 0, timeout: 3
168
+ expect(d.logs.any? { |log| log.include? "resource 'fakeResource' not found." }).must_equal(true)
169
+ end
147
170
  end
148
171
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fluent-plugin-kubernetes-objects
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.7
4
+ version: 1.1.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Splunk Inc.
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-08-09 00:00:00.000000000 Z
11
+ date: 2022-03-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: fluentd
@@ -152,7 +152,7 @@ homepage: https://github.com/splunk/fluent-plugin-kubernetes-objects
152
152
  licenses:
153
153
  - Apache-2.0
154
154
  metadata: {}
155
- post_install_message:
155
+ post_install_message:
156
156
  rdoc_options: []
157
157
  require_paths:
158
158
  - lib
@@ -168,16 +168,16 @@ required_rubygems_version: !ruby/object:Gem::Requirement
168
168
  version: '0'
169
169
  requirements: []
170
170
  rubygems_version: 3.1.4
171
- signing_key:
171
+ signing_key:
172
172
  specification_version: 4
173
173
  summary: Fluentd Plugin for Kubernetes Objects.
174
174
  test_files:
175
175
  - test/fluent/plugin/in_kubernetes_objects_test.rb
176
- - test/lib/no_webmock/http_lib_adapters/patron_adapter.rb
177
- - test/lib/no_webmock/http_lib_adapters/manticore_adapter.rb
176
+ - test/test_helper.rb
177
+ - test/lib/no_webmock/http_lib_adapters/httpclient_adapter.rb
178
+ - test/lib/no_webmock/http_lib_adapters/excon_adapter.rb
178
179
  - test/lib/no_webmock/http_lib_adapters/em_http_request_adapter.rb
179
180
  - test/lib/no_webmock/http_lib_adapters/typhoeus_hydra_adapter.rb
181
+ - test/lib/no_webmock/http_lib_adapters/manticore_adapter.rb
180
182
  - test/lib/no_webmock/http_lib_adapters/curb_adapter.rb
181
- - test/lib/no_webmock/http_lib_adapters/httpclient_adapter.rb
182
- - test/lib/no_webmock/http_lib_adapters/excon_adapter.rb
183
- - test/test_helper.rb
183
+ - test/lib/no_webmock/http_lib_adapters/patron_adapter.rb