fluentd 1.16.8 → 1.17.0

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.
Files changed (83) hide show
  1. checksums.yaml +4 -4
  2. data/.github/DISCUSSION_TEMPLATE/q-a-japanese.yml +50 -0
  3. data/.github/DISCUSSION_TEMPLATE/q-a.yml +47 -0
  4. data/.github/workflows/test-ruby-head.yml +31 -0
  5. data/.github/workflows/test.yml +2 -13
  6. data/CHANGELOG.md +33 -69
  7. data/README.md +3 -1
  8. data/Rakefile +1 -1
  9. data/fluentd.gemspec +9 -10
  10. data/lib/fluent/command/binlog_reader.rb +1 -1
  11. data/lib/fluent/command/fluentd.rb +1 -1
  12. data/lib/fluent/compat/formatter.rb +0 -6
  13. data/lib/fluent/config/configure_proxy.rb +2 -2
  14. data/lib/fluent/config/parser.rb +3 -15
  15. data/lib/fluent/config/types.rb +1 -1
  16. data/lib/fluent/config/v1_parser.rb +1 -1
  17. data/lib/fluent/config/yaml_parser/parser.rb +0 -4
  18. data/lib/fluent/configurable.rb +2 -2
  19. data/lib/fluent/counter/mutex_hash.rb +1 -1
  20. data/lib/fluent/fluent_log_event_router.rb +0 -2
  21. data/lib/fluent/plugin/buf_file.rb +1 -1
  22. data/lib/fluent/plugin/buffer/file_chunk.rb +1 -1
  23. data/lib/fluent/plugin/buffer/file_single_chunk.rb +2 -3
  24. data/lib/fluent/plugin/filter_parser.rb +26 -8
  25. data/lib/fluent/plugin/formatter_csv.rb +4 -18
  26. data/lib/fluent/plugin/in_http.rb +17 -52
  27. data/lib/fluent/plugin/in_tail.rb +35 -3
  28. data/lib/fluent/plugin/out_file.rb +0 -8
  29. data/lib/fluent/plugin/out_http.rb +125 -13
  30. data/lib/fluent/plugin/owned_by_mixin.rb +0 -1
  31. data/lib/fluent/plugin/parser_json.rb +34 -9
  32. data/lib/fluent/plugin/parser_msgpack.rb +24 -3
  33. data/lib/fluent/plugin_helper/metrics.rb +2 -2
  34. data/lib/fluent/registry.rb +6 -6
  35. data/lib/fluent/supervisor.rb +3 -3
  36. data/lib/fluent/test/output_test.rb +1 -1
  37. data/lib/fluent/unique_id.rb +1 -1
  38. data/lib/fluent/version.rb +1 -1
  39. data/lib/fluent/winsvc.rb +8 -38
  40. data/test/command/test_cat.rb +2 -2
  41. data/test/command/test_fluentd.rb +10 -57
  42. data/test/config/test_plugin_configuration.rb +6 -6
  43. data/test/helper.rb +7 -27
  44. data/test/log/test_console_adapter.rb +10 -3
  45. data/test/plugin/data/log_numeric/01.log +0 -0
  46. data/test/plugin/data/log_numeric/02.log +0 -0
  47. data/test/plugin/data/log_numeric/12.log +0 -0
  48. data/test/plugin/data/log_numeric/14.log +0 -0
  49. data/test/plugin/in_tail/test_io_handler.rb +14 -13
  50. data/test/plugin/in_tail/test_position_file.rb +7 -6
  51. data/test/plugin/out_forward/test_ack_handler.rb +3 -3
  52. data/test/plugin/out_forward/test_socket_cache.rb +3 -3
  53. data/test/plugin/test_buffer.rb +2 -2
  54. data/test/plugin/test_filter_grep.rb +1 -1
  55. data/test/plugin/test_in_forward.rb +1 -2
  56. data/test/plugin/test_in_http.rb +23 -1
  57. data/test/plugin/test_in_monitor_agent.rb +6 -6
  58. data/test/plugin/test_in_syslog.rb +18 -25
  59. data/test/plugin/test_in_tail.rb +153 -5
  60. data/test/plugin/test_in_tcp.rb +1 -1
  61. data/test/plugin/test_in_udp.rb +10 -16
  62. data/test/plugin/test_out_exec_filter.rb +7 -12
  63. data/test/plugin/test_out_file.rb +2 -22
  64. data/test/plugin/test_out_forward.rb +3 -2
  65. data/test/plugin/test_out_http.rb +128 -0
  66. data/test/plugin/test_out_stream.rb +1 -1
  67. data/test/plugin/test_output.rb +1 -1
  68. data/test/plugin/test_output_as_buffered.rb +2 -2
  69. data/test/plugin/test_output_as_buffered_retries.rb +2 -2
  70. data/test/plugin/test_owned_by.rb +0 -1
  71. data/test/plugin/test_parser_csv.rb +1 -1
  72. data/test/plugin/test_parser_json.rb +106 -31
  73. data/test/plugin/test_parser_msgpack.rb +127 -0
  74. data/test/plugin/test_storage.rb +0 -1
  75. data/test/plugin_helper/test_child_process.rb +4 -4
  76. data/test/plugin_helper/test_http_server_helper.rb +1 -1
  77. data/test/plugin_helper/test_server.rb +41 -64
  78. data/test/plugin_helper/test_socket.rb +1 -1
  79. data/test/test_config.rb +0 -6
  80. data/test/test_event_router.rb +2 -2
  81. data/test/test_supervisor.rb +21 -30
  82. data/test/test_tls.rb +1 -1
  83. metadata +85 -16
@@ -15,7 +15,7 @@ class ServerPluginHelperTest < Test::Unit::TestCase
15
15
  TMP_DIR = File.expand_path(File.dirname(__FILE__) + "/../tmp/plugin_helper_server")
16
16
 
17
17
  setup do
18
- @port = unused_port(protocol: :tcp)
18
+ @port = unused_port
19
19
  if Fluent.windows?
20
20
  @socket_manager_server = ServerEngine::SocketManager::Server.open
21
21
  @socket_manager_path = @socket_manager_server.path
@@ -233,12 +233,11 @@ class ServerPluginHelperTest < Test::Unit::TestCase
233
233
  # 'server_create_connection tcp' => [:server_create_connection, :unix],
234
234
  )
235
235
  test 'raise error if udp options specified for tcp/tls/unix' do |(m, proto)|
236
- port = unused_port(protocol: proto)
237
236
  assert_raise ArgumentError do
238
- @d.__send__(m, :myserver, port, proto: proto, max_bytes: 128){|x| x }
237
+ @d.__send__(m, :myserver, @port, proto: proto, max_bytes: 128){|x| x }
239
238
  end
240
239
  assert_raise ArgumentError do
241
- @d.__send__(m, :myserver, port, proto: proto, flags: 1){|x| x }
240
+ @d.__send__(m, :myserver, @port, proto: proto, flags: 1){|x| x }
242
241
  end
243
242
  end
244
243
 
@@ -246,9 +245,8 @@ class ServerPluginHelperTest < Test::Unit::TestCase
246
245
  'server_create udp' => [:server_create, :udp],
247
246
  )
248
247
  test 'raise error if tcp/tls options specified for udp' do |(m, proto)|
249
- port = unused_port(protocol: proto)
250
248
  assert_raise(ArgumentError.new("BUG: linger_timeout is available for tcp/tls")) do
251
- @d.__send__(m, :myserver, port, proto: proto, linger_timeout: 1, max_bytes: 128){|x| x }
249
+ @d.__send__(m, :myserver, @port, proto: proto, linger_timeout: 1, max_bytes: 128){|x| x }
252
250
  end
253
251
  end
254
252
 
@@ -256,9 +254,8 @@ class ServerPluginHelperTest < Test::Unit::TestCase
256
254
  'server_create udp' => [:server_create, :udp],
257
255
  )
258
256
  test 'raise error if tcp/tls/unix backlog options specified for udp' do |(m, proto)|
259
- port = unused_port(protocol: proto)
260
257
  assert_raise(ArgumentError.new("BUG: backlog is available for tcp/tls")) do
261
- @d.__send__(m, :myserver, port, proto: proto, backlog: 500){|x| x }
258
+ @d.__send__(m, :myserver, @port, proto: proto, backlog: 500){|x| x }
262
259
  end
263
260
  end
264
261
 
@@ -266,9 +263,8 @@ class ServerPluginHelperTest < Test::Unit::TestCase
266
263
  'server_create udp' => [:server_create, :udp],
267
264
  )
268
265
  test 'raise error if tcp/tls send_keepalive_packet option is specified for udp' do |(m, proto)|
269
- port = unused_port(protocol: proto)
270
266
  assert_raise(ArgumentError.new("BUG: send_keepalive_packet is available for tcp/tls")) do
271
- @d.__send__(m, :myserver, port, proto: proto, send_keepalive_packet: true){|x| x }
267
+ @d.__send__(m, :myserver, @port, proto: proto, send_keepalive_packet: true){|x| x }
272
268
  end
273
269
  end
274
270
 
@@ -280,9 +276,8 @@ class ServerPluginHelperTest < Test::Unit::TestCase
280
276
  # 'server_create_connection unix' => [:server_create_connection, :unix, {}],
281
277
  )
282
278
  test 'raise error if tls options specified for tcp/udp/unix' do |(m, proto, kwargs)|
283
- port = unused_port(protocol: proto)
284
279
  assert_raise(ArgumentError.new("BUG: tls_options is available only for tls")) do
285
- @d.__send__(m, :myserver, port, proto: proto, tls_options: {}, **kwargs){|x| x }
280
+ @d.__send__(m, :myserver, @port, proto: proto, tls_options: {}, **kwargs){|x| x }
286
281
  end
287
282
  end
288
283
 
@@ -294,8 +289,7 @@ class ServerPluginHelperTest < Test::Unit::TestCase
294
289
  'server_create_connection tls' => [:server_create_connection, :tls, {tls_options: {insecure: true}}],
295
290
  )
296
291
  test 'can bind specified IPv4 address' do |(m, proto, kwargs)|
297
- port = unused_port(protocol: proto)
298
- @d.__send__(m, :myserver, port, proto: proto, bind: "127.0.0.1", **kwargs){|x| x }
292
+ @d.__send__(m, :myserver, @port, proto: proto, bind: "127.0.0.1", **kwargs){|x| x }
299
293
  assert_equal "127.0.0.1", @d._servers.first.bind
300
294
  assert_equal "127.0.0.1", @d._servers.first.server.instance_eval{ instance_variable_defined?(:@listen_socket) ? @listen_socket : @_io }.addr[3]
301
295
  end
@@ -309,8 +303,7 @@ class ServerPluginHelperTest < Test::Unit::TestCase
309
303
  )
310
304
  test 'can bind specified IPv6 address' do |(m, proto, kwargs)| # if available
311
305
  omit "IPv6 unavailable here" unless ipv6_enabled?
312
- port = unused_port(protocol: proto)
313
- @d.__send__(m, :myserver, port, proto: proto, bind: "::1", **kwargs){|x| x }
306
+ @d.__send__(m, :myserver, @port, proto: proto, bind: "::1", **kwargs){|x| x }
314
307
  assert_equal "::1", @d._servers.first.bind
315
308
  assert_equal "::1", @d._servers.first.server.instance_eval{ instance_variable_defined?(:@listen_socket) ? @listen_socket : @_io }.addr[3]
316
309
  end
@@ -327,11 +320,10 @@ class ServerPluginHelperTest < Test::Unit::TestCase
327
320
  test 'can create 2 or more servers which share same bind address and port if shared option is true' do |(m, proto, kwargs)|
328
321
  begin
329
322
  d2 = Dummy.new; d2.start; d2.after_start
330
- port = unused_port(protocol: proto)
331
323
 
332
324
  assert_nothing_raised do
333
- @d.__send__(m, :myserver, port, proto: proto, **kwargs){|x| x }
334
- d2.__send__(m, :myserver, port, proto: proto, **kwargs){|x| x }
325
+ @d.__send__(m, :myserver, @port, proto: proto, **kwargs){|x| x }
326
+ d2.__send__(m, :myserver, @port, proto: proto, **kwargs){|x| x }
335
327
  end
336
328
  ensure
337
329
  d2.stop; d2.before_shutdown; d2.shutdown; d2.after_shutdown; d2.close; d2.terminate
@@ -352,13 +344,12 @@ class ServerPluginHelperTest < Test::Unit::TestCase
352
344
  test 'cannot create 2 or more servers using same bind address and port if shared option is false' do |(m, proto, kwargs)|
353
345
  begin
354
346
  d2 = Dummy.new; d2.start; d2.after_start
355
- port = unused_port(protocol: proto)
356
347
 
357
348
  assert_nothing_raised do
358
- @d.__send__(m, :myserver, port, proto: proto, shared: false, **kwargs){|x| x }
349
+ @d.__send__(m, :myserver, @port, proto: proto, shared: false, **kwargs){|x| x }
359
350
  end
360
351
  assert_raise(Errno::EADDRINUSE, Errno::EACCES) do
361
- d2.__send__(m, :myserver, port, proto: proto, **kwargs){|x| x }
352
+ d2.__send__(m, :myserver, @port, proto: proto, **kwargs){|x| x }
362
353
  end
363
354
  ensure
364
355
  d2.stop; d2.before_shutdown; d2.shutdown; d2.after_shutdown; d2.close; d2.terminate
@@ -374,18 +365,16 @@ class ServerPluginHelperTest < Test::Unit::TestCase
374
365
  # 'unix' => [:unix, {}],
375
366
  )
376
367
  test 'raise error if block argument is not specified or too many' do |(proto, kwargs)|
377
- port = unused_port(protocol: proto)
378
368
  assert_raise(ArgumentError.new("BUG: block must have 1 or 2 arguments")) do
379
- @d.server_create(:myserver, port, proto: proto, **kwargs){ 1 }
369
+ @d.server_create(:myserver, @port, proto: proto, **kwargs){ 1 }
380
370
  end
381
371
  assert_raise(ArgumentError.new("BUG: block must have 1 or 2 arguments")) do
382
- @d.server_create(:myserver, port, proto: proto, **kwargs){|sock, conn, what_is_this| 1 }
372
+ @d.server_create(:myserver, @port, proto: proto, **kwargs){|sock, conn, what_is_this| 1 }
383
373
  end
384
374
  end
385
375
 
386
376
  test 'creates udp server if specified in proto' do
387
- port = unused_port(protocol: :udp)
388
- @d.server_create(:myserver, port, proto: :udp, max_bytes: 512){|x| x }
377
+ @d.server_create(:myserver, @port, proto: :udp, max_bytes: 512){|x| x }
389
378
 
390
379
  created_server_info = @d._servers.first
391
380
  assert_equal :udp, created_server_info.proto
@@ -598,8 +587,7 @@ class ServerPluginHelperTest < Test::Unit::TestCase
598
587
  sub_test_case '#server_create_udp' do
599
588
  test 'can accept all keyword arguments valid for udp server' do
600
589
  assert_nothing_raised do
601
- port = unused_port(protocol: :udp)
602
- @d.server_create_udp(:s, port, bind: '127.0.0.1', shared: false, resolve_name: true, max_bytes: 100, flags: 1) do |data, conn|
590
+ @d.server_create_udp(:s, @port, bind: '127.0.0.1', shared: false, resolve_name: true, max_bytes: 100, flags: 1) do |data, conn|
603
591
  # ...
604
592
  end
605
593
  end
@@ -607,15 +595,14 @@ class ServerPluginHelperTest < Test::Unit::TestCase
607
595
 
608
596
  test 'creates a udp server just to read data' do
609
597
  received = ""
610
- port = unused_port(protocol: :udp)
611
- @d.server_create_udp(:s, port, max_bytes: 128) do |data|
598
+ @d.server_create_udp(:s, @port, max_bytes: 128) do |data|
612
599
  received << data
613
600
  end
614
601
  bind_port = unused_port(protocol: :udp, bind: "127.0.0.1")
615
602
  3.times do
616
603
  sock = UDPSocket.new(Socket::AF_INET)
617
604
  sock.bind("127.0.0.1", bind_port)
618
- sock.connect("127.0.0.1", port)
605
+ sock.connect("127.0.0.1", @port)
619
606
  sock.puts "yay"
620
607
  sock.puts "foo"
621
608
  sock.close
@@ -627,17 +614,16 @@ class ServerPluginHelperTest < Test::Unit::TestCase
627
614
  test 'creates a udp server to read and write data' do
628
615
  received = ""
629
616
  responses = []
630
- port = unused_port(protocol: :udp)
631
- @d.server_create_udp(:s, port, max_bytes: 128) do |data, sock|
617
+ @d.server_create_udp(:s, @port, max_bytes: 128) do |data, sock|
632
618
  received << data
633
619
  sock.write "ack\n"
634
620
  end
635
- bind_port = unused_port(protocol: :udp)
621
+ bind_port = unused_port
636
622
  3.times do
637
623
  begin
638
624
  sock = UDPSocket.new(Socket::AF_INET)
639
625
  sock.bind("127.0.0.1", bind_port)
640
- sock.connect("127.0.0.1", port)
626
+ sock.connect("127.0.0.1", @port)
641
627
  th = Thread.new do
642
628
  while true
643
629
  begin
@@ -668,12 +654,11 @@ class ServerPluginHelperTest < Test::Unit::TestCase
668
654
 
669
655
  received = ""
670
656
  responses = []
671
- port = unused_port(protocol: :udp, bind: "::1")
672
- @d.server_create_udp(:s, port, bind: "::1", max_bytes: 128) do |data, sock|
657
+ @d.server_create_udp(:s, @port, bind: "::1", max_bytes: 128) do |data, sock|
673
658
  received << data
674
659
  sock.write "ack\n"
675
660
  end
676
- bind_port = unused_port(protocol: :udp, bind: "::1")
661
+ bind_port = unused_port
677
662
  3.times do
678
663
  begin
679
664
  sock = UDPSocket.new(Socket::AF_INET6)
@@ -682,7 +667,7 @@ class ServerPluginHelperTest < Test::Unit::TestCase
682
667
  responses << sock.recv(16)
683
668
  true
684
669
  end
685
- sock.connect("::1", port)
670
+ sock.connect("::1", @port)
686
671
  sock.write "yay\nfoo\n"
687
672
  th.join(5)
688
673
  ensure
@@ -697,14 +682,13 @@ class ServerPluginHelperTest < Test::Unit::TestCase
697
682
  test 'does not resolve name of client address in default' do
698
683
  received = ""
699
684
  sources = []
700
- port = unused_port(protocol: :udp)
701
- @d.server_create_udp(:s, port, max_bytes: 128) do |data, sock|
685
+ @d.server_create_udp(:s, @port, max_bytes: 128) do |data, sock|
702
686
  received << data
703
687
  sources << sock.remote_host
704
688
  end
705
689
  3.times do
706
690
  sock = UDPSocket.new(Socket::AF_INET)
707
- sock.connect("127.0.0.1", port)
691
+ sock.connect("127.0.0.1", @port)
708
692
  sock.puts "yay"
709
693
  sock.close
710
694
  end
@@ -718,14 +702,13 @@ class ServerPluginHelperTest < Test::Unit::TestCase
718
702
 
719
703
  received = ""
720
704
  sources = []
721
- port = unused_port(protocol: :udp)
722
- @d.server_create_udp(:s, port, resolve_name: true, max_bytes: 128) do |data, sock|
705
+ @d.server_create_udp(:s, @port, resolve_name: true, max_bytes: 128) do |data, sock|
723
706
  received << data
724
707
  sources << sock.remote_host
725
708
  end
726
709
  3.times do
727
710
  sock = UDPSocket.new(Socket::AF_INET)
728
- sock.connect("127.0.0.1", port)
711
+ sock.connect("127.0.0.1", @port)
729
712
  sock.puts "yay"
730
713
  sock.close
731
714
  end
@@ -737,8 +720,7 @@ class ServerPluginHelperTest < Test::Unit::TestCase
737
720
  test 'raises error if plugin registers data callback for connection object from #server_create' do
738
721
  received = ""
739
722
  errors = []
740
- port = unused_port(protocol: :udp)
741
- @d.server_create_udp(:s, port, max_bytes: 128) do |data, sock|
723
+ @d.server_create_udp(:s, @port, max_bytes: 128) do |data, sock|
742
724
  received << data
743
725
  begin
744
726
  sock.data{|d| received << d.upcase }
@@ -747,7 +729,7 @@ class ServerPluginHelperTest < Test::Unit::TestCase
747
729
  end
748
730
  end
749
731
  sock = UDPSocket.new(Socket::AF_INET)
750
- sock.connect("127.0.0.1", port)
732
+ sock.connect("127.0.0.1", @port)
751
733
  sock.write "foo\n"
752
734
  sock.close
753
735
 
@@ -760,8 +742,7 @@ class ServerPluginHelperTest < Test::Unit::TestCase
760
742
  test 'raise error if plugin registers write_complete callback for udp' do
761
743
  received = ""
762
744
  errors = []
763
- port = unused_port(protocol: :udp)
764
- @d.server_create_udp(:s, port, max_bytes: 128) do |data, sock|
745
+ @d.server_create_udp(:s, @port, max_bytes: 128) do |data, sock|
765
746
  received << data
766
747
  begin
767
748
  sock.on(:write_complete){|conn| "" }
@@ -770,7 +751,7 @@ class ServerPluginHelperTest < Test::Unit::TestCase
770
751
  end
771
752
  end
772
753
  sock = UDPSocket.new(Socket::AF_INET)
773
- sock.connect("127.0.0.1", port)
754
+ sock.connect("127.0.0.1", @port)
774
755
  sock.write "foo\n"
775
756
  sock.close
776
757
 
@@ -783,8 +764,7 @@ class ServerPluginHelperTest < Test::Unit::TestCase
783
764
  test 'raises error if plugin registers close callback for udp' do
784
765
  received = ""
785
766
  errors = []
786
- port = unused_port(protocol: :udp)
787
- @d.server_create_udp(:s, port, max_bytes: 128) do |data, sock|
767
+ @d.server_create_udp(:s, @port, max_bytes: 128) do |data, sock|
788
768
  received << data
789
769
  begin
790
770
  sock.on(:close){|d| "" }
@@ -793,7 +773,7 @@ class ServerPluginHelperTest < Test::Unit::TestCase
793
773
  end
794
774
  end
795
775
  sock = UDPSocket.new(Socket::AF_INET)
796
- sock.connect("127.0.0.1", port)
776
+ sock.connect("127.0.0.1", @port)
797
777
  sock.write "foo\n"
798
778
  sock.close
799
779
 
@@ -806,12 +786,11 @@ class ServerPluginHelperTest < Test::Unit::TestCase
806
786
  test 'can bind IPv4 / IPv6 together' do
807
787
  omit "IPv6 unavailable here" unless ipv6_enabled?
808
788
 
809
- port = unused_port(protocol: :udp)
810
789
  assert_nothing_raised do
811
- @d.server_create_udp(:s_ipv4_udp, port, bind: '0.0.0.0', shared: false, max_bytes: 128) do |data, sock|
790
+ @d.server_create_udp(:s_ipv4_udp, @port, bind: '0.0.0.0', shared: false, max_bytes: 128) do |data, sock|
812
791
  # ...
813
792
  end
814
- @d.server_create_udp(:s_ipv6_udp, port, bind: '::', shared: false, max_bytes: 128) do |data, sock|
793
+ @d.server_create_udp(:s_ipv6_udp, @port, bind: '::', shared: false, max_bytes: 128) do |data, sock|
815
794
  # ...
816
795
  end
817
796
  end
@@ -824,12 +803,11 @@ class ServerPluginHelperTest < Test::Unit::TestCase
824
803
  max_bytes, records, expected = data.values
825
804
 
826
805
  actual_records = []
827
- port = unused_port(protocol: :udp)
828
- @d.server_create_udp(:myserver, port, max_bytes: max_bytes) do |data, sock|
806
+ @d.server_create_udp(:myserver, @port, max_bytes: max_bytes) do |data, sock|
829
807
  actual_records << data
830
808
  end
831
809
 
832
- open_client(:udp, "127.0.0.1", port) do |sock|
810
+ open_client(:udp, "127.0.0.1", @port) do |sock|
833
811
  records.each do |record|
834
812
  sock.send(record, 0)
835
813
  end
@@ -845,12 +823,11 @@ class ServerPluginHelperTest < Test::Unit::TestCase
845
823
  max_bytes, records, expected = data.values
846
824
 
847
825
  actual_records = []
848
- port = unused_port(protocol: :udp)
849
- @d.server_create_udp(:myserver, port, max_bytes: max_bytes) do |data|
826
+ @d.server_create_udp(:myserver, @port, max_bytes: max_bytes) do |data|
850
827
  actual_records << data
851
828
  end
852
829
 
853
- open_client(:udp, "127.0.0.1", port) do |sock|
830
+ open_client(:udp, "127.0.0.1", @port) do |sock|
854
831
  records.each do |record|
855
832
  sock.send(record, 0)
856
833
  end
@@ -11,7 +11,7 @@ class SocketHelperTest < Test::Unit::TestCase
11
11
  CERT_CHAINS_DIR = File.expand_path(File.dirname(__FILE__) + '/data/cert/cert_chains')
12
12
 
13
13
  def setup
14
- @port = unused_port(protocol: :tcp)
14
+ @port = unused_port
15
15
  end
16
16
 
17
17
  def teardown
data/test/test_config.rb CHANGED
@@ -167,7 +167,6 @@ class ConfigTest < Test::Unit::TestCase
167
167
  tag: tag.dummy
168
168
  - source:
169
169
  $type: tcp
170
- $log_level: info
171
170
  tag: tag.tcp
172
171
  parse:
173
172
  $arg:
@@ -177,7 +176,6 @@ class ConfigTest < Test::Unit::TestCase
177
176
  - match:
178
177
  $tag: tag.*
179
178
  $type: stdout
180
- $log_level: debug
181
179
  buffer:
182
180
  $type: memory
183
181
  flush_interval: 1s
@@ -210,12 +208,10 @@ class ConfigTest < Test::Unit::TestCase
210
208
  'tag.dummy',
211
209
  'tcp',
212
210
  'tag.tcp',
213
- 'info',
214
211
  'none',
215
212
  'why.parse.section.doesnot.have.arg,huh',
216
213
  'stdout',
217
214
  'tag.*',
218
- 'debug',
219
215
  'null',
220
216
  '**',
221
217
  '@FLUENT_LOG',
@@ -228,12 +224,10 @@ class ConfigTest < Test::Unit::TestCase
228
224
  dummy_source_conf['tag'],
229
225
  tcp_source_conf['@type'],
230
226
  tcp_source_conf['tag'],
231
- tcp_source_conf['@log_level'],
232
227
  parse_tcp_conf['@type'],
233
228
  parse_tcp_conf.arg,
234
229
  match_conf['@type'],
235
230
  match_conf.arg,
236
- match_conf['@log_level'],
237
231
  fluent_log_conf['@type'],
238
232
  fluent_log_conf.arg,
239
233
  label_conf.arg,
@@ -175,7 +175,7 @@ class EventRouterTest < ::Test::Unit::TestCase
175
175
  test "don't call default collector when tag matched" do
176
176
  event_router.add_rule('test', output)
177
177
  assert_rr do
178
- mock(default_collector).emit_events('test', is_a(OneEventStream)).never
178
+ dont_allow(default_collector).emit_events('test', is_a(OneEventStream))
179
179
  event_router.emit('test', Engine.now, 'k' => 'v')
180
180
  end
181
181
  # check emit handler doesn't catch rr error
@@ -201,7 +201,7 @@ class EventRouterTest < ::Test::Unit::TestCase
201
201
  event_router.add_rule('test', filter)
202
202
 
203
203
  assert_rr do
204
- mock(filter).filter_stream('test', is_a(OneEventStream)).never
204
+ dont_allow(filter).filter_stream('test', is_a(OneEventStream)) { events }
205
205
  event_router.emit('foo', Engine.now, 'k' => 'v')
206
206
  end
207
207
  end
@@ -214,9 +214,6 @@ class SupervisorTest < ::Test::Unit::TestCase
214
214
  def test_cont_in_main_process_signal_handlers
215
215
  omit "Windows cannot handle signals" if Fluent.windows?
216
216
 
217
- # https://github.com/fluent/fluentd/issues/4063
218
- GC.start
219
-
220
217
  sv = Fluent::Supervisor.new({})
221
218
  sv.send(:install_main_process_signal_handlers)
222
219
 
@@ -232,9 +229,6 @@ class SupervisorTest < ::Test::Unit::TestCase
232
229
  def test_term_cont_in_main_process_signal_handlers
233
230
  omit "Windows cannot handle signals" if Fluent.windows?
234
231
 
235
- # https://github.com/fluent/fluentd/issues/4063
236
- GC.start
237
-
238
232
  create_debug_dummy_logger
239
233
 
240
234
  sv = Fluent::Supervisor.new({})
@@ -302,9 +296,6 @@ class SupervisorTest < ::Test::Unit::TestCase
302
296
  def test_cont_in_supervisor_signal_handler
303
297
  omit "Windows cannot handle signals" if Fluent.windows?
304
298
 
305
- # https://github.com/fluent/fluentd/issues/4063
306
- GC.start
307
-
308
299
  server = DummyServer.new
309
300
  server.install_supervisor_signal_handlers
310
301
 
@@ -320,9 +311,6 @@ class SupervisorTest < ::Test::Unit::TestCase
320
311
  def test_term_cont_in_supervisor_signal_handler
321
312
  omit "Windows cannot handle signals" if Fluent.windows?
322
313
 
323
- # https://github.com/fluent/fluentd/issues/4063
324
- GC.start
325
-
326
314
  server = DummyServer.new
327
315
  server.install_supervisor_signal_handlers
328
316
 
@@ -402,31 +390,34 @@ class SupervisorTest < ::Test::Unit::TestCase
402
390
  def test_supervisor_event_dump_windows
403
391
  omit "Only for Windows, alternative to UNIX signals" unless Fluent.windows?
404
392
 
405
- # https://github.com/fluent/fluentd/issues/4063
406
- GC.start
407
-
408
- ENV['SIGDUMP_PATH'] = TMP_DIR + "/sigdump.log"
409
-
410
393
  server = DummyServer.new
411
394
  def server.config
412
395
  {:signame => "TestFluentdEvent"}
413
396
  end
414
397
  server.install_windows_event_handler
415
398
 
416
- begin
417
- sleep 0.1 # Wait for starting windows event thread
418
- event = Win32::Event.open("TestFluentdEvent_CONT")
419
- event.set
420
- event.close
421
- sleep 1.0 # Wait for dumping
422
- ensure
423
- server.stop_windows_event_thread
399
+ assert_rr do
400
+ # Have to use mock because `Sigdump.dump` seems to be somehow incompatible with RR.
401
+ # The `mock(server).restart(true) { nil }` line in `test_rpc_server_windows` cause the next error.
402
+ # Failure: test_supervisor_event_dump_windows(SupervisorTest):
403
+ # class()
404
+ # Called 0 times.
405
+ # Expected 1 times.
406
+ # .../Ruby26-x64/lib/ruby/gems/2.6.0/gems/sigdump-0.2.4/lib/sigdump.rb:74:in `block in dump_object_count'
407
+ # 73: ObjectSpace.each_object {|o|
408
+ # 74: c = o.class <-- HERE!
409
+ mock(Sigdump).dump(anything)
410
+
411
+ begin
412
+ sleep 0.1 # Wait for starting windows event thread
413
+ event = Win32::Event.open("TestFluentdEvent_CONT")
414
+ event.set
415
+ event.close
416
+ sleep 1.0 # Wait for dumping
417
+ ensure
418
+ server.stop_windows_event_thread
419
+ end
424
420
  end
425
-
426
- result_filepaths = Dir.glob("#{TMP_DIR}/*")
427
- assert {result_filepaths.length > 0}
428
- ensure
429
- ENV.delete('SIGDUMP_PATH')
430
421
  end
431
422
 
432
423
  data(:ipv4 => ["0.0.0.0", "127.0.0.1", false],
data/test/test_tls.rb CHANGED
@@ -9,7 +9,7 @@ class UniqueIdTest < Test::Unit::TestCase
9
9
  TEST_TLS1_2_CASES = {
10
10
  'New TLS v1.2' => :'TLS1_2',
11
11
  'Old TLS v1.2' => :'TLSv1_2'
12
- }
12
+ }
13
13
  TEST_TLS_CASES = TEST_TLS1_1_CASES.merge(TEST_TLS1_2_CASES)
14
14
 
15
15
  sub_test_case 'constants' do