fluent-plugin-elasticsearch 5.0.4 → 5.1.2
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 +1 -1
- data/.github/workflows/macos.yml +1 -1
- data/.github/workflows/windows.yml +1 -1
- data/History.md +16 -0
- data/README.md +14 -2
- data/fluent-plugin-elasticsearch.gemspec +1 -1
- data/lib/fluent/plugin/elasticsearch_error_handler.rb +11 -1
- data/lib/fluent/plugin/elasticsearch_index_template.rb +13 -1
- data/lib/fluent/plugin/out_elasticsearch.rb +2 -2
- data/lib/fluent/plugin/out_elasticsearch_data_stream.rb +84 -49
- data/test/plugin/test_elasticsearch_error_handler.rb +19 -7
- data/test/plugin/test_elasticsearch_fallback_selector.rb +1 -1
- data/test/plugin/test_elasticsearch_index_lifecycle_management.rb +10 -0
- data/test/plugin/test_in_elasticsearch.rb +12 -0
- data/test/plugin/test_out_elasticsearch.rb +224 -17
- data/test/plugin/test_out_elasticsearch_data_stream.rb +423 -98
- data/test/plugin/test_out_elasticsearch_dynamic.rb +100 -5
- metadata +3 -5
- data/.travis.yml +0 -40
- data/appveyor.yml +0 -20
@@ -45,6 +45,10 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
45
45
|
}.configure(conf)
|
46
46
|
end
|
47
47
|
|
48
|
+
def elasticsearch_transport_layer_decoupling?
|
49
|
+
Gem::Version.create(::Elasticsearch::Transport::VERSION) >= Gem::Version.new("7.14.0")
|
50
|
+
end
|
51
|
+
|
48
52
|
def default_type_name
|
49
53
|
Fluent::Plugin::ElasticsearchOutput::DEFAULT_TYPE_NAME
|
50
54
|
end
|
@@ -60,7 +64,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
60
64
|
end
|
61
65
|
|
62
66
|
def stub_elastic_info(url="http://localhost:9200/", version="6.4.2")
|
63
|
-
body ="{\"version\":{\"number\":\"#{version}\"}}"
|
67
|
+
body ="{\"version\":{\"number\":\"#{version}\", \"build_flavor\":\"default\"},\"tagline\" : \"You Know, for Search\"}"
|
64
68
|
stub_request(:get, url).to_return({:status => 200, :body => body, :headers => { 'Content-Type' => 'json' } })
|
65
69
|
end
|
66
70
|
|
@@ -261,7 +265,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
261
265
|
assert_true instance.verify_es_version_at_startup
|
262
266
|
assert_equal Fluent::Plugin::ElasticsearchOutput::DEFAULT_ELASTICSEARCH_VERSION, instance.default_elasticsearch_version
|
263
267
|
assert_false instance.log_es_400_reason
|
264
|
-
assert_equal
|
268
|
+
assert_equal -1, Fluent::Plugin::ElasticsearchOutput::DEFAULT_TARGET_BULK_BYTES
|
265
269
|
assert_false instance.compression
|
266
270
|
assert_equal :no_compression, instance.compression_level
|
267
271
|
assert_true instance.http_backend_excon_nonblock
|
@@ -298,16 +302,25 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
298
302
|
}
|
299
303
|
instance = driver(config).instance
|
300
304
|
|
301
|
-
|
305
|
+
if elasticsearch_transport_layer_decoupling?
|
306
|
+
assert_equal nil, instance.client.transport.transport.options[:transport_options][:headers]["Content-Encoding"]
|
307
|
+
else
|
308
|
+
assert_equal nil, instance.client.transport.options[:transport_options][:headers]["Content-Encoding"]
|
309
|
+
end
|
302
310
|
|
303
311
|
stub_request(:post, "http://localhost:9200/_bulk").
|
304
312
|
to_return(status: 200, body: "", headers: {})
|
313
|
+
stub_elastic_info
|
305
314
|
driver.run(default_tag: 'test') do
|
306
315
|
driver.feed(sample_record)
|
307
316
|
end
|
308
317
|
compressable = instance.compressable_connection
|
309
318
|
|
310
|
-
|
319
|
+
if elasticsearch_transport_layer_decoupling?
|
320
|
+
assert_equal "gzip", instance.client(nil, compressable).transport.transport.options[:transport_options][:headers]["Content-Encoding"]
|
321
|
+
else
|
322
|
+
assert_equal "gzip", instance.client(nil, compressable).transport.options[:transport_options][:headers]["Content-Encoding"]
|
323
|
+
end
|
311
324
|
end
|
312
325
|
|
313
326
|
test 'check compression option is passed to transport' do
|
@@ -318,16 +331,25 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
318
331
|
}
|
319
332
|
instance = driver(config).instance
|
320
333
|
|
321
|
-
|
334
|
+
if elasticsearch_transport_layer_decoupling?
|
335
|
+
assert_equal false, instance.client.transport.transport.options[:compression]
|
336
|
+
else
|
337
|
+
assert_equal false, instance.client.transport.options[:compression]
|
338
|
+
end
|
322
339
|
|
323
340
|
stub_request(:post, "http://localhost:9200/_bulk").
|
324
341
|
to_return(status: 200, body: "", headers: {})
|
342
|
+
stub_elastic_info
|
325
343
|
driver.run(default_tag: 'test') do
|
326
344
|
driver.feed(sample_record)
|
327
345
|
end
|
328
346
|
compressable = instance.compressable_connection
|
329
347
|
|
330
|
-
|
348
|
+
if elasticsearch_transport_layer_decoupling?
|
349
|
+
assert_equal true, instance.client(nil, compressable).transport.transport.options[:compression]
|
350
|
+
else
|
351
|
+
assert_equal true, instance.client(nil, compressable).transport.options[:compression]
|
352
|
+
end
|
331
353
|
end
|
332
354
|
|
333
355
|
test 'check configure cloud_id based client' do
|
@@ -414,7 +436,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
414
436
|
end
|
415
437
|
|
416
438
|
def stub_elastic_info_bad(url="http://localhost:9200/", version="6.4.2")
|
417
|
-
body ="{\"version\":{\"number\":\"#{version}\"}}"
|
439
|
+
body ="{\"version\":{\"number\":\"#{version}\",\"build_flavor\":\"default\"},\"tagline\":\"You Know, for Search\"}"
|
418
440
|
stub_request(:get, url).to_return({:status => 200, :body => body, :headers => { 'Content-Type' => 'text/plain' } })
|
419
441
|
end
|
420
442
|
|
@@ -431,9 +453,15 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
431
453
|
scheme https
|
432
454
|
@log_level info
|
433
455
|
}
|
434
|
-
|
435
|
-
|
436
|
-
|
456
|
+
if elasticsearch_transport_layer_decoupling?
|
457
|
+
assert_raise(NoMethodError) do
|
458
|
+
d = create_driver(config, 7, "\"7.10.1\"")
|
459
|
+
end
|
460
|
+
else
|
461
|
+
d = create_driver(config, 7, "\"7.10.1\"")
|
462
|
+
logs = d.logs
|
463
|
+
assert_logs_include(logs, /can not dig version information. Assuming Elasticsearch 7/)
|
464
|
+
end
|
437
465
|
end
|
438
466
|
end
|
439
467
|
|
@@ -496,6 +524,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
496
524
|
stub_request(:put, "http://localhost:9200/_ilm/policy/logstash-policy").
|
497
525
|
with(body: "{\"policy\":{\"phases\":{\"hot\":{\"actions\":{\"rollover\":{\"max_size\":\"50gb\",\"max_age\":\"30d\"}}}}}}").
|
498
526
|
to_return(status: 200, body: "", headers: {})
|
527
|
+
stub_elastic_info
|
499
528
|
|
500
529
|
assert_nothing_raised {
|
501
530
|
driver(config)
|
@@ -540,6 +569,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
540
569
|
stub_request(:put, "http://localhost:9200/_ilm/policy/logstash-policy").
|
541
570
|
with(body: "{\"policy\":{\"phases\":{\"hot\":{\"actions\":{\"rollover\":{\"max_size\":\"75gb\",\"max_age\":\"50d\"}}}}}}").
|
542
571
|
to_return(status: 200, body: "", headers: {})
|
572
|
+
stub_elastic_info
|
543
573
|
|
544
574
|
assert_nothing_raised {
|
545
575
|
driver(config)
|
@@ -556,6 +586,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
556
586
|
template_file #{template_file}
|
557
587
|
ilm_policy_overwrite true
|
558
588
|
}
|
589
|
+
stub_elastic_info
|
559
590
|
|
560
591
|
assert_raise(Fluent::ConfigError) {
|
561
592
|
driver(config)
|
@@ -938,6 +969,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
938
969
|
stub_request(:get, "https://logs.google.com:777/es//#{endpoint}/logstash").
|
939
970
|
with(basic_auth: ['john', 'doe']).
|
940
971
|
to_return(:status => 200, :body => "", :headers => {})
|
972
|
+
stub_elastic_info("https://logs.google.com:777/es//")
|
941
973
|
|
942
974
|
driver(config)
|
943
975
|
|
@@ -982,6 +1014,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
982
1014
|
stub_request(:put, "https://logs.google.com:777/es//#{endpoint}/logstash").
|
983
1015
|
with(basic_auth: ['john', 'doe']).
|
984
1016
|
to_return(:status => 200, :body => "", :headers => {})
|
1017
|
+
stub_elastic_info("https://logs.google.com:777/es//")
|
985
1018
|
|
986
1019
|
driver(config)
|
987
1020
|
|
@@ -1045,6 +1078,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
1045
1078
|
driver(config)
|
1046
1079
|
|
1047
1080
|
elastic_request = stub_elastic("https://logs.google.com:777/es//_bulk")
|
1081
|
+
stub_elastic_info("https://logs.google.com:777/es//")
|
1048
1082
|
driver.run(default_tag: 'test.template') do
|
1049
1083
|
driver.feed(sample_record)
|
1050
1084
|
end
|
@@ -1110,6 +1144,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
1110
1144
|
with(basic_auth: ['john', 'doe'],
|
1111
1145
|
body: "{\"aliases\":{\"myapp_deflector-test.template\":{\"is_write_index\":true}}}").
|
1112
1146
|
to_return(:status => 200, :body => "", :headers => {})
|
1147
|
+
stub_elastic_info("https://logs.google.com:777/es//")
|
1113
1148
|
|
1114
1149
|
driver(config)
|
1115
1150
|
|
@@ -1220,6 +1255,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
1220
1255
|
with(basic_auth: ['john', 'doe'],
|
1221
1256
|
:body => "{\"policy\":{\"phases\":{\"hot\":{\"actions\":{\"rollover\":{\"max_size\":\"50gb\",\"max_age\":\"30d\"}}}}}}").
|
1222
1257
|
to_return(:status => 200, :body => "", :headers => {})
|
1258
|
+
stub_elastic_info("https://logs.google.com:777/es//")
|
1223
1259
|
|
1224
1260
|
driver(config)
|
1225
1261
|
|
@@ -1306,6 +1342,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
1306
1342
|
with(basic_auth: ['john', 'doe'],
|
1307
1343
|
:body => "{\"policy\":{\"phases\":{\"hot\":{\"actions\":{\"rollover\":{\"max_size\":\"50gb\",\"max_age\":\"30d\"}}}}}}").
|
1308
1344
|
to_return(:status => 200, :body => "", :headers => {})
|
1345
|
+
stub_elastic_info("https://logs.google.com:777/es//")
|
1309
1346
|
|
1310
1347
|
driver(config)
|
1311
1348
|
|
@@ -1397,6 +1434,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
1397
1434
|
with(basic_auth: ['john', 'doe'],
|
1398
1435
|
:body => "{\"policy\":{\"phases\":{\"hot\":{\"actions\":{\"rollover\":{\"max_size\":\"60gb\",\"max_age\":\"45d\"}}}}}}").
|
1399
1436
|
to_return(:status => 200, :body => "", :headers => {})
|
1437
|
+
stub_elastic_info("https://logs.google.com:777/es//")
|
1400
1438
|
|
1401
1439
|
driver(config)
|
1402
1440
|
|
@@ -1505,6 +1543,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
1505
1543
|
with(basic_auth: ['john', 'doe'],
|
1506
1544
|
:body => "{\"policy\":{\"phases\":{\"hot\":{\"actions\":{\"rollover\":{\"max_size\":\"50gb\",\"max_age\":\"30d\"}}}}}}").
|
1507
1545
|
to_return(:status => 200, :body => "", :headers => {})
|
1546
|
+
stub_elastic_info("https://logs.google.com:777/es//")
|
1508
1547
|
|
1509
1548
|
driver(config)
|
1510
1549
|
|
@@ -1589,6 +1628,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
1589
1628
|
with(basic_auth: ['john', 'doe'],
|
1590
1629
|
:body => "{\"policy\":{\"phases\":{\"hot\":{\"actions\":{\"rollover\":{\"max_size\":\"70gb\",\"max_age\":\"30d\"}}}}}}").
|
1591
1630
|
to_return(:status => 200, :body => "", :headers => {})
|
1631
|
+
stub_elastic_info("https://logs.google.com:777/es//")
|
1592
1632
|
|
1593
1633
|
driver(config)
|
1594
1634
|
|
@@ -1673,6 +1713,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
1673
1713
|
with(basic_auth: ['john', 'doe'],
|
1674
1714
|
:body => "{\"policy\":{\"phases\":{\"hot\":{\"actions\":{\"rollover\":{\"max_size\":\"70gb\",\"max_age\":\"30d\"}}}}}}").
|
1675
1715
|
to_return(:status => 200, :body => "", :headers => {})
|
1716
|
+
stub_elastic_info("https://logs.google.com:777/es//")
|
1676
1717
|
|
1677
1718
|
driver(config)
|
1678
1719
|
|
@@ -1764,6 +1805,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
1764
1805
|
with(basic_auth: ['john', 'doe'],
|
1765
1806
|
body: "{\"policy\":{\"phases\":{\"hot\":{\"actions\":{\"rollover\":{\"max_size\":\"70gb\",\"max_age\":\"30d\"}}}}}}").
|
1766
1807
|
to_return(:status => 200, :body => "", :headers => {})
|
1808
|
+
stub_elastic_info("https://logs.google.com:777/es//")
|
1767
1809
|
|
1768
1810
|
driver(config)
|
1769
1811
|
|
@@ -1854,6 +1896,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
1854
1896
|
with(basic_auth: ['john', 'doe'],
|
1855
1897
|
body: "{\"policy\":{\"phases\":{\"hot\":{\"actions\":{\"rollover\":{\"max_size\":\"80gb\",\"max_age\":\"20d\"}}}}}}").
|
1856
1898
|
to_return(:status => 200, :body => "", :headers => {})
|
1899
|
+
stub_elastic_info("https://logs.google.com:777/es//")
|
1857
1900
|
|
1858
1901
|
driver(config)
|
1859
1902
|
|
@@ -1979,6 +2022,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
1979
2022
|
with(basic_auth: ['john', 'doe'],
|
1980
2023
|
:body => "{\"policy\":{\"phases\":{\"hot\":{\"actions\":{\"rollover\":{\"max_size\":\"50gb\",\"max_age\":\"30d\"}}}}}}").
|
1981
2024
|
to_return(:status => 200, :body => "", :headers => {})
|
2025
|
+
stub_elastic_info("https://logs.google.com:777/es//")
|
1982
2026
|
|
1983
2027
|
driver(config)
|
1984
2028
|
|
@@ -2075,6 +2119,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
2075
2119
|
with(basic_auth: ['john', 'doe'],
|
2076
2120
|
:body => "{\"policy\":{\"phases\":{\"hot\":{\"actions\":{\"rollover\":{\"max_size\":\"50gb\",\"max_age\":\"30d\"}}}}}}").
|
2077
2121
|
to_return(:status => 200, :body => "", :headers => {})
|
2122
|
+
stub_elastic_info("https://logs.google.com:777/es//")
|
2078
2123
|
|
2079
2124
|
driver(config)
|
2080
2125
|
|
@@ -2171,6 +2216,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
2171
2216
|
with(basic_auth: ['john', 'doe'],
|
2172
2217
|
:body => "{\"policy\":{\"phases\":{\"hot\":{\"actions\":{\"rollover\":{\"max_size\":\"50gb\",\"max_age\":\"30d\"}}}}}}").
|
2173
2218
|
to_return(:status => 200, :body => "", :headers => {})
|
2219
|
+
stub_elastic_info("https://logs.google.com:777/es//")
|
2174
2220
|
|
2175
2221
|
driver(config)
|
2176
2222
|
|
@@ -2226,6 +2272,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
2226
2272
|
stub_request(:put, "https://logs.google.com:777/es//#{endpoint}/myapp_alias_template").
|
2227
2273
|
with(basic_auth: ['john', 'doe']).
|
2228
2274
|
to_return(:status => 200, :body => "", :headers => {})
|
2275
|
+
stub_elastic_info("https://logs.google.com:777/es//")
|
2229
2276
|
|
2230
2277
|
driver(config)
|
2231
2278
|
|
@@ -2278,6 +2325,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
2278
2325
|
driver(config)
|
2279
2326
|
|
2280
2327
|
stub_elastic("https://logs.google.com:777/es//_bulk")
|
2328
|
+
stub_elastic_info("https://logs.google.com:777/es//")
|
2281
2329
|
driver.run(default_tag: 'test.template') do
|
2282
2330
|
driver.feed(sample_record)
|
2283
2331
|
end
|
@@ -2329,6 +2377,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
2329
2377
|
driver(config)
|
2330
2378
|
|
2331
2379
|
stub_elastic("https://logs-test.google.com:777/es//_bulk")
|
2380
|
+
stub_elastic_info("https://logs-test.google.com:777/es//")
|
2332
2381
|
driver.run(default_tag: 'test') do
|
2333
2382
|
driver.feed(sample_record)
|
2334
2383
|
end
|
@@ -2389,6 +2438,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
2389
2438
|
stub_request(:put, "https://logs.google.com:777/es//%3Cmylogs-myapp-%7Bnow%2Fw%7Bxxxx.ww%7D%7D-000001%3E/#{alias_endpoint}/mylogs").
|
2390
2439
|
with(basic_auth: ['john', 'doe']).
|
2391
2440
|
to_return(:status => 200, :body => "", :headers => {})
|
2441
|
+
stub_elastic_info("https://logs.google.com:777/es//")
|
2392
2442
|
|
2393
2443
|
driver(config)
|
2394
2444
|
|
@@ -2451,6 +2501,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
2451
2501
|
stub_request(:put, "https://logs.google.com:777/es//%3Cmylogs-myapp-%7Bnow%2Fw%7Bxxxx.ww%7D%7D-000001%3E/#{alias_endpoint}/myapp_deflector").
|
2452
2502
|
with(basic_auth: ['john', 'doe']).
|
2453
2503
|
to_return(:status => 200, :body => "", :headers => {})
|
2504
|
+
stub_elastic_info("https://logs.google.com:777/es//")
|
2454
2505
|
|
2455
2506
|
driver(config)
|
2456
2507
|
|
@@ -2519,6 +2570,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
2519
2570
|
driver(config)
|
2520
2571
|
|
2521
2572
|
elastic_request = stub_elastic("https://logs.google.com:777/es//_bulk")
|
2573
|
+
stub_elastic_info("https://logs.google.com:777/es//")
|
2522
2574
|
driver.run(default_tag: 'custom-test') do
|
2523
2575
|
driver.feed(sample_record)
|
2524
2576
|
end
|
@@ -2618,7 +2670,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
2618
2670
|
with(basic_auth: ['john', 'doe'],
|
2619
2671
|
:body => "{\"policy\":{\"phases\":{\"hot\":{\"actions\":{\"rollover\":{\"max_size\":\"50gb\",\"max_age\":\"30d\"}}}}}}").
|
2620
2672
|
to_return(:status => 200, :body => "", :headers => {})
|
2621
|
-
|
2673
|
+
stub_elastic_info("https://logs.google.com:777/es//")
|
2622
2674
|
driver(config)
|
2623
2675
|
|
2624
2676
|
assert_requested(:put, "https://logs.google.com:777/es//#{endpoint}/mylogs", times: 1)
|
@@ -2707,6 +2759,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
2707
2759
|
with(basic_auth: ['john', 'doe'],
|
2708
2760
|
:body => "{\"policy\":{\"phases\":{\"hot\":{\"actions\":{\"rollover\":{\"max_size\":\"60gb\",\"max_age\":\"45d\"}}}}}}").
|
2709
2761
|
to_return(:status => 200, :body => "", :headers => {})
|
2762
|
+
stub_elastic_info("https://logs.google.com:777/es//")
|
2710
2763
|
|
2711
2764
|
driver(config)
|
2712
2765
|
|
@@ -2736,6 +2789,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
2736
2789
|
}
|
2737
2790
|
|
2738
2791
|
# Should raise error because multiple alias indices IllegalArgument Error on executing ILM feature
|
2792
|
+
stub_elastic_info("https://logs.google.com:777/es//")
|
2739
2793
|
assert_raise(Fluent::ConfigError) do
|
2740
2794
|
driver(config)
|
2741
2795
|
end
|
@@ -2871,6 +2925,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
2871
2925
|
with(basic_auth: ['john', 'doe'],
|
2872
2926
|
:body => "{\"policy\":{\"phases\":{\"hot\":{\"actions\":{\"rollover\":{\"max_size\":\"50gb\",\"max_age\":\"30d\"}}}}}}").
|
2873
2927
|
to_return(:status => 200, :body => "", :headers => {})
|
2928
|
+
stub_elastic_info("https://logs.google.com:777/es//")
|
2874
2929
|
|
2875
2930
|
driver(config)
|
2876
2931
|
|
@@ -2961,7 +3016,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
2961
3016
|
with(basic_auth: ['john', 'doe'],
|
2962
3017
|
:body => "{\"policy\":{\"phases\":{\"hot\":{\"actions\":{\"rollover\":{\"max_size\":\"70gb\",\"max_age\":\"30d\"}}}}}}").
|
2963
3018
|
to_return(:status => 200, :body => "", :headers => {})
|
2964
|
-
|
3019
|
+
stub_elastic_info("https://logs.google.com:777/es//")
|
2965
3020
|
driver(config)
|
2966
3021
|
|
2967
3022
|
assert_requested(:put, "https://logs.google.com:777/es//#{endpoint}/mylogs", times: 1)
|
@@ -3007,6 +3062,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
3007
3062
|
stub_request(:put, "https://logs.google.com:777/es//#{endpoint}/logstash").
|
3008
3063
|
with(basic_auth: ['john', 'doe']).
|
3009
3064
|
to_return(:status => 200, :body => "", :headers => {})
|
3065
|
+
stub_elastic_info("https://logs.google.com:777/es//")
|
3010
3066
|
|
3011
3067
|
driver(config)
|
3012
3068
|
|
@@ -3053,6 +3109,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
3053
3109
|
stub_request(:put, "https://logs.google.com:777/es//#{endpoint}/myapp_alias_template").
|
3054
3110
|
with(basic_auth: ['john', 'doe']).
|
3055
3111
|
to_return(:status => 200, :body => "", :headers => {})
|
3112
|
+
stub_elastic_info("https://logs.google.com:777/es//")
|
3056
3113
|
|
3057
3114
|
driver(config)
|
3058
3115
|
|
@@ -3115,6 +3172,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
3115
3172
|
stub_request(:put, "https://logs.google.com:777/es//%3Cmylogs-myapp-%7Bnow%2Fd%7D-000001%3E/#{alias_endpoint}/myapp_deflector").
|
3116
3173
|
with(basic_auth: ['john', 'doe']).
|
3117
3174
|
to_return(:status => 200, :body => "", :headers => {})
|
3175
|
+
stub_elastic_info("https://logs.google.com:777/es//")
|
3118
3176
|
|
3119
3177
|
driver(config)
|
3120
3178
|
|
@@ -3141,7 +3199,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
3141
3199
|
stub_request(:get, "https://logs.google.com:777/es//_template/logstash").
|
3142
3200
|
with(basic_auth: ['john', 'doe']).
|
3143
3201
|
to_return(:status => 404, :body => "", :headers => {})
|
3144
|
-
|
3202
|
+
stub_elastic_info("https://logs.google.com:777/es//")
|
3145
3203
|
|
3146
3204
|
assert_raise(RuntimeError) {
|
3147
3205
|
driver(config)
|
@@ -3193,7 +3251,8 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
3193
3251
|
|
3194
3252
|
driver(config)
|
3195
3253
|
|
3196
|
-
stub_elastic("https://logs.google.com:777/es//_bulk")
|
3254
|
+
stub_elastic("https://logs-test.google.com:777/es//_bulk")
|
3255
|
+
stub_elastic_info("https://logs-test.google.com:777/es//")
|
3197
3256
|
driver.run(default_tag: 'test') do
|
3198
3257
|
driver.feed(sample_record)
|
3199
3258
|
end
|
@@ -3233,6 +3292,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
3233
3292
|
connection_resets += 1
|
3234
3293
|
raise Faraday::ConnectionFailed, "Test message"
|
3235
3294
|
end
|
3295
|
+
stub_elastic_info("https://logs.google.com:778/es//")
|
3236
3296
|
|
3237
3297
|
assert_raise(Fluent::Plugin::ElasticsearchError::RetryableOperationExhaustedFailure) do
|
3238
3298
|
driver(config)
|
@@ -3274,6 +3334,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
3274
3334
|
retries += 1
|
3275
3335
|
raise error
|
3276
3336
|
end
|
3337
|
+
stub_elastic_info("https://logs.google.com:778/es//")
|
3277
3338
|
|
3278
3339
|
assert_raise(Fluent::Plugin::ElasticsearchError::RetryableOperationExhaustedFailure) do
|
3279
3340
|
driver(config)
|
@@ -3317,6 +3378,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
3317
3378
|
connection_resets += 1
|
3318
3379
|
raise Faraday::ConnectionFailed, "Test message"
|
3319
3380
|
end
|
3381
|
+
stub_elastic_info("https://logs.google.com:778/es//")
|
3320
3382
|
|
3321
3383
|
driver(config)
|
3322
3384
|
|
@@ -3372,6 +3434,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
3372
3434
|
stub_request(:put, "https://logs.google.com:777/es//#{endpoint}/logstash3").
|
3373
3435
|
with(basic_auth: ['john', 'doe']).
|
3374
3436
|
to_return(:status => 200, :body => "", :headers => {})
|
3437
|
+
stub_elastic_info("https://logs.google.com:777/es//")
|
3375
3438
|
|
3376
3439
|
driver(config)
|
3377
3440
|
|
@@ -3429,6 +3492,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
3429
3492
|
stub_request(:put, "https://logs.google.com:777/es//#{endpoint}/logstash3").
|
3430
3493
|
with(basic_auth: ['john', 'doe']).
|
3431
3494
|
to_return(:status => 200, :body => "", :headers => {})
|
3495
|
+
stub_elastic_info("https://logs.google.com:777/es//")
|
3432
3496
|
|
3433
3497
|
driver(config)
|
3434
3498
|
|
@@ -3487,6 +3551,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
3487
3551
|
stub_request(:put, "https://logs.google.com:777/es//#{endpoint}/logstash2").
|
3488
3552
|
with(basic_auth: ['john', 'doe']).
|
3489
3553
|
to_return(:status => 200, :body => "", :headers => {})
|
3554
|
+
stub_elastic_info("https://logs.google.com:777/es//")
|
3490
3555
|
|
3491
3556
|
driver(config)
|
3492
3557
|
|
@@ -3537,6 +3602,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
3537
3602
|
stub_request(:put, "https://logs.google.com:777/es//#{endpoint}/logstash2").
|
3538
3603
|
with(basic_auth: ['john', 'doe']).
|
3539
3604
|
to_return(:status => 200, :body => "", :headers => {})
|
3605
|
+
stub_elastic_info("https://logs.google.com:777/es//")
|
3540
3606
|
|
3541
3607
|
assert_raise(RuntimeError) {
|
3542
3608
|
driver(config)
|
@@ -3553,6 +3619,9 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
3553
3619
|
path /es/
|
3554
3620
|
port 123
|
3555
3621
|
}
|
3622
|
+
stub_elastic_info("https://host1:50")
|
3623
|
+
stub_elastic_info("https://host2:100")
|
3624
|
+
stub_elastic_info("https://host3:123")
|
3556
3625
|
instance = driver(config).instance
|
3557
3626
|
|
3558
3627
|
assert_equal 3, instance.get_connection_options[:hosts].length
|
@@ -3575,6 +3644,8 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
3575
3644
|
user default_user
|
3576
3645
|
password default_password
|
3577
3646
|
}
|
3647
|
+
stub_elastic_info("https://john:password@host1:443/elastic/")
|
3648
|
+
stub_elastic_info("http://host2")
|
3578
3649
|
instance = driver(config).instance
|
3579
3650
|
|
3580
3651
|
assert_equal 2, instance.get_connection_options[:hosts].length
|
@@ -3601,6 +3672,9 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
3601
3672
|
user default_user
|
3602
3673
|
password default_password
|
3603
3674
|
}
|
3675
|
+
stub_elastic_info("https://j%2Bhn:passw%40rd@host1:443/elastic/")
|
3676
|
+
stub_elastic_info("http://host2")
|
3677
|
+
|
3604
3678
|
instance = driver(config).instance
|
3605
3679
|
|
3606
3680
|
assert_equal 2, instance.get_connection_options[:hosts].length
|
@@ -3801,6 +3875,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
3801
3875
|
elastic_request = stub_request(:post, "http://localhost:9200/_bulk").
|
3802
3876
|
with(headers: { "Content-Type" => "application/json" })
|
3803
3877
|
end
|
3878
|
+
stub_elastic_info
|
3804
3879
|
driver.run(default_tag: 'test') do
|
3805
3880
|
driver.feed(sample_record)
|
3806
3881
|
end
|
@@ -3812,6 +3887,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
3812
3887
|
to_return(:status => 200, :body => "", :headers => {})
|
3813
3888
|
elastic_request = stub_request(:post, "http://localhost:9200/_bulk").
|
3814
3889
|
with(headers: {'custom' => 'header1','and_others' => 'header2' })
|
3890
|
+
stub_elastic_info
|
3815
3891
|
driver.configure(%[custom_headers {"custom":"header1", "and_others":"header2"}])
|
3816
3892
|
driver.run(default_tag: 'test') do
|
3817
3893
|
driver.feed(sample_record)
|
@@ -3824,6 +3900,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
3824
3900
|
to_return(:status => 200, :body => "", :headers => {})
|
3825
3901
|
elastic_request = stub_request(:post, "http://localhost:9200/_bulk").
|
3826
3902
|
with(headers: {'Authorization'=>'ApiKey dGVzdGF1dGhoZWFkZXI='})
|
3903
|
+
stub_elastic_info
|
3827
3904
|
driver.configure(%[api_key testauthheader])
|
3828
3905
|
driver.run(default_tag: 'test') do
|
3829
3906
|
driver.feed(sample_record)
|
@@ -3834,6 +3911,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
3834
3911
|
def test_write_message_with_bad_chunk
|
3835
3912
|
driver.configure("target_index_key bad_value\n@log_level debug\n")
|
3836
3913
|
stub_elastic
|
3914
|
+
stub_elastic_info
|
3837
3915
|
driver.run(default_tag: 'test') do
|
3838
3916
|
driver.feed({'bad_value'=>"\255"})
|
3839
3917
|
end
|
@@ -3849,6 +3927,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
3849
3927
|
def test_writes_to_default_index(data)
|
3850
3928
|
version, index_name = data
|
3851
3929
|
stub_elastic
|
3930
|
+
stub_elastic_info
|
3852
3931
|
driver("", version)
|
3853
3932
|
driver.run(default_tag: 'test') do
|
3854
3933
|
driver.feed(sample_record)
|
@@ -3890,6 +3969,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
3890
3969
|
|
3891
3970
|
elastic_request = stub_request(:post, "http://localhost:9200/_bulk").
|
3892
3971
|
to_return(:status => 200, :headers => {'Content-Type' => 'Application/json'}, :body => compressed_body)
|
3972
|
+
stub_elastic_info("http://localhost:9200/")
|
3893
3973
|
|
3894
3974
|
driver(config)
|
3895
3975
|
driver.run(default_tag: 'test') do
|
@@ -3906,6 +3986,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
3906
3986
|
def test_writes_to_default_type(data)
|
3907
3987
|
version, index_type = data
|
3908
3988
|
stub_elastic
|
3989
|
+
stub_elastic_info
|
3909
3990
|
driver("", version)
|
3910
3991
|
driver.run(default_tag: 'test') do
|
3911
3992
|
driver.feed(sample_record)
|
@@ -3916,6 +3997,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
3916
3997
|
def test_writes_to_speficied_index
|
3917
3998
|
driver.configure("index_name myindex\n")
|
3918
3999
|
stub_elastic
|
4000
|
+
stub_elastic_info
|
3919
4001
|
driver.run(default_tag: 'test') do
|
3920
4002
|
driver.feed(sample_record)
|
3921
4003
|
end
|
@@ -3935,6 +4017,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
3935
4017
|
]
|
3936
4018
|
))
|
3937
4019
|
request = stub_elastic
|
4020
|
+
stub_elastic_info
|
3938
4021
|
driver.run(default_tag: 'test') do
|
3939
4022
|
driver.feed(sample_record('huge_record' => ("a" * 20 * 1024 * 1024)))
|
3940
4023
|
driver.feed(sample_record('huge_record' => ("a" * 20 * 1024 * 1024)))
|
@@ -3959,6 +4042,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
3959
4042
|
body: /{"index":{"_index":"fluentd","_type":"fluentd"}}\n{"age":26,"request_id":"42","parent_id":"parent","routing_id":"routing","#{chunk_id_key}":".*"}\n/) do |req|
|
3960
4043
|
@index_cmds = req.body.split("\n").map {|r| JSON.parse(r) }
|
3961
4044
|
end
|
4045
|
+
stub_elastic_info
|
3962
4046
|
driver.run(default_tag: 'test', shutdown: false) do
|
3963
4047
|
driver.feed(sample_record)
|
3964
4048
|
end
|
@@ -3988,6 +4072,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
3988
4072
|
]
|
3989
4073
|
))
|
3990
4074
|
request = stub_elastic
|
4075
|
+
stub_elastic_info
|
3991
4076
|
driver.run(default_tag: 'test') do
|
3992
4077
|
driver.feed(sample_record('huge_record' => ("a" * 20 * 1024 * 1024)))
|
3993
4078
|
driver.feed(sample_record('huge_record' => ("a" * 20 * 1024 * 1024)))
|
@@ -4000,6 +4085,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4000
4085
|
def test_writes_to_speficied_index_with_tag_placeholder
|
4001
4086
|
driver.configure("index_name myindex.${tag}\n")
|
4002
4087
|
stub_elastic
|
4088
|
+
stub_elastic_info
|
4003
4089
|
driver.run(default_tag: 'test') do
|
4004
4090
|
driver.feed(sample_record)
|
4005
4091
|
end
|
@@ -4019,6 +4105,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4019
4105
|
]
|
4020
4106
|
))
|
4021
4107
|
stub_elastic
|
4108
|
+
stub_elastic_info
|
4022
4109
|
time = Time.parse Date.today.iso8601
|
4023
4110
|
driver.run(default_tag: 'test') do
|
4024
4111
|
driver.feed(time.to_i, sample_record)
|
@@ -4039,6 +4126,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4039
4126
|
pipeline_id = "mypipeline"
|
4040
4127
|
logstash_index = "myindex.#{pipeline_id}"
|
4041
4128
|
stub_elastic
|
4129
|
+
stub_elastic_info
|
4042
4130
|
driver.run(default_tag: 'test') do
|
4043
4131
|
driver.feed(time.to_i, sample_record.merge({"pipeline_id" => pipeline_id}))
|
4044
4132
|
end
|
@@ -4049,6 +4137,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4049
4137
|
def test_writes_to_speficied_index_uppercase
|
4050
4138
|
driver.configure("index_name MyIndex\n")
|
4051
4139
|
stub_elastic
|
4140
|
+
stub_elastic_info
|
4052
4141
|
driver.run(default_tag: 'test') do
|
4053
4142
|
driver.feed(sample_record)
|
4054
4143
|
end
|
@@ -4060,6 +4149,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4060
4149
|
def test_writes_to_target_index_key
|
4061
4150
|
driver.configure("target_index_key @target_index\n")
|
4062
4151
|
stub_elastic
|
4152
|
+
stub_elastic_info
|
4063
4153
|
record = sample_record.clone
|
4064
4154
|
driver.run(default_tag: 'test') do
|
4065
4155
|
driver.feed(sample_record.merge('@target_index' => 'local-override'))
|
@@ -4073,17 +4163,19 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4073
4163
|
logstash_format true")
|
4074
4164
|
time = Time.parse Date.today.iso8601
|
4075
4165
|
stub_elastic
|
4166
|
+
stub_elastic_info
|
4076
4167
|
driver.run(default_tag: 'test') do
|
4077
4168
|
driver.feed(time.to_i, sample_record.merge('@target_index' => 'local-override'))
|
4078
4169
|
end
|
4079
4170
|
assert_equal('local-override', index_cmds.first['index']['_index'])
|
4080
4171
|
end
|
4081
4172
|
|
4082
|
-
|
4173
|
+
def test_writes_to_target_index_key_logstash_uppercase
|
4083
4174
|
driver.configure("target_index_key @target_index
|
4084
4175
|
logstash_format true")
|
4085
4176
|
time = Time.parse Date.today.iso8601
|
4086
4177
|
stub_elastic
|
4178
|
+
stub_elastic_info
|
4087
4179
|
driver.run(default_tag: 'test') do
|
4088
4180
|
driver.feed(time.to_i, sample_record.merge('@target_index' => 'LOCAL-OVERRIDE'))
|
4089
4181
|
end
|
@@ -4096,6 +4188,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4096
4188
|
pipeline = "fluentd"
|
4097
4189
|
driver.configure("pipeline #{pipeline}")
|
4098
4190
|
stub_elastic
|
4191
|
+
stub_elastic_info
|
4099
4192
|
driver.run(default_tag: 'test') do
|
4100
4193
|
driver.feed(sample_record)
|
4101
4194
|
end
|
@@ -4192,6 +4285,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4192
4285
|
ids = [my_id_value]
|
4193
4286
|
indices = ["logstash-2021.04.28"]
|
4194
4287
|
stub_elastic
|
4288
|
+
stub_elastic_info
|
4195
4289
|
stub_elastic_affinity_target_index_search(ids, indices)
|
4196
4290
|
driver.run(default_tag: 'test') do
|
4197
4291
|
driver.feed(sample_record('my_id' => my_id_value))
|
@@ -4209,6 +4303,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4209
4303
|
ids = [my_id_value]
|
4210
4304
|
indices = ["logstash-2021.04.28"]
|
4211
4305
|
stub_elastic
|
4306
|
+
stub_elastic_info
|
4212
4307
|
stub_elastic_affinity_target_index_search(ids, indices)
|
4213
4308
|
driver.run(default_tag: 'test') do
|
4214
4309
|
driver.feed(sample_record('my_id' => my_id_value))
|
@@ -4225,6 +4320,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4225
4320
|
my_id_value = "3408a2c8eecd4fbfb82e45012b54fa82"
|
4226
4321
|
ids = [my_id_value]
|
4227
4322
|
stub_elastic
|
4323
|
+
stub_elastic_info
|
4228
4324
|
stub_elastic_affinity_target_index_search_return_empty(ids)
|
4229
4325
|
time = Time.parse Date.today.iso8601
|
4230
4326
|
driver.run(default_tag: 'test') do
|
@@ -4243,6 +4339,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4243
4339
|
my_id_value2 = "3408a2c8eecd4fbfb82e45012b54fa82"
|
4244
4340
|
ids = [my_id_value, my_id_value2]
|
4245
4341
|
indices = ["logstash-2021.04.29", "logstash-2021.04.28"]
|
4342
|
+
stub_elastic_info
|
4246
4343
|
stub_elastic_all_requests
|
4247
4344
|
stub_elastic_affinity_target_index_search(ids, indices)
|
4248
4345
|
driver.run(default_tag: 'test') do
|
@@ -4268,6 +4365,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4268
4365
|
# Simulate the used sorting here, as search sorts indices in DESC order to pick only oldest index per single _id
|
4269
4366
|
indices = ["logstash-2021.04.29", "logstash-2021.04.28"]
|
4270
4367
|
|
4368
|
+
stub_elastic_info
|
4271
4369
|
stub_elastic_all_requests
|
4272
4370
|
stub_elastic_affinity_target_index_search(ids, indices)
|
4273
4371
|
driver.run(default_tag: 'test') do
|
@@ -4286,6 +4384,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4286
4384
|
pipeline = "fluentd-${tag}"
|
4287
4385
|
driver.configure("pipeline #{pipeline}")
|
4288
4386
|
stub_elastic
|
4387
|
+
stub_elastic_info
|
4289
4388
|
driver.run(default_tag: 'test.builtin.placeholder') do
|
4290
4389
|
driver.feed(sample_record)
|
4291
4390
|
end
|
@@ -4307,6 +4406,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4307
4406
|
time = Time.parse Date.today.iso8601
|
4308
4407
|
pipeline = "fluentd-#{time.getutc.strftime("%Y%m%d")}"
|
4309
4408
|
stub_elastic
|
4409
|
+
stub_elastic_info
|
4310
4410
|
driver.run(default_tag: 'test') do
|
4311
4411
|
driver.feed(time.to_i, sample_record)
|
4312
4412
|
end
|
@@ -4326,6 +4426,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4326
4426
|
pipeline_id = "mypipeline"
|
4327
4427
|
logstash_index = "fluentd-#{pipeline_id}"
|
4328
4428
|
stub_elastic
|
4429
|
+
stub_elastic_info
|
4329
4430
|
driver.run(default_tag: 'test') do
|
4330
4431
|
driver.feed(time.to_i, sample_record.merge({"pipeline_id" => pipeline_id}))
|
4331
4432
|
end
|
@@ -4336,6 +4437,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4336
4437
|
def test_writes_to_target_index_key_fallack
|
4337
4438
|
driver.configure("target_index_key @target_index\n")
|
4338
4439
|
stub_elastic
|
4440
|
+
stub_elastic_info
|
4339
4441
|
driver.run(default_tag: 'test') do
|
4340
4442
|
driver.feed(sample_record)
|
4341
4443
|
end
|
@@ -4348,6 +4450,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4348
4450
|
time = Time.parse Date.today.iso8601
|
4349
4451
|
logstash_index = "logstash-#{time.getutc.strftime("%Y.%m.%d")}"
|
4350
4452
|
stub_elastic
|
4453
|
+
stub_elastic_info
|
4351
4454
|
driver.run(default_tag: 'test') do
|
4352
4455
|
driver.feed(time.to_i, sample_record)
|
4353
4456
|
end
|
@@ -4361,6 +4464,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4361
4464
|
def test_writes_to_speficied_type(data)
|
4362
4465
|
driver('', data["es_version"]).configure("type_name mytype\n")
|
4363
4466
|
stub_elastic
|
4467
|
+
stub_elastic_info
|
4364
4468
|
driver.run(default_tag: 'test') do
|
4365
4469
|
driver.feed(sample_record)
|
4366
4470
|
end
|
@@ -4374,6 +4478,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4374
4478
|
def test_writes_to_speficied_type_with_placeholders(data)
|
4375
4479
|
driver('', data["es_version"]).configure("type_name mytype.${tag}\n")
|
4376
4480
|
stub_elastic
|
4481
|
+
stub_elastic_info
|
4377
4482
|
driver.run(default_tag: 'test') do
|
4378
4483
|
driver.feed(sample_record)
|
4379
4484
|
end
|
@@ -4388,6 +4493,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4388
4493
|
driver('', data["es_version"])
|
4389
4494
|
.configure("type_name mytype.${tag}\nsuppress_type_name true")
|
4390
4495
|
stub_elastic
|
4496
|
+
stub_elastic_info
|
4391
4497
|
driver.run(default_tag: 'test') do
|
4392
4498
|
driver.feed(sample_record)
|
4393
4499
|
end
|
@@ -4402,6 +4508,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4402
4508
|
def test_writes_to_target_type_key(data)
|
4403
4509
|
driver('', data["es_version"]).configure("target_type_key @target_type\n")
|
4404
4510
|
stub_elastic
|
4511
|
+
stub_elastic_info
|
4405
4512
|
record = sample_record.clone
|
4406
4513
|
driver.run(default_tag: 'test') do
|
4407
4514
|
driver.feed(sample_record.merge('@target_type' => 'local-override'))
|
@@ -4413,6 +4520,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4413
4520
|
def test_writes_to_target_type_key_fallack_to_default
|
4414
4521
|
driver.configure("target_type_key @target_type\n")
|
4415
4522
|
stub_elastic
|
4523
|
+
stub_elastic_info
|
4416
4524
|
driver.run(default_tag: 'test') do
|
4417
4525
|
driver.feed(sample_record)
|
4418
4526
|
end
|
@@ -4423,6 +4531,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4423
4531
|
driver.configure("target_type_key @target_type
|
4424
4532
|
type_name mytype")
|
4425
4533
|
stub_elastic
|
4534
|
+
stub_elastic_info
|
4426
4535
|
driver.run(default_tag: 'test') do
|
4427
4536
|
driver.feed(sample_record)
|
4428
4537
|
end
|
@@ -4437,6 +4546,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4437
4546
|
def test_writes_to_target_type_key_nested(data)
|
4438
4547
|
driver('', data["es_version"]).configure("target_type_key kubernetes.labels.log_type\n")
|
4439
4548
|
stub_elastic
|
4549
|
+
stub_elastic_info
|
4440
4550
|
driver.run(default_tag: 'test') do
|
4441
4551
|
driver.feed(sample_record.merge('kubernetes' => {
|
4442
4552
|
'labels' => {
|
@@ -4451,6 +4561,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4451
4561
|
def test_writes_to_target_type_key_fallack_to_default_nested
|
4452
4562
|
driver.configure("target_type_key kubernetes.labels.log_type\n")
|
4453
4563
|
stub_elastic
|
4564
|
+
stub_elastic_info
|
4454
4565
|
driver.run(default_tag: 'test') do
|
4455
4566
|
driver.feed(sample_record.merge('kubernetes' => {
|
4456
4567
|
'labels' => {
|
@@ -4464,6 +4575,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4464
4575
|
def test_writes_to_speficied_host
|
4465
4576
|
driver.configure("host 192.168.33.50\n")
|
4466
4577
|
elastic_request = stub_elastic("http://192.168.33.50:9200/_bulk")
|
4578
|
+
stub_elastic_info("http://192.168.33.50:9200/")
|
4467
4579
|
driver.run(default_tag: 'test') do
|
4468
4580
|
driver.feed(sample_record)
|
4469
4581
|
end
|
@@ -4473,6 +4585,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4473
4585
|
def test_writes_to_speficied_port
|
4474
4586
|
driver.configure("port 9201\n")
|
4475
4587
|
elastic_request = stub_elastic("http://localhost:9201/_bulk")
|
4588
|
+
stub_elastic_info("http://localhost:9201")
|
4476
4589
|
driver.run(default_tag: 'test') do
|
4477
4590
|
driver.feed(sample_record)
|
4478
4591
|
end
|
@@ -4488,6 +4601,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4488
4601
|
hosts.each do |host_info|
|
4489
4602
|
host, port = host_info
|
4490
4603
|
stub_elastic_with_store_index_command_counts("http://#{host}:#{port}/_bulk")
|
4604
|
+
stub_elastic_info("http://#{host}:#{port}/")
|
4491
4605
|
end
|
4492
4606
|
|
4493
4607
|
driver.run(default_tag: 'test') do
|
@@ -4524,6 +4638,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4524
4638
|
]}
|
4525
4639
|
|
4526
4640
|
stub_elastic
|
4641
|
+
stub_elastic_info
|
4527
4642
|
driver.run(default_tag: 'test') do
|
4528
4643
|
driver.feed(original_hash)
|
4529
4644
|
end
|
@@ -4537,6 +4652,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4537
4652
|
expected_output = {"foo" => {"bar" => "baz"}}
|
4538
4653
|
|
4539
4654
|
stub_elastic
|
4655
|
+
stub_elastic_info
|
4540
4656
|
driver.run(default_tag: 'test') do
|
4541
4657
|
driver.feed(original_hash)
|
4542
4658
|
end
|
@@ -4545,6 +4661,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4545
4661
|
|
4546
4662
|
def test_makes_bulk_request
|
4547
4663
|
stub_elastic
|
4664
|
+
stub_elastic_info
|
4548
4665
|
driver.run(default_tag: 'test') do
|
4549
4666
|
driver.feed(sample_record)
|
4550
4667
|
driver.feed(sample_record.merge('age' => 27))
|
@@ -4552,8 +4669,9 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4552
4669
|
assert_equal(4, index_cmds.count)
|
4553
4670
|
end
|
4554
4671
|
|
4555
|
-
def
|
4672
|
+
def test_all_re
|
4556
4673
|
stub_elastic
|
4674
|
+
stub_elastic_info
|
4557
4675
|
driver.run(default_tag: 'test') do
|
4558
4676
|
driver.feed(sample_record)
|
4559
4677
|
driver.feed(sample_record.merge('age' => 27))
|
@@ -4569,6 +4687,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4569
4687
|
dt = DateTime.new(2015, 6, 1, 0, 0, 1, "+01:00")
|
4570
4688
|
logstash_index = "logstash-2015.05.31"
|
4571
4689
|
stub_elastic
|
4690
|
+
stub_elastic_info
|
4572
4691
|
driver.run(default_tag: 'test') do
|
4573
4692
|
driver.feed(dt.to_time.to_i, sample_record)
|
4574
4693
|
end
|
@@ -4583,6 +4702,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4583
4702
|
time = Date.today.to_time
|
4584
4703
|
index = "logstash-#{time.strftime("%Y.%m.%d")}"
|
4585
4704
|
stub_elastic
|
4705
|
+
stub_elastic_info
|
4586
4706
|
driver.run(default_tag: 'test') do
|
4587
4707
|
driver.feed(time.to_i, sample_record)
|
4588
4708
|
end
|
@@ -4595,6 +4715,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4595
4715
|
time = Time.parse Date.today.iso8601
|
4596
4716
|
logstash_index = "myprefix-#{time.getutc.strftime("%Y.%m.%d")}"
|
4597
4717
|
stub_elastic
|
4718
|
+
stub_elastic_info
|
4598
4719
|
driver.run(default_tag: 'test') do
|
4599
4720
|
driver.feed(time.to_i, sample_record)
|
4600
4721
|
end
|
@@ -4609,6 +4730,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4609
4730
|
time = Time.parse Date.today.iso8601
|
4610
4731
|
logstash_index = "myprefix#{separator}#{time.getutc.strftime("%Y.%m.%d")}"
|
4611
4732
|
stub_elastic
|
4733
|
+
stub_elastic_info
|
4612
4734
|
driver.run(default_tag: 'test') do
|
4613
4735
|
driver.feed(time.to_i, sample_record)
|
4614
4736
|
end
|
@@ -4622,6 +4744,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4622
4744
|
time = Time.parse Date.today.iso8601
|
4623
4745
|
logstash_index = "myprefix-test-#{time.getutc.strftime("%Y.%m.%d")}"
|
4624
4746
|
stub_elastic
|
4747
|
+
stub_elastic_info
|
4625
4748
|
driver.run(default_tag: 'test') do
|
4626
4749
|
driver.feed(time.to_i, sample_record)
|
4627
4750
|
end
|
@@ -4644,6 +4767,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4644
4767
|
time = Time.parse Date.today.iso8601
|
4645
4768
|
logstash_index = "myprefix-#{time.getutc.strftime("%H")}-#{time.getutc.strftime("%Y.%m.%d")}"
|
4646
4769
|
stub_elastic
|
4770
|
+
stub_elastic_info
|
4647
4771
|
driver.run(default_tag: 'test') do
|
4648
4772
|
driver.feed(time.to_i, sample_record)
|
4649
4773
|
end
|
@@ -4664,6 +4788,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4664
4788
|
pipeline_id = "mypipeline"
|
4665
4789
|
logstash_index = "myprefix-#{pipeline_id}-#{time.getutc.strftime("%Y.%m.%d")}"
|
4666
4790
|
stub_elastic
|
4791
|
+
stub_elastic_info
|
4667
4792
|
driver.run(default_tag: 'test') do
|
4668
4793
|
driver.feed(time.to_i, sample_record.merge({"pipeline_id" => pipeline_id}))
|
4669
4794
|
end
|
@@ -4689,6 +4814,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4689
4814
|
time = Time.parse Date.today.iso8601
|
4690
4815
|
logstash_index = "myprefix-#{time.getutc.strftime("%Y.%m.%d")}"
|
4691
4816
|
stub_elastic
|
4817
|
+
stub_elastic_info
|
4692
4818
|
driver.run(default_tag: 'test') do
|
4693
4819
|
driver.feed(time.to_i, sample_record.merge('indexformat' => '%Y.%m.%d'))
|
4694
4820
|
end
|
@@ -4712,6 +4838,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4712
4838
|
time = Time.parse Date.today.iso8601
|
4713
4839
|
logstash_index = "myprefix-#{time.getutc.strftime("%Y.%m")}"
|
4714
4840
|
stub_elastic
|
4841
|
+
stub_elastic_info
|
4715
4842
|
driver.run(default_tag: 'test') do
|
4716
4843
|
driver.feed(time.to_i, sample_record.merge('indexformat' => '%Y.%m'))
|
4717
4844
|
end
|
@@ -4724,6 +4851,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4724
4851
|
driver.configure("host ${tag}\n")
|
4725
4852
|
time = Time.parse Date.today.iso8601
|
4726
4853
|
elastic_request = stub_elastic("http://extracted-host:9200/_bulk")
|
4854
|
+
stub_elastic_info("http://extracted-host:9200/")
|
4727
4855
|
driver.run(default_tag: 'extracted-host') do
|
4728
4856
|
driver.feed(time.to_i, sample_record)
|
4729
4857
|
end
|
@@ -4740,6 +4868,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4740
4868
|
host, port = host_info
|
4741
4869
|
host = "extracted-host" if host == '${tag}'
|
4742
4870
|
stub_elastic_with_store_index_command_counts("http://#{host}:#{port}/_bulk")
|
4871
|
+
stub_elastic_info("http://#{host}:#{port}")
|
4743
4872
|
end
|
4744
4873
|
|
4745
4874
|
driver.run(default_tag: 'extracted-host') do
|
@@ -4774,8 +4903,10 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4774
4903
|
]
|
4775
4904
|
))
|
4776
4905
|
stub_elastic
|
4906
|
+
stub_elastic_info
|
4777
4907
|
time = Time.parse Date.today.iso8601
|
4778
4908
|
elastic_request = stub_elastic("http://host-#{time.utc.strftime('%Y%m%d')}:9200/_bulk")
|
4909
|
+
stub_elastic_info("http://host-#{time.utc.strftime('%Y%m%d')}:9200/")
|
4779
4910
|
driver.run(default_tag: 'test') do
|
4780
4911
|
driver.feed(time.to_i, sample_record)
|
4781
4912
|
end
|
@@ -4796,6 +4927,8 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4796
4927
|
second_pipeline_id = "2"
|
4797
4928
|
first_request = stub_elastic("http://myhost-1:9200/_bulk")
|
4798
4929
|
second_request = stub_elastic("http://myhost-2:9200/_bulk")
|
4930
|
+
stub_elastic_info("http://myhost-1:9200/")
|
4931
|
+
stub_elastic_info("http://myhost-2:9200/")
|
4799
4932
|
driver.run(default_tag: 'test') do
|
4800
4933
|
driver.feed(time.to_i, sample_record.merge({"pipeline_id" => first_pipeline_id}))
|
4801
4934
|
driver.feed(time.to_i, sample_record.merge({"pipeline_id" => second_pipeline_id}))
|
@@ -4816,6 +4949,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4816
4949
|
time = Time.parse Date.today.iso8601
|
4817
4950
|
pipeline_id = "1"
|
4818
4951
|
request = stub_elastic_unavailable("http://myhost-1:9200/_bulk")
|
4952
|
+
stub_elastic_info("http://myhost-1:9200/")
|
4819
4953
|
exception = assert_raise(Fluent::Plugin::ElasticsearchOutput::RecoverableRequestFailure) {
|
4820
4954
|
driver.run(default_tag: 'test') do
|
4821
4955
|
driver.feed(time.to_i, sample_record.merge({"pipeline_id" => pipeline_id}))
|
@@ -4831,6 +4965,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4831
4965
|
time = Time.parse Date.today.iso8601
|
4832
4966
|
logstash_index = "myprefix-#{time.getutc.strftime("%Y.%m.%d")}"
|
4833
4967
|
stub_elastic
|
4968
|
+
stub_elastic_info
|
4834
4969
|
driver.run(default_tag: 'test') do
|
4835
4970
|
driver.feed(time.to_i, sample_record)
|
4836
4971
|
end
|
@@ -4845,6 +4980,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4845
4980
|
time = Time.parse Date.today.iso8601
|
4846
4981
|
logstash_index = "logstash-#{time.getutc.strftime("%Y.%m")}"
|
4847
4982
|
stub_elastic
|
4983
|
+
stub_elastic_info
|
4848
4984
|
driver.run(default_tag: 'test') do
|
4849
4985
|
driver.feed(time.to_i, sample_record)
|
4850
4986
|
end
|
@@ -4858,6 +4994,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4858
4994
|
time = Time.parse Date.today.iso8601
|
4859
4995
|
logstash_index = "myprefix-#{time.getutc.strftime("%Y.%m")}"
|
4860
4996
|
stub_elastic
|
4997
|
+
stub_elastic_info
|
4861
4998
|
driver.run(default_tag: 'test') do
|
4862
4999
|
driver.feed(time.to_i, sample_record)
|
4863
5000
|
end
|
@@ -4884,6 +5021,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4884
5021
|
|
4885
5022
|
def test_doesnt_add_logstash_timestamp_by_default
|
4886
5023
|
stub_elastic
|
5024
|
+
stub_elastic_info
|
4887
5025
|
driver.run(default_tag: 'test') do
|
4888
5026
|
driver.feed(sample_record)
|
4889
5027
|
end
|
@@ -4893,6 +5031,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4893
5031
|
def test_adds_timestamp_when_logstash
|
4894
5032
|
driver.configure("logstash_format true\n")
|
4895
5033
|
stub_elastic
|
5034
|
+
stub_elastic_info
|
4896
5035
|
ts = DateTime.now
|
4897
5036
|
time = Fluent::EventTime.from_time(ts.to_time)
|
4898
5037
|
driver.run(default_tag: 'test') do
|
@@ -4905,6 +5044,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4905
5044
|
def test_adds_timestamp_when_include_timestamp
|
4906
5045
|
driver.configure("include_timestamp true\n")
|
4907
5046
|
stub_elastic
|
5047
|
+
stub_elastic_info
|
4908
5048
|
ts = DateTime.now
|
4909
5049
|
time = Fluent::EventTime.from_time(ts.to_time)
|
4910
5050
|
driver.run(default_tag: 'test') do
|
@@ -4917,6 +5057,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4917
5057
|
def test_uses_custom_timestamp_when_included_in_record
|
4918
5058
|
driver.configure("logstash_format true\n")
|
4919
5059
|
stub_elastic
|
5060
|
+
stub_elastic_info
|
4920
5061
|
ts = DateTime.new(2001,2,3).iso8601
|
4921
5062
|
driver.run(default_tag: 'test') do
|
4922
5063
|
driver.feed(sample_record.merge!('@timestamp' => ts))
|
@@ -4928,6 +5069,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4928
5069
|
def test_uses_custom_timestamp_when_included_in_record_without_logstash
|
4929
5070
|
driver.configure("include_timestamp true\n")
|
4930
5071
|
stub_elastic
|
5072
|
+
stub_elastic_info
|
4931
5073
|
ts = DateTime.new(2001,2,3).iso8601
|
4932
5074
|
driver.run(default_tag: 'test') do
|
4933
5075
|
driver.feed(sample_record.merge!('@timestamp' => ts))
|
@@ -4940,6 +5082,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4940
5082
|
driver.configure("logstash_format true
|
4941
5083
|
time_key vtm\n")
|
4942
5084
|
stub_elastic
|
5085
|
+
stub_elastic_info
|
4943
5086
|
ts = DateTime.new(2001,2,3).iso8601(9)
|
4944
5087
|
driver.run(default_tag: 'test') do
|
4945
5088
|
driver.feed(sample_record.merge!('vtm' => ts))
|
@@ -4953,6 +5096,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4953
5096
|
time_precision 3
|
4954
5097
|
time_key vtm\n")
|
4955
5098
|
stub_elastic
|
5099
|
+
stub_elastic_info
|
4956
5100
|
time = Time.now
|
4957
5101
|
float_time = time.to_f
|
4958
5102
|
driver.run(default_tag: 'test') do
|
@@ -4967,6 +5111,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4967
5111
|
time_key_format %Y-%m-%d %H:%M:%S.%N%z
|
4968
5112
|
time_key vtm\n")
|
4969
5113
|
stub_elastic
|
5114
|
+
stub_elastic_info
|
4970
5115
|
ts = "2001-02-03 13:14:01.673+02:00"
|
4971
5116
|
driver.run(default_tag: 'test') do
|
4972
5117
|
driver.feed(sample_record.merge!('vtm' => ts))
|
@@ -4981,6 +5126,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4981
5126
|
time_key_format %Y-%m-%d %H:%M:%S.%N%z
|
4982
5127
|
time_key vtm\n")
|
4983
5128
|
stub_elastic
|
5129
|
+
stub_elastic_info
|
4984
5130
|
ts = "2001-02-03 13:14:01.673+02:00"
|
4985
5131
|
time = Time.parse(ts)
|
4986
5132
|
current_zone_offset = Time.new(2001, 02, 03).to_datetime.offset
|
@@ -4998,6 +5144,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
4998
5144
|
time_key_format %Y-%m-%d %H:%M:%S.%N%z
|
4999
5145
|
time_key vtm\n")
|
5000
5146
|
stub_elastic
|
5147
|
+
stub_elastic_info
|
5001
5148
|
ts = "2001-02-03 13:14:01.673+02:00"
|
5002
5149
|
driver.run(default_tag: 'test') do
|
5003
5150
|
driver.feed(sample_record.merge!('vtm' => ts))
|
@@ -5012,6 +5159,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5012
5159
|
time_key vtm
|
5013
5160
|
time_key_exclude_timestamp true\n")
|
5014
5161
|
stub_elastic
|
5162
|
+
stub_elastic_info
|
5015
5163
|
ts = DateTime.new(2001,2,3).iso8601
|
5016
5164
|
driver.run(default_tag: 'test') do
|
5017
5165
|
driver.feed(sample_record.merge!('vtm' => ts))
|
@@ -5023,6 +5171,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5023
5171
|
driver.configure("logstash_format true
|
5024
5172
|
time_key_format %Y-%m-%dT%H:%M:%S.%N%z\n")
|
5025
5173
|
stub_elastic
|
5174
|
+
stub_elastic_info
|
5026
5175
|
ts = "2001-02-03T13:14:01.673+02:00"
|
5027
5176
|
driver.run(default_tag: 'test') do
|
5028
5177
|
driver.feed(sample_record.merge!('@timestamp' => ts))
|
@@ -5037,6 +5186,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5037
5186
|
index_name test
|
5038
5187
|
time_key_format %Y-%m-%dT%H:%M:%S.%N%z\n")
|
5039
5188
|
stub_elastic
|
5189
|
+
stub_elastic_info
|
5040
5190
|
ts = "2001-02-03T13:14:01.673+02:00"
|
5041
5191
|
driver.run(default_tag: 'test') do
|
5042
5192
|
driver.feed(sample_record.merge!('@timestamp' => ts))
|
@@ -5054,6 +5204,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5054
5204
|
driver.configure("logstash_format true
|
5055
5205
|
time_key_format %Y-%m-%dT%H:%M:%S.%N%z\n#{tag_config}\n")
|
5056
5206
|
stub_elastic
|
5207
|
+
stub_elastic_info
|
5057
5208
|
|
5058
5209
|
ts = "2001/02/03 13:14:01,673+02:00"
|
5059
5210
|
index = "logstash-#{Time.now.getutc.strftime("%Y.%m.%d")}"
|
@@ -5074,6 +5225,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5074
5225
|
driver.configure("logstash_format true
|
5075
5226
|
time_key_format %a %b %d %H:%M:%S %Z %Y\n")
|
5076
5227
|
stub_elastic
|
5228
|
+
stub_elastic_info
|
5077
5229
|
ts = "Thu Nov 29 14:33:20 GMT 2001"
|
5078
5230
|
driver.run(default_tag: 'test') do
|
5079
5231
|
driver.feed(sample_record.merge!('@timestamp' => ts))
|
@@ -5086,6 +5238,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5086
5238
|
def test_uses_nanosecond_precision_by_default
|
5087
5239
|
driver.configure("logstash_format true\n")
|
5088
5240
|
stub_elastic
|
5241
|
+
stub_elastic_info
|
5089
5242
|
time = Fluent::EventTime.new(Time.now.to_i, 123456789)
|
5090
5243
|
driver.run(default_tag: 'test') do
|
5091
5244
|
driver.feed(time, sample_record)
|
@@ -5098,6 +5251,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5098
5251
|
driver.configure("logstash_format true
|
5099
5252
|
time_precision 3\n")
|
5100
5253
|
stub_elastic
|
5254
|
+
stub_elastic_info
|
5101
5255
|
time = Fluent::EventTime.new(Time.now.to_i, 123456789)
|
5102
5256
|
driver.run(default_tag: 'test') do
|
5103
5257
|
driver.feed(time, sample_record)
|
@@ -5108,6 +5262,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5108
5262
|
|
5109
5263
|
def test_doesnt_add_tag_key_by_default
|
5110
5264
|
stub_elastic
|
5265
|
+
stub_elastic_info
|
5111
5266
|
driver.run(default_tag: 'test') do
|
5112
5267
|
driver.feed(sample_record)
|
5113
5268
|
end
|
@@ -5117,6 +5272,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5117
5272
|
def test_adds_tag_key_when_configured
|
5118
5273
|
driver.configure("include_tag_key true\n")
|
5119
5274
|
stub_elastic
|
5275
|
+
stub_elastic_info
|
5120
5276
|
driver.run(default_tag: 'mytag') do
|
5121
5277
|
driver.feed(sample_record)
|
5122
5278
|
end
|
@@ -5127,6 +5283,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5127
5283
|
def test_adds_id_key_when_configured
|
5128
5284
|
driver.configure("id_key request_id\n")
|
5129
5285
|
stub_elastic
|
5286
|
+
stub_elastic_info
|
5130
5287
|
driver.run(default_tag: 'test') do
|
5131
5288
|
driver.feed(sample_record)
|
5132
5289
|
end
|
@@ -5137,6 +5294,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5137
5294
|
def test_adds_nested_id_key_with_dot
|
5138
5295
|
driver.configure("id_key nested.request_id\n")
|
5139
5296
|
stub_elastic
|
5297
|
+
stub_elastic_info
|
5140
5298
|
driver.run(default_tag: 'test') do
|
5141
5299
|
driver.feed(nested_sample_record)
|
5142
5300
|
end
|
@@ -5146,6 +5304,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5146
5304
|
def test_adds_nested_id_key_with_dollar_dot
|
5147
5305
|
driver.configure("id_key $.nested.request_id\n")
|
5148
5306
|
stub_elastic
|
5307
|
+
stub_elastic_info
|
5149
5308
|
driver.run(default_tag: 'test') do
|
5150
5309
|
driver.feed(nested_sample_record)
|
5151
5310
|
end
|
@@ -5155,6 +5314,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5155
5314
|
def test_adds_nested_id_key_with_bracket
|
5156
5315
|
driver.configure("id_key $['nested']['request_id']\n")
|
5157
5316
|
stub_elastic
|
5317
|
+
stub_elastic_info
|
5158
5318
|
driver.run(default_tag: 'test') do
|
5159
5319
|
driver.feed(nested_sample_record)
|
5160
5320
|
end
|
@@ -5165,6 +5325,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5165
5325
|
def test_doesnt_add_id_key_if_missing_when_configured
|
5166
5326
|
driver.configure("id_key another_request_id\n")
|
5167
5327
|
stub_elastic
|
5328
|
+
stub_elastic_info
|
5168
5329
|
driver.run(default_tag: 'test') do
|
5169
5330
|
driver.feed(sample_record)
|
5170
5331
|
end
|
@@ -5173,6 +5334,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5173
5334
|
|
5174
5335
|
def test_adds_id_key_when_not_configured
|
5175
5336
|
stub_elastic
|
5337
|
+
stub_elastic_info
|
5176
5338
|
driver.run(default_tag: 'test') do
|
5177
5339
|
driver.feed(sample_record)
|
5178
5340
|
end
|
@@ -5182,6 +5344,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5182
5344
|
def test_adds_parent_key_when_configured
|
5183
5345
|
driver.configure("parent_key parent_id\n")
|
5184
5346
|
stub_elastic
|
5347
|
+
stub_elastic_info
|
5185
5348
|
driver.run(default_tag: 'test') do
|
5186
5349
|
driver.feed(sample_record)
|
5187
5350
|
end
|
@@ -5192,6 +5355,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5192
5355
|
def test_adds_nested_parent_key_with_dot
|
5193
5356
|
driver.configure("parent_key nested.parent_id\n")
|
5194
5357
|
stub_elastic
|
5358
|
+
stub_elastic_info
|
5195
5359
|
driver.run(default_tag: 'test') do
|
5196
5360
|
driver.feed(nested_sample_record)
|
5197
5361
|
end
|
@@ -5201,6 +5365,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5201
5365
|
def test_adds_nested_parent_key_with_dollar_dot
|
5202
5366
|
driver.configure("parent_key $.nested.parent_id\n")
|
5203
5367
|
stub_elastic
|
5368
|
+
stub_elastic_info
|
5204
5369
|
driver.run(default_tag: 'test') do
|
5205
5370
|
driver.feed(nested_sample_record)
|
5206
5371
|
end
|
@@ -5210,6 +5375,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5210
5375
|
def test_adds_nested_parent_key_with_bracket
|
5211
5376
|
driver.configure("parent_key $['nested']['parent_id']\n")
|
5212
5377
|
stub_elastic
|
5378
|
+
stub_elastic_info
|
5213
5379
|
driver.run(default_tag: 'test') do
|
5214
5380
|
driver.feed(nested_sample_record)
|
5215
5381
|
end
|
@@ -5220,6 +5386,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5220
5386
|
def test_doesnt_add_parent_key_if_missing_when_configured
|
5221
5387
|
driver.configure("parent_key another_parent_id\n")
|
5222
5388
|
stub_elastic
|
5389
|
+
stub_elastic_info
|
5223
5390
|
driver.run(default_tag: 'test') do
|
5224
5391
|
driver.feed(sample_record)
|
5225
5392
|
end
|
@@ -5228,6 +5395,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5228
5395
|
|
5229
5396
|
def test_adds_parent_key_when_not_configured
|
5230
5397
|
stub_elastic
|
5398
|
+
stub_elastic_info
|
5231
5399
|
driver.run(default_tag: 'test') do
|
5232
5400
|
driver.feed(sample_record)
|
5233
5401
|
end
|
@@ -5238,6 +5406,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5238
5406
|
def test_es6
|
5239
5407
|
driver("routing_key routing_id\n", 6)
|
5240
5408
|
stub_elastic
|
5409
|
+
stub_elastic_info
|
5241
5410
|
driver.run(default_tag: 'test') do
|
5242
5411
|
driver.feed(sample_record)
|
5243
5412
|
end
|
@@ -5247,6 +5416,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5247
5416
|
def test_es7
|
5248
5417
|
driver("routing_key routing_id\n", 7)
|
5249
5418
|
stub_elastic
|
5419
|
+
stub_elastic_info
|
5250
5420
|
driver.run(default_tag: 'test') do
|
5251
5421
|
driver.feed(sample_record)
|
5252
5422
|
end
|
@@ -5258,6 +5428,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5258
5428
|
def test_adds_nested_routing_key_with_dot
|
5259
5429
|
driver.configure("routing_key nested.routing_id\n")
|
5260
5430
|
stub_elastic
|
5431
|
+
stub_elastic_info
|
5261
5432
|
driver.run(default_tag: 'test') do
|
5262
5433
|
driver.feed(nested_sample_record)
|
5263
5434
|
end
|
@@ -5267,6 +5438,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5267
5438
|
def test_adds_nested_routing_key_with_dollar_dot
|
5268
5439
|
driver.configure("routing_key $.nested.routing_id\n")
|
5269
5440
|
stub_elastic
|
5441
|
+
stub_elastic_info
|
5270
5442
|
driver.run(default_tag: 'test') do
|
5271
5443
|
driver.feed(nested_sample_record)
|
5272
5444
|
end
|
@@ -5276,6 +5448,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5276
5448
|
def test_adds_nested_routing_key_with_bracket
|
5277
5449
|
driver.configure("routing_key $['nested']['routing_id']\n")
|
5278
5450
|
stub_elastic
|
5451
|
+
stub_elastic_info
|
5279
5452
|
driver.run(default_tag: 'test') do
|
5280
5453
|
driver.feed(nested_sample_record)
|
5281
5454
|
end
|
@@ -5286,6 +5459,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5286
5459
|
def test_doesnt_add_routing_key_if_missing_when_configured
|
5287
5460
|
driver.configure("routing_key another_routing_id\n")
|
5288
5461
|
stub_elastic
|
5462
|
+
stub_elastic_info
|
5289
5463
|
driver.run(default_tag: 'test') do
|
5290
5464
|
driver.feed(sample_record)
|
5291
5465
|
end
|
@@ -5294,6 +5468,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5294
5468
|
|
5295
5469
|
def test_adds_routing_key_when_not_configured
|
5296
5470
|
stub_elastic
|
5471
|
+
stub_elastic_info
|
5297
5472
|
driver.run(default_tag: 'test') do
|
5298
5473
|
driver.feed(sample_record)
|
5299
5474
|
end
|
@@ -5303,6 +5478,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5303
5478
|
def test_remove_one_key
|
5304
5479
|
driver.configure("remove_keys key1\n")
|
5305
5480
|
stub_elastic
|
5481
|
+
stub_elastic_info
|
5306
5482
|
driver.run(default_tag: 'test') do
|
5307
5483
|
driver.feed(sample_record.merge('key1' => 'v1', 'key2' => 'v2'))
|
5308
5484
|
end
|
@@ -5313,6 +5489,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5313
5489
|
def test_remove_multi_keys
|
5314
5490
|
driver.configure("remove_keys key1, key2\n")
|
5315
5491
|
stub_elastic
|
5492
|
+
stub_elastic_info
|
5316
5493
|
driver.run(default_tag: 'test') do
|
5317
5494
|
driver.feed(sample_record.merge('key1' => 'v1', 'key2' => 'v2'))
|
5318
5495
|
end
|
@@ -5321,6 +5498,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5321
5498
|
end
|
5322
5499
|
|
5323
5500
|
def test_request_error
|
5501
|
+
stub_elastic_info
|
5324
5502
|
stub_elastic_unavailable
|
5325
5503
|
assert_raise(Fluent::Plugin::ElasticsearchOutput::RecoverableRequestFailure) {
|
5326
5504
|
driver.run(default_tag: 'test', shutdown: false) do
|
@@ -5332,6 +5510,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5332
5510
|
def test_request_forever
|
5333
5511
|
omit("retry_forever test is unstable.") if ENV["CI"]
|
5334
5512
|
stub_elastic
|
5513
|
+
stub_elastic_info
|
5335
5514
|
driver.configure(Fluent::Config::Element.new(
|
5336
5515
|
'ROOT', '', {
|
5337
5516
|
'@type' => 'elasticsearch',
|
@@ -5356,6 +5535,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5356
5535
|
connection_resets += 1
|
5357
5536
|
raise Faraday::ConnectionFailed, "Test message"
|
5358
5537
|
end
|
5538
|
+
stub_elastic_info
|
5359
5539
|
|
5360
5540
|
assert_raise(Fluent::Plugin::ElasticsearchOutput::RecoverableRequestFailure) {
|
5361
5541
|
driver.run(default_tag: 'test', shutdown: false) do
|
@@ -5372,6 +5552,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5372
5552
|
connection_resets += 1
|
5373
5553
|
raise ZeroDivisionError, "any not host_unreachable_exceptions exception"
|
5374
5554
|
end
|
5555
|
+
stub_elastic_info
|
5375
5556
|
|
5376
5557
|
driver.configure("reconnect_on_error true\n")
|
5377
5558
|
|
@@ -5398,6 +5579,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5398
5579
|
connection_resets += 1
|
5399
5580
|
raise ZeroDivisionError, "any not host_unreachable_exceptions exception"
|
5400
5581
|
end
|
5582
|
+
stub_elastic_info
|
5401
5583
|
|
5402
5584
|
driver.configure("reconnect_on_error false\n")
|
5403
5585
|
|
@@ -5441,6 +5623,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5441
5623
|
})
|
5442
5624
|
}
|
5443
5625
|
end)
|
5626
|
+
stub_elastic_info
|
5444
5627
|
|
5445
5628
|
driver.run(default_tag: 'test') do
|
5446
5629
|
driver.feed(1, sample_record)
|
@@ -5512,6 +5695,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5512
5695
|
})
|
5513
5696
|
}
|
5514
5697
|
end)
|
5698
|
+
stub_elastic_info
|
5515
5699
|
|
5516
5700
|
# Check buffer fulfillment condition
|
5517
5701
|
assert_raise(Fluent::Plugin::ElasticsearchOutput::RetryStreamEmitFailure) do
|
@@ -5558,6 +5742,8 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5558
5742
|
})
|
5559
5743
|
}
|
5560
5744
|
end)
|
5745
|
+
stub_elastic_info
|
5746
|
+
|
5561
5747
|
sample_record1 = sample_record('my_id' => 'abc')
|
5562
5748
|
sample_record4 = sample_record('my_id' => 'xyz')
|
5563
5749
|
|
@@ -5607,6 +5793,8 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5607
5793
|
})
|
5608
5794
|
}
|
5609
5795
|
end)
|
5796
|
+
stub_elastic_info
|
5797
|
+
|
5610
5798
|
sample_record1 = sample_record('my_id' => 'abc')
|
5611
5799
|
sample_record4 = sample_record('my_id' => 'xyz')
|
5612
5800
|
|
@@ -5677,6 +5865,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5677
5865
|
})
|
5678
5866
|
}
|
5679
5867
|
end)
|
5868
|
+
stub_elastic_info
|
5680
5869
|
|
5681
5870
|
driver.run(default_tag: 'test') do
|
5682
5871
|
driver.feed(1, sample_record)
|
@@ -5693,6 +5882,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5693
5882
|
def test_update_should_not_write_if_theres_no_id
|
5694
5883
|
driver.configure("write_operation update\n")
|
5695
5884
|
stub_elastic
|
5885
|
+
stub_elastic_info
|
5696
5886
|
driver.run(default_tag: 'test') do
|
5697
5887
|
driver.feed(sample_record)
|
5698
5888
|
end
|
@@ -5702,6 +5892,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5702
5892
|
def test_upsert_should_not_write_if_theres_no_id
|
5703
5893
|
driver.configure("write_operation upsert\n")
|
5704
5894
|
stub_elastic
|
5895
|
+
stub_elastic_info
|
5705
5896
|
driver.run(default_tag: 'test') do
|
5706
5897
|
driver.feed(sample_record)
|
5707
5898
|
end
|
@@ -5711,6 +5902,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5711
5902
|
def test_create_should_not_write_if_theres_no_id
|
5712
5903
|
driver.configure("write_operation create\n")
|
5713
5904
|
stub_elastic
|
5905
|
+
stub_elastic_info
|
5714
5906
|
driver.run(default_tag: 'test') do
|
5715
5907
|
driver.feed(sample_record)
|
5716
5908
|
end
|
@@ -5721,6 +5913,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5721
5913
|
driver.configure("write_operation update
|
5722
5914
|
id_key request_id")
|
5723
5915
|
stub_elastic
|
5916
|
+
stub_elastic_info
|
5724
5917
|
driver.run(default_tag: 'test') do
|
5725
5918
|
driver.feed(sample_record)
|
5726
5919
|
end
|
@@ -5734,6 +5927,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5734
5927
|
id_key request_id
|
5735
5928
|
remove_keys_on_update parent_id")
|
5736
5929
|
stub_elastic
|
5930
|
+
stub_elastic_info
|
5737
5931
|
driver.run(default_tag: 'test') do
|
5738
5932
|
driver.feed(sample_record)
|
5739
5933
|
end
|
@@ -5745,6 +5939,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5745
5939
|
driver.configure("write_operation upsert
|
5746
5940
|
id_key request_id")
|
5747
5941
|
stub_elastic
|
5942
|
+
stub_elastic_info
|
5748
5943
|
driver.run(default_tag: 'test') do
|
5749
5944
|
driver.feed(sample_record)
|
5750
5945
|
end
|
@@ -5758,6 +5953,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5758
5953
|
id_key request_id
|
5759
5954
|
remove_keys_on_update parent_id")
|
5760
5955
|
stub_elastic
|
5956
|
+
stub_elastic_info
|
5761
5957
|
driver.run(default_tag: 'test') do
|
5762
5958
|
driver.feed(sample_record)
|
5763
5959
|
end
|
@@ -5772,6 +5968,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5772
5968
|
id_key request_id
|
5773
5969
|
remove_keys_on_update parent_id")
|
5774
5970
|
stub_elastic
|
5971
|
+
stub_elastic_info
|
5775
5972
|
driver.run(default_tag: 'test') do
|
5776
5973
|
driver.feed(sample_record)
|
5777
5974
|
end
|
@@ -5785,6 +5982,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5785
5982
|
id_key id
|
5786
5983
|
remove_keys_on_update foo,baz")
|
5787
5984
|
stub_elastic
|
5985
|
+
stub_elastic_info
|
5788
5986
|
driver.run(default_tag: 'test') do
|
5789
5987
|
driver.feed("id" => 1, "foo" => "bar", "baz" => "quix", "zip" => "zam")
|
5790
5988
|
end
|
@@ -5809,6 +6007,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5809
6007
|
id_key id
|
5810
6008
|
remove_keys_on_update_key keys_to_skip")
|
5811
6009
|
stub_elastic
|
6010
|
+
stub_elastic_info
|
5812
6011
|
driver.run(default_tag: 'test') do
|
5813
6012
|
driver.feed("id" => 1, "foo" => "bar", "baz" => "quix", "keys_to_skip" => ["baz"])
|
5814
6013
|
end
|
@@ -5833,6 +6032,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5833
6032
|
remove_keys_on_update foo,bar
|
5834
6033
|
remove_keys_on_update_key keys_to_skip")
|
5835
6034
|
stub_elastic
|
6035
|
+
stub_elastic_info
|
5836
6036
|
driver.run(default_tag: 'test') do
|
5837
6037
|
driver.feed("id" => 1, "foo" => "bar", "baz" => "quix", "keys_to_skip" => ["baz"])
|
5838
6038
|
end
|
@@ -5857,6 +6057,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5857
6057
|
driver.configure("write_operation create
|
5858
6058
|
id_key request_id")
|
5859
6059
|
stub_elastic
|
6060
|
+
stub_elastic_info
|
5860
6061
|
driver.run(default_tag: 'test') do
|
5861
6062
|
driver.feed(sample_record)
|
5862
6063
|
end
|
@@ -5865,6 +6066,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5865
6066
|
|
5866
6067
|
def test_include_index_in_url
|
5867
6068
|
stub_elastic('http://localhost:9200/logstash-2018.01.01/_bulk')
|
6069
|
+
stub_elastic_info('http://localhost:9200/')
|
5868
6070
|
|
5869
6071
|
driver.configure("index_name logstash-2018.01.01
|
5870
6072
|
include_index_in_url true")
|
@@ -5878,8 +6080,8 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5878
6080
|
|
5879
6081
|
def test_use_simple_sniffer
|
5880
6082
|
require 'fluent/plugin/elasticsearch_simple_sniffer'
|
5881
|
-
stub_elastic_info
|
5882
6083
|
stub_elastic
|
6084
|
+
stub_elastic_info
|
5883
6085
|
config = %[
|
5884
6086
|
sniffer_class_name Fluent::Plugin::ElasticsearchSimpleSniffer
|
5885
6087
|
log_level debug
|
@@ -5903,6 +6105,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5903
6105
|
remove_keys id
|
5904
6106
|
suppress_doc_wrap true')
|
5905
6107
|
stub_elastic
|
6108
|
+
stub_elastic_info
|
5906
6109
|
doc_body = {'field' => 'value'}
|
5907
6110
|
script_body = {'source' => 'ctx._source.counter += params.param1',
|
5908
6111
|
'lang' => 'painless',
|
@@ -5929,6 +6132,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5929
6132
|
remove_keys id
|
5930
6133
|
suppress_doc_wrap true')
|
5931
6134
|
stub_elastic
|
6135
|
+
stub_elastic_info
|
5932
6136
|
doc_body = {'field' => 'value'}
|
5933
6137
|
script_body = {'source' => 'ctx._source.counter += params.param1',
|
5934
6138
|
'lang' => 'painless',
|
@@ -5955,6 +6159,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5955
6159
|
def test_ignore_exception
|
5956
6160
|
driver.configure('ignore_exceptions ["Elasticsearch::Transport::Transport::Errors::ServiceUnavailable"]')
|
5957
6161
|
stub_elastic_unavailable
|
6162
|
+
stub_elastic_info
|
5958
6163
|
|
5959
6164
|
driver.run(default_tag: 'test') do
|
5960
6165
|
driver.feed(sample_record)
|
@@ -5964,6 +6169,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5964
6169
|
def test_ignore_exception_with_superclass
|
5965
6170
|
driver.configure('ignore_exceptions ["Elasticsearch::Transport::Transport::ServerError"]')
|
5966
6171
|
stub_elastic_unavailable
|
6172
|
+
stub_elastic_info
|
5967
6173
|
|
5968
6174
|
driver.run(default_tag: 'test') do
|
5969
6175
|
driver.feed(sample_record)
|
@@ -5973,6 +6179,7 @@ class ElasticsearchOutputTest < Test::Unit::TestCase
|
|
5973
6179
|
def test_ignore_excetion_handles_appropriate_ones
|
5974
6180
|
driver.configure('ignore_exceptions ["Faraday::ConnectionFailed"]')
|
5975
6181
|
stub_elastic_unavailable
|
6182
|
+
stub_elastic_info
|
5976
6183
|
|
5977
6184
|
assert_raise(Fluent::Plugin::ElasticsearchOutput::RecoverableRequestFailure) {
|
5978
6185
|
driver.run(default_tag: 'test', shutdown: false) do
|