test-opensearch 0.0.0.20 → 0.0.24
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.OpenSearchInput.md +3 -3
- data/fluent-plugin-opensearch.gemspec +3 -3
- data/lib/fluent/plugin/in_opensearch.rb +21 -12
- metadata +5 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 735233dd19333067fd99b45dbea9f11e850ffd51fe8f2b1d67314e01c1b1577f
|
4
|
+
data.tar.gz: 6f6ffe333f30cfba27e5f88136dea9fc211fdb1f12210d72f9b63700573b7111
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5ee989c6617a7d5962265b19c1758d566681249f0d91f64c467a0d221e32d37f5f6ffb6215a8ba9f1487bc9df7790d3be2282807191605586544728ec269eed3
|
7
|
+
data.tar.gz: 18931258decedc854123c1ae66bcadb3b73595796f7c2ab60fe4ff3597530084da0e74f525d98f26118db9665b33c1007068090d7daa3e2f0774ba4045d8d83d
|
data/README.OpenSearchInput.md
CHANGED
@@ -322,7 +322,7 @@ retry_max_times 5
|
|
322
322
|
|
323
323
|
The parameter needs for how long need to wait (time in seconds) to retry again:
|
324
324
|
`exponential_backoff`: wait in seconds will become large exponentially per failure,
|
325
|
-
`periodic
|
325
|
+
`periodic`: plugin will retry periodically with fixed intervals (configured via retry_wait). The default value is `:exponential_backoff`
|
326
326
|
Periodic -> fixed :retry_wait
|
327
327
|
Exponential backoff: k is number of retry times
|
328
328
|
c: constant factor, @retry_wait
|
@@ -331,7 +331,7 @@ k: times
|
|
331
331
|
total retry time: c + c * b^1 + (...) + c*b^k = c*b^(k+1) - 1
|
332
332
|
|
333
333
|
```
|
334
|
-
retry_type
|
334
|
+
retry_type exponential_backoff
|
335
335
|
```
|
336
336
|
|
337
337
|
### retry_wait
|
@@ -360,7 +360,7 @@ retry_max_interval nil
|
|
360
360
|
|
361
361
|
### retry_randomize
|
362
362
|
|
363
|
-
The parameter If true, the
|
363
|
+
The parameter If true, the plugin will retry after randomized interval not to do burst retries. The default value is `false`
|
364
364
|
|
365
365
|
```
|
366
366
|
retry_randomize false
|
@@ -3,10 +3,10 @@ $:.push File.expand_path('../lib', __FILE__)
|
|
3
3
|
|
4
4
|
Gem::Specification.new do |s|
|
5
5
|
s.name = 'test-opensearch'
|
6
|
-
s.version = '0.0.
|
7
|
-
s.authors = ['
|
6
|
+
s.version = '0.0.24'
|
7
|
+
s.authors = ['imcotop']
|
8
8
|
s.email = ['imcotop@icloud.com']
|
9
|
-
s.description = %q{
|
9
|
+
s.description = %q{Opensearch output plugin for Fluent event collector}
|
10
10
|
s.summary = s.description
|
11
11
|
s.homepage = 'https://github.com/fluent/fluent-plugin-opensearch'
|
12
12
|
s.license = 'Apache-2.0'
|
@@ -110,7 +110,7 @@ module Fluent::Plugin
|
|
110
110
|
|
111
111
|
@timestamp_parser = create_time_parser
|
112
112
|
@backend_options = backend_options
|
113
|
-
@retry =
|
113
|
+
@retry = nil
|
114
114
|
|
115
115
|
raise Fluent::ConfigError, "`password` must be present if `user` is present" if @user && @password.nil?
|
116
116
|
|
@@ -337,6 +337,23 @@ module Fluent::Plugin
|
|
337
337
|
return true
|
338
338
|
end
|
339
339
|
|
340
|
+
def update_retry_state(error=nil)
|
341
|
+
if error
|
342
|
+
unless @retry
|
343
|
+
@retry = retry_state(@retry_randomize)
|
344
|
+
end
|
345
|
+
@retry.step
|
346
|
+
#Raise error if the retry limit has been reached
|
347
|
+
raise "Hit limit for retries. retry_times: #{@retry.steps}, error: #{error.message}" if @retry.limit?
|
348
|
+
#Retry if the limit hasn't been reached
|
349
|
+
log.warn("failed to connect or search.", retry_times: @retry.steps, next_retry_time: @retry.next_time.round, error: error.message)
|
350
|
+
sleep(@retry.next_time - Time.now)
|
351
|
+
else
|
352
|
+
log.debug("retry succeeded.") unless @retry.nil?
|
353
|
+
@retry = nil unless @retry.nil?
|
354
|
+
end
|
355
|
+
end
|
356
|
+
|
340
357
|
def run
|
341
358
|
return run_slice if @num_slices <= 1
|
342
359
|
|
@@ -347,14 +364,8 @@ module Fluent::Plugin
|
|
347
364
|
run_slice(slice_id)
|
348
365
|
end
|
349
366
|
end
|
350
|
-
rescue Faraday::ConnectionFailed, OpenSearch::Transport::Transport::Error =>
|
351
|
-
|
352
|
-
#Raise error if the retry limit has been reached
|
353
|
-
raise "Hit limit for retries. retry_times: #{@retry.limit?}, error: #{e.message}" if @retry.limit?
|
354
|
-
|
355
|
-
#Retry if the retry limit hasn't been reached
|
356
|
-
log.warn("failed to connect or search.", retry_times: @retry.steps, next_retry_time: @retry.next_time.round, error: e.message)
|
357
|
-
sleep(@retry.next_time - Time.now)
|
367
|
+
rescue Faraday::ConnectionFailed, OpenSearch::Transport::Transport::Error => error
|
368
|
+
update_retry_state(error)
|
358
369
|
retry
|
359
370
|
end
|
360
371
|
|
@@ -376,9 +387,7 @@ module Fluent::Plugin
|
|
376
387
|
|
377
388
|
router.emit_stream(@tag, es)
|
378
389
|
clear_scroll(scroll_id)
|
379
|
-
|
380
|
-
@retry.instance_variable_set(:@steps, 0)
|
381
|
-
@retry.instance_variable_set(:@next_time, nil)
|
390
|
+
update_retry_state
|
382
391
|
end
|
383
392
|
|
384
393
|
def clear_scroll(scroll_id)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: test-opensearch
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.24
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
|
-
-
|
7
|
+
- imcotop
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-04-
|
11
|
+
date: 2024-04-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: fluentd
|
@@ -192,7 +192,7 @@ dependencies:
|
|
192
192
|
- - "~>"
|
193
193
|
- !ruby/object:Gem::Version
|
194
194
|
version: '2.0'
|
195
|
-
description:
|
195
|
+
description: Opensearch output plugin for Fluent event collector
|
196
196
|
email:
|
197
197
|
- imcotop@icloud.com
|
198
198
|
executables: []
|
@@ -272,7 +272,7 @@ requirements: []
|
|
272
272
|
rubygems_version: 3.5.7
|
273
273
|
signing_key:
|
274
274
|
specification_version: 4
|
275
|
-
summary:
|
275
|
+
summary: Opensearch output plugin for Fluent event collector
|
276
276
|
test_files:
|
277
277
|
- test/helper.rb
|
278
278
|
- test/plugin/datastream_template.json
|