fluent-plugin-elasticsearch 4.0.4 → 4.0.9
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/.github/workflows/linux.yml +26 -0
- data/.github/workflows/macos.yml +26 -0
- data/.github/workflows/windows.yml +26 -0
- data/.travis.yml +24 -3
- data/Gemfile +3 -1
- data/History.md +25 -0
- data/README.md +90 -27
- data/fluent-plugin-elasticsearch.gemspec +1 -1
- data/gemfiles/Gemfile.elasticsearch.v6 +12 -0
- data/gemfiles/{Gemfile.ilm → Gemfile.without.ilm} +2 -2
- data/lib/fluent/plugin/elasticsearch_index_template.rb +1 -1
- data/lib/fluent/plugin/elasticsearch_tls.rb +3 -3
- data/lib/fluent/plugin/out_elasticsearch.rb +62 -29
- data/lib/fluent/plugin/out_elasticsearch_dynamic.rb +6 -4
- data/test/plugin/test_elasticsearch_error_handler.rb +1 -1
- data/test/plugin/test_elasticsearch_index_lifecycle_management.rb +1 -1
- data/test/plugin/test_elasticsearch_tls.rb +2 -2
- data/test/plugin/test_filter_elasticsearch_genid.rb +1 -1
- data/test/plugin/test_in_elasticsearch.rb +1 -1
- data/test/plugin/test_oj_serializer.rb +19 -0
- data/test/plugin/test_out_elasticsearch.rb +399 -26
- data/test/plugin/test_out_elasticsearch_dynamic.rb +33 -5
- metadata +9 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f76e6d69d85cace43250e57e272d26e492e4ae5d48856306687efc487279dd4d
|
4
|
+
data.tar.gz: c6f583de5857aba3c9a01bdde72e16c851d52cdc07b1151052155356954155ec
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 58003e22128dc44d615351ca0b36bd6bc2495d21b146f08713db6f8cfc77323192c38c841df446f30ec6d0edde89cced9c51a676f523e44d7488444ec9f2e737
|
7
|
+
data.tar.gz: 9b34567bea973a765fb2dbf699dadd26d80fd50b45b7b1179469d60425c67602e3d288f8da25305c089c20eb6daf236b900931ca0abd503d2665a5d6ab153c12
|
@@ -0,0 +1,26 @@
|
|
1
|
+
name: Testing on Ubuntu
|
2
|
+
on:
|
3
|
+
- push
|
4
|
+
- pull_request
|
5
|
+
jobs:
|
6
|
+
build:
|
7
|
+
runs-on: ${{ matrix.os }}
|
8
|
+
strategy:
|
9
|
+
fail-fast: false
|
10
|
+
matrix:
|
11
|
+
ruby: [ '2.4', '2.5', '2.6' ]
|
12
|
+
os:
|
13
|
+
- ubuntu-latest
|
14
|
+
name: Ruby ${{ matrix.ruby }} unit testing on ${{ matrix.os }}
|
15
|
+
steps:
|
16
|
+
- uses: actions/checkout@v2
|
17
|
+
- uses: ruby/setup-ruby@v1
|
18
|
+
with:
|
19
|
+
ruby-version: ${{ matrix.ruby }}
|
20
|
+
- name: unit testing
|
21
|
+
env:
|
22
|
+
CI: true
|
23
|
+
run: |
|
24
|
+
gem install bundler rake
|
25
|
+
bundle install --jobs 4 --retry 3
|
26
|
+
bundle exec rake test
|
@@ -0,0 +1,26 @@
|
|
1
|
+
name: Testing on macOS
|
2
|
+
on:
|
3
|
+
- push
|
4
|
+
- pull_request
|
5
|
+
jobs:
|
6
|
+
build:
|
7
|
+
runs-on: ${{ matrix.os }}
|
8
|
+
strategy:
|
9
|
+
fail-fast: false
|
10
|
+
matrix:
|
11
|
+
ruby: [ '2.4', '2.5', '2.6' ]
|
12
|
+
os:
|
13
|
+
- macOS-latest
|
14
|
+
name: Ruby ${{ matrix.ruby }} unit testing on ${{ matrix.os }}
|
15
|
+
steps:
|
16
|
+
- uses: actions/checkout@v2
|
17
|
+
- uses: ruby/setup-ruby@v1
|
18
|
+
with:
|
19
|
+
ruby-version: ${{ matrix.ruby }}
|
20
|
+
- name: unit testing
|
21
|
+
env:
|
22
|
+
CI: true
|
23
|
+
run: |
|
24
|
+
gem install bundler rake
|
25
|
+
bundle install --jobs 4 --retry 3
|
26
|
+
bundle exec rake test
|
@@ -0,0 +1,26 @@
|
|
1
|
+
name: Testing on Windows
|
2
|
+
on:
|
3
|
+
- push
|
4
|
+
- pull_request
|
5
|
+
jobs:
|
6
|
+
build:
|
7
|
+
runs-on: ${{ matrix.os }}
|
8
|
+
strategy:
|
9
|
+
fail-fast: false
|
10
|
+
matrix:
|
11
|
+
ruby: [ '2.4', '2.5', '2.6' ]
|
12
|
+
os:
|
13
|
+
- windows-latest
|
14
|
+
name: Ruby ${{ matrix.ruby }} unit testing on ${{ matrix.os }}
|
15
|
+
steps:
|
16
|
+
- uses: actions/checkout@v2
|
17
|
+
- uses: ruby/setup-ruby@v1
|
18
|
+
with:
|
19
|
+
ruby-version: ${{ matrix.ruby }}
|
20
|
+
- name: unit testing
|
21
|
+
env:
|
22
|
+
CI: true
|
23
|
+
run: |
|
24
|
+
gem install bundler rake
|
25
|
+
bundle install --jobs 4 --retry 3
|
26
|
+
bundle exec rake test
|
data/.travis.yml
CHANGED
@@ -1,17 +1,39 @@
|
|
1
1
|
language: ruby
|
2
2
|
|
3
|
-
|
3
|
+
jobs:
|
4
4
|
include:
|
5
5
|
- rvm: 2.4.6
|
6
6
|
gemfile: Gemfile
|
7
|
+
os: linux
|
8
|
+
arch: amd64
|
7
9
|
- rvm: 2.5.5
|
8
10
|
gemfile: Gemfile
|
11
|
+
os: linux
|
12
|
+
arch: amd64
|
9
13
|
- rvm: 2.6.3
|
10
|
-
gemfile: gemfiles/Gemfile.ilm
|
14
|
+
gemfile: gemfiles/Gemfile.without.ilm
|
15
|
+
os: linux
|
16
|
+
arch: amd64
|
17
|
+
- rvm: 2.6.3
|
18
|
+
gemfile: gemfiles/Gemfile.elasticsearch.v6
|
19
|
+
os: linux
|
20
|
+
arch: amd64
|
21
|
+
- rvm: 2.6.3
|
22
|
+
gemfile: Gemfile
|
23
|
+
os: linux
|
24
|
+
arch: amd64
|
25
|
+
- rvm: 2.6.3
|
26
|
+
gemfile: Gemfile
|
27
|
+
os: linux
|
28
|
+
arch: arm64
|
11
29
|
- rvm: 2.6.3
|
12
30
|
gemfile: Gemfile
|
31
|
+
os: osx
|
32
|
+
osx_image: xcode11.3
|
13
33
|
- rvm: 2.7.0
|
14
34
|
gemfile: Gemfile
|
35
|
+
os: linux
|
36
|
+
arch: amd64
|
15
37
|
|
16
38
|
gemfile:
|
17
39
|
- Gemfile
|
@@ -20,4 +42,3 @@ before_install:
|
|
20
42
|
- gem update --system=2.7.8
|
21
43
|
|
22
44
|
script: bundle exec rake test
|
23
|
-
sudo: false
|
data/Gemfile
CHANGED
@@ -4,6 +4,8 @@ source 'https://rubygems.org'
|
|
4
4
|
gemspec
|
5
5
|
|
6
6
|
gem 'simplecov', require: false
|
7
|
-
gem 'coveralls', require: false
|
7
|
+
gem 'coveralls', ">= 0.8.0", require: false
|
8
8
|
gem 'strptime', require: false if RUBY_ENGINE == "ruby" && RUBY_VERSION =~ /^2/
|
9
9
|
gem "irb" if RUBY_ENGINE == "ruby" && RUBY_VERSION >= "2.6"
|
10
|
+
gem "elasticsearch-xpack"
|
11
|
+
gem "oj"
|
data/History.md
CHANGED
@@ -2,6 +2,31 @@
|
|
2
2
|
|
3
3
|
### [Unreleased]
|
4
4
|
|
5
|
+
### 4.0.9
|
6
|
+
- Add possibility to configure multiple ILM policies (#753)
|
7
|
+
- Document required permissions (#757)
|
8
|
+
|
9
|
+
### 4.0.8
|
10
|
+
- Handle compressable connection usable state (#743)
|
11
|
+
- Use newer tls protocol versions (#739)
|
12
|
+
- Add GitHub Actions file (#740)
|
13
|
+
|
14
|
+
### 4.0.7
|
15
|
+
- Added http_backend_excon_nonblock config in out_elasticsearch (#733)
|
16
|
+
|
17
|
+
### 4.0.6
|
18
|
+
- Add fallback mechanism for handling to detect es version (#730)
|
19
|
+
- Remove needless section (#728)
|
20
|
+
- Handle exception if index already exists (#727)
|
21
|
+
- Tweak test cases (#726)
|
22
|
+
|
23
|
+
### 4.0.5
|
24
|
+
- add logstash_dateformat as placeholder (#718)
|
25
|
+
- Tweak travis.yml for suppressing validator warnings and add CI for Linux Arm64 architecture and macOS 10.14 (#724)
|
26
|
+
- Elasticsearch ruby v7.5 (#723)
|
27
|
+
- Add Oj serializer testcases for all job (#722)
|
28
|
+
- Update documentation for ILM (#721)
|
29
|
+
|
5
30
|
### 4.0.4
|
6
31
|
- Provide clearing caches timer (#719)
|
7
32
|
|
data/README.md
CHANGED
@@ -45,6 +45,7 @@ Current maintainers: @cosmo0920
|
|
45
45
|
+ [templates](#templates)
|
46
46
|
+ [max_retry_putting_template](#max_retry_putting_template)
|
47
47
|
+ [fail_on_putting_template_retry_exceed](#fail_on_putting_template_retry_exceed)
|
48
|
+
+ [fail_on_detecting_es_version_retry_exceed](#fail_on_detecting_es_version_retry_exceed)
|
48
49
|
+ [max_retry_get_es_version](#max_retry_get_es_version)
|
49
50
|
+ [request_timeout](#request_timeout)
|
50
51
|
+ [reload_connections](#reload_connections)
|
@@ -65,6 +66,7 @@ Current maintainers: @cosmo0920
|
|
65
66
|
+ [content_type](#content_type)
|
66
67
|
+ [include_index_in_url](#include_index_in_url)
|
67
68
|
+ [http_backend](#http_backend)
|
69
|
+
+ [http_backend_excon_nonblock](#http_backend_excon_nonblock)
|
68
70
|
+ [prefer_oj_serializer](#prefer_oj_serializer)
|
69
71
|
+ [compression_level](#compression_level)
|
70
72
|
+ [Client/host certificate options](#clienthost-certificate-options)
|
@@ -91,15 +93,16 @@ Current maintainers: @cosmo0920
|
|
91
93
|
+ [enable_ilm](#enable_ilm)
|
92
94
|
+ [ilm_policy_id](#ilm_policy_id)
|
93
95
|
+ [ilm_policy](#ilm_policy)
|
96
|
+
+ [ilm_policies](#ilm_policies)
|
94
97
|
+ [ilm_policy_overwrite](#ilm_policy_overwrite)
|
95
98
|
+ [truncate_caches_interval](#truncate_caches_interval)
|
96
99
|
* [Configuration - Elasticsearch Input](#configuration---elasticsearch-input)
|
100
|
+
* [Elasticsearch permissions](#elasticsearch-permissions)
|
97
101
|
* [Troubleshooting](#troubleshooting)
|
98
102
|
+ [Cannot send events to elasticsearch](#cannot-send-events-to-elasticsearch)
|
99
103
|
+ [Cannot see detailed failure log](#cannot-see-detailed-failure-log)
|
100
104
|
+ [Cannot connect TLS enabled reverse Proxy](#cannot-connect-tls-enabled-reverse-proxy)
|
101
105
|
+ [Declined logs are resubmitted forever, why?](#declined-logs-are-resubmitted-forever-why)
|
102
|
-
+ [Suggested to increase flush_thread_count, why?](#suggested-to-increase-flush_thread_count-why)
|
103
106
|
+ [Suggested to install typhoeus gem, why?](#suggested-to-install-typhoeus-gem-why)
|
104
107
|
+ [Stopped to send events on k8s, why?](#stopped-to-send-events-on-k8s-why)
|
105
108
|
+ [Random 400 - Rejected by Elasticsearch is occured, why?](#random-400---rejected-by-elasticsearch-is-occured-why)
|
@@ -502,6 +505,23 @@ If you have multiple output plugin, you could use this property to do not fail o
|
|
502
505
|
fail_on_putting_template_retry_exceed false # defaults to true
|
503
506
|
```
|
504
507
|
|
508
|
+
### fail_on_detecting_es_version_retry_exceed
|
509
|
+
|
510
|
+
Indicates whether to fail when `max_retry_get_es_version` is exceeded.
|
511
|
+
If you want to use fallback mechanism for obtaining ELasticsearch version, you could use this property to do not fail on fluentd statup.
|
512
|
+
|
513
|
+
```
|
514
|
+
fail_on_detecting_es_version_retry_exceed false
|
515
|
+
```
|
516
|
+
|
517
|
+
And the following parameters should be working with:
|
518
|
+
|
519
|
+
```
|
520
|
+
verify_es_version_at_startup true
|
521
|
+
max_retry_get_es_version 2 # greater than 0.
|
522
|
+
default_elasticsearch_version 7 # This version is used when occurring fallback.
|
523
|
+
```
|
524
|
+
|
505
525
|
### max_retry_get_es_version
|
506
526
|
|
507
527
|
You can specify times of retry obtaining Elasticsearch version.
|
@@ -799,6 +819,21 @@ Default value is `excon` which is default http_backend of elasticsearch plugin.
|
|
799
819
|
http_backend typhoeus
|
800
820
|
```
|
801
821
|
|
822
|
+
### http_backend_excon_nonblock
|
823
|
+
|
824
|
+
With `http_backend_excon_nonblock false`, elasticsearch plugin use excon with nonblock=false.
|
825
|
+
If you use elasticsearch plugin with jRuby for https, you may need to consider to set `false` to avoid follwoing problems.
|
826
|
+
- https://github.com/geemus/excon/issues/106
|
827
|
+
- https://github.com/jruby/jruby-ossl/issues/19
|
828
|
+
|
829
|
+
But for all other case, it strongly reccomend to set `true` to avoid process hangin problem reported in https://github.com/uken/fluent-plugin-elasticsearch/issues/732
|
830
|
+
|
831
|
+
Default value is `true`.
|
832
|
+
|
833
|
+
```
|
834
|
+
http_backend_excon_nonblock false
|
835
|
+
```
|
836
|
+
|
802
837
|
### compression_level
|
803
838
|
You can add gzip compression of output data. In this case `default_compression`, `best_compression` or `best speed` option should be chosen.
|
804
839
|
By default there is no compression, default value for this option is `no_compression`
|
@@ -848,7 +883,11 @@ ssl_min_version TLSv1_2
|
|
848
883
|
|
849
884
|
Elasticsearch plugin will use TLSv1.2 as minimum ssl version and TLSv1.3 as maximum ssl version on transportation with TLS. Note that when they are used in Elastissearch plugin configuration, *`ssl_version` is not used* to set up TLS version.
|
850
885
|
|
851
|
-
If they are *not* specified in the Elasticsearch plugin configuration,
|
886
|
+
If they are *not* specified in the Elasticsearch plugin configuration, `ssl_max_version` and `ssl_min_version` is set up with:
|
887
|
+
|
888
|
+
In Elasticsearch plugin v4.0.8 or later with Ruby 2.5 or later environment, `ssl_max_version` should be `TLSv1_3` and `ssl_min_version` should be `TLSv1_2`.
|
889
|
+
|
890
|
+
From Elasticsearch plugin v4.0.4 to v4.0.7 with Ruby 2.5 or later environment, the value of `ssl_version` will be *used in `ssl_max_version` and `ssl_min_version`*.
|
852
891
|
|
853
892
|
|
854
893
|
### Proxy Support
|
@@ -1176,6 +1215,14 @@ Default value is `{}`.
|
|
1176
1215
|
|
1177
1216
|
**NOTE:** This parameter requests to install elasticsearch-xpack gem.
|
1178
1217
|
|
1218
|
+
## ilm_policies
|
1219
|
+
|
1220
|
+
A hash in the format `{"ilm_policy_id1":{ <ILM policy 1 hash> }, "ilm_policy_id2": { <ILM policy 2 hash> }}`.
|
1221
|
+
|
1222
|
+
Default value is `{}`.
|
1223
|
+
|
1224
|
+
**NOTE:** This parameter requests to install elasticsearch-xpack gem.
|
1225
|
+
|
1179
1226
|
## ilm_policy_overwrite
|
1180
1227
|
|
1181
1228
|
Specify whether overwriting ilm policy or not.
|
@@ -1196,6 +1243,32 @@ Default value is `nil`.
|
|
1196
1243
|
|
1197
1244
|
See [Elasticsearch Input plugin document](README.ElasticsearchInput.md)
|
1198
1245
|
|
1246
|
+
## Elasticsearch permissions
|
1247
|
+
|
1248
|
+
If the target Elasticsearch requires authentication, a user holding the necessary permissions needs to be provided.
|
1249
|
+
|
1250
|
+
The set of required permissions are the following:
|
1251
|
+
|
1252
|
+
```json
|
1253
|
+
"cluster": ["manage_index_templates", "monitor", "manage_ilm"],
|
1254
|
+
"indices": [
|
1255
|
+
{
|
1256
|
+
"names": [ "*" ],
|
1257
|
+
"privileges": ["write","create","delete","create_index","manage","manage_ilm"]
|
1258
|
+
}
|
1259
|
+
]
|
1260
|
+
```
|
1261
|
+
|
1262
|
+
These permissions can be narrowed down by:
|
1263
|
+
|
1264
|
+
- Setting a more specific pattern for indices under the `names` field
|
1265
|
+
- Removing the `manage_index_templates` cluster permission when not using the feature within your plugin configuration
|
1266
|
+
- Removing the `manage_ilm` cluster permission and the `manage` and `manage_ilm` indices privileges when not using ilm
|
1267
|
+
features in the plugin configuration
|
1268
|
+
|
1269
|
+
The list of privileges along with their description can be found in
|
1270
|
+
[security privileges](https://www.elastic.co/guide/en/elasticsearch/reference/current/security-privileges.html).
|
1271
|
+
|
1199
1272
|
## Troubleshooting
|
1200
1273
|
|
1201
1274
|
### Cannot send events to Elasticsearch
|
@@ -1445,30 +1518,6 @@ The following configuration uses label:
|
|
1445
1518
|
</label>
|
1446
1519
|
```
|
1447
1520
|
|
1448
|
-
### Suggested to increase flush_thread_count, why?
|
1449
|
-
|
1450
|
-
fluent-plugin-elasticsearch default behavior has a possibility to cause events traffic jam.
|
1451
|
-
When users use `flush_thread_count` = 1, ES plugin retries to send events if connection errors are disappeared.
|
1452
|
-
|
1453
|
-
To prevent the following warning and sending events blocking, you must specify `flush_thread_count` >= 2:
|
1454
|
-
|
1455
|
-
```log
|
1456
|
-
2018-12-24 14:32:06 +0900 [warn]: #0 To prevent events traffic jam, you should specify 2 or more 'flush_thread_count'.
|
1457
|
-
```
|
1458
|
-
|
1459
|
-
```aconf
|
1460
|
-
<match out.elasticsearch.**>
|
1461
|
-
@type elasticsearch
|
1462
|
-
host localhost
|
1463
|
-
port 9200
|
1464
|
-
# ...
|
1465
|
-
<buffer tag>
|
1466
|
-
@type memory # or file
|
1467
|
-
flush_thread_count 4
|
1468
|
-
</buffer>
|
1469
|
-
</match>
|
1470
|
-
```
|
1471
|
-
|
1472
1521
|
### Suggested to install typhoeus gem, why?
|
1473
1522
|
|
1474
1523
|
fluent-plugin-elasticsearch doesn't depend on typhoeus gem by default.
|
@@ -1639,17 +1688,31 @@ Main ILM feature parameters are:
|
|
1639
1688
|
* `ilm_policy_id`
|
1640
1689
|
* `ilm_policy`
|
1641
1690
|
|
1691
|
+
* Advanced usage parameters
|
1692
|
+
* `application_name`
|
1693
|
+
* `index_separator`
|
1694
|
+
|
1642
1695
|
They are not all mandatory parameters but they are used for ILM feature in effect.
|
1643
1696
|
|
1644
1697
|
ILM target index alias is created with `index_name` or an index which is calculated from `logstash_prefix`.
|
1645
1698
|
|
1646
1699
|
From Elasticsearch plugin v4.0.0, ILM target index will be calculated from `index_name` (normal mode) or `logstash_prefix` (using with `logstash_format`as true).
|
1647
1700
|
|
1648
|
-
When using `
|
1701
|
+
When using `deflector_alias` parameter, Elasticsearch plugin will create ILM target indices alias with `deflector_alias` instead of `index_name` or an index which is calculated from `logstash_prefix`. This behavior should be kept due to backward ILM feature compatibility.
|
1649
1702
|
|
1650
1703
|
And also, ILM feature users should specify their Elasticsearch template for ILM enabled indices.
|
1651
1704
|
Because ILM settings are injected into their Elasticsearch templates.
|
1652
1705
|
|
1706
|
+
`application_name` and `index_separator` also affect alias index names.
|
1707
|
+
|
1708
|
+
But this parameter is prepared for advanced usage.
|
1709
|
+
|
1710
|
+
It usually should be used with default value which is `default`.
|
1711
|
+
|
1712
|
+
Then, ILM parameters are used in alias index like as:
|
1713
|
+
|
1714
|
+
`<index_name/logstash_prefix><index_separator><application_name>-000001`.
|
1715
|
+
|
1653
1716
|
#### Example ILM settings
|
1654
1717
|
|
1655
1718
|
```aconf
|
@@ -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-elasticsearch'
|
6
|
-
s.version = '4.0.
|
6
|
+
s.version = '4.0.9'
|
7
7
|
s.authors = ['diogo', 'pitr', 'Hiroshi Hatake']
|
8
8
|
s.email = ['pitr.vern@gmail.com', 'me@diogoterror.com', 'cosmo0920.wp@gmail.com']
|
9
9
|
s.description = %q{Elasticsearch output plugin for Fluent event collector}
|
@@ -0,0 +1,12 @@
|
|
1
|
+
source 'https://rubygems.org'
|
2
|
+
|
3
|
+
# Specify your gem's dependencies in fluent-plugin-elasticsearch.gemspec
|
4
|
+
gemspec :path => "../"
|
5
|
+
|
6
|
+
gem 'simplecov', require: false
|
7
|
+
gem 'coveralls', ">= 0.8.0", require: false
|
8
|
+
gem 'strptime', require: false if RUBY_ENGINE == "ruby" && RUBY_VERSION =~ /^2/
|
9
|
+
gem "irb" if RUBY_ENGINE == "ruby" && RUBY_VERSION >= "2.6"
|
10
|
+
gem "elasticsearch", "~> 6.8.1"
|
11
|
+
gem "elasticsearch-xpack"
|
12
|
+
gem "oj"
|
@@ -4,7 +4,7 @@ source 'https://rubygems.org'
|
|
4
4
|
gemspec :path => "../"
|
5
5
|
|
6
6
|
gem 'simplecov', require: false
|
7
|
-
gem 'coveralls', require: false
|
7
|
+
gem 'coveralls', ">= 0.8.0", require: false
|
8
8
|
gem 'strptime', require: false if RUBY_ENGINE == "ruby" && RUBY_VERSION =~ /^2/
|
9
9
|
gem "irb" if RUBY_ENGINE == "ruby" && RUBY_VERSION >= "2.6"
|
10
|
-
gem "
|
10
|
+
gem "oj"
|
@@ -58,7 +58,7 @@ module Fluent::ElasticsearchIndexTemplate
|
|
58
58
|
def indexcreation(index_name, host = nil)
|
59
59
|
client(host).indices.create(:index => index_name)
|
60
60
|
rescue Elasticsearch::Transport::Transport::Error => e
|
61
|
-
if e.message =~ /"already exists"/
|
61
|
+
if e.message =~ /"already exists"/ || e.message =~ /resource_already_exists_exception/
|
62
62
|
log.debug("Index #{index_name} already exists")
|
63
63
|
else
|
64
64
|
log.error("Error while index creation - #{index_name}: #{e.inspect}")
|
@@ -10,7 +10,7 @@ module Fluent::Plugin
|
|
10
10
|
[:SSLv23, :TLSv1, :TLSv1_1, :TLSv1_2].freeze
|
11
11
|
end
|
12
12
|
|
13
|
-
DEFAULT_VERSION = :
|
13
|
+
DEFAULT_VERSION = :TLSv1_2
|
14
14
|
METHODS_MAP = begin
|
15
15
|
# When openssl supports OpenSSL::SSL::TLSXXX constants representations, we use them.
|
16
16
|
map = {
|
@@ -48,8 +48,8 @@ module Fluent::Plugin
|
|
48
48
|
if USE_TLS_MINMAX_VERSION
|
49
49
|
case
|
50
50
|
when ssl_min_version.nil? && ssl_max_version.nil?
|
51
|
-
ssl_min_version = METHODS_MAP[
|
52
|
-
ssl_max_version = METHODS_MAP[
|
51
|
+
ssl_min_version = METHODS_MAP[:TLSv1_2]
|
52
|
+
ssl_max_version = METHODS_MAP[:TLSv1_3]
|
53
53
|
when ssl_min_version && ssl_max_version.nil?
|
54
54
|
raise Fluent::ConfigError, "When you set 'ssl_min_version', must set 'ssl_max_version' together."
|
55
55
|
when ssl_min_version.nil? && ssl_max_version
|