fluentd 1.9.3 → 1.10.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.
Potentially problematic release.
This version of fluentd might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/.github/workflows/issue-auto-closer.yml +12 -0
- data/CHANGELOG.md +48 -0
- data/lib/fluent/msgpack_factory.rb +13 -6
- data/lib/fluent/plugin/buffer.rb +2 -2
- data/lib/fluent/plugin/in_dummy.rb +1 -1
- data/lib/fluent/plugin/in_tail.rb +35 -26
- data/lib/fluent/plugin/out_forward.rb +4 -6
- data/lib/fluent/plugin/out_forward/handshake_protocol.rb +4 -0
- data/lib/fluent/plugin/parser_syslog.rb +114 -34
- data/lib/fluent/plugin/sd_file.rb +1 -0
- data/lib/fluent/plugin/sd_srv.rb +135 -0
- data/lib/fluent/plugin_helper/cert_option.rb +15 -2
- data/lib/fluent/plugin_helper/server.rb +3 -1
- data/lib/fluent/plugin_helper/socket_option.rb +19 -1
- data/lib/fluent/version.rb +1 -1
- data/test/command/test_fluentd.rb +14 -2
- data/test/helper.rb +2 -2
- data/test/plugin/in_tail/test_fifo.rb +121 -0
- data/test/plugin/in_tail/test_io_handler.rb +132 -0
- data/test/plugin/in_tail/test_position_file.rb +1 -1
- data/test/plugin/out_forward/test_handshake_protocol.rb +10 -1
- data/test/plugin/test_buf_file.rb +3 -1
- data/test/plugin/test_buffer.rb +20 -0
- data/test/plugin/test_compressable.rb +7 -4
- data/test/plugin/test_in_dummy.rb +12 -14
- data/test/plugin/test_in_forward.rb +2 -2
- data/test/plugin/test_in_tail.rb +6 -6
- data/test/plugin/test_out_forward.rb +28 -1
- data/test/plugin/test_output_as_buffered_secondary.rb +1 -1
- data/test/plugin/test_parser_syslog.rb +46 -34
- data/test/plugin/test_sd_file.rb +17 -0
- data/test/plugin/test_sd_srv.rb +230 -0
- data/test/plugin_helper/data/cert/cert-with-CRLF.pem +19 -0
- data/test/plugin_helper/test_cert_option.rb +2 -0
- data/test/plugin_helper/test_child_process.rb +5 -3
- data/test/test_msgpack_factory.rb +18 -0
- metadata +14 -2
data/test/plugin/test_sd_file.rb
CHANGED
@@ -149,6 +149,23 @@ class FileServiceDiscoveryTest < ::Test::Unit::TestCase
|
|
149
149
|
assert_empty queue
|
150
150
|
end
|
151
151
|
|
152
|
+
test 'Skip if error is occured' do
|
153
|
+
@sd_file.extend(TestStatEventHelperWrapper)
|
154
|
+
|
155
|
+
create_tmp_config('config.json', JSON.generate([{ port: 1233, host: '127.0.0.1' }]))
|
156
|
+
@sd_file.configure(config_element('service_discovery', '', { 'path' => File.join(@dir, 'config.yml') }))
|
157
|
+
queue = []
|
158
|
+
|
159
|
+
FileUtils.rm_r(File.join(@dir, 'tmp', 'config.json'))
|
160
|
+
mock.proxy(@sd_file).refresh_file(queue).twice
|
161
|
+
|
162
|
+
@sd_file.start(queue)
|
163
|
+
assert_empty queue
|
164
|
+
|
165
|
+
@sd_file.resume
|
166
|
+
assert_empty queue
|
167
|
+
end
|
168
|
+
|
152
169
|
test 'if service is updated, service_in and service_out event happen' do
|
153
170
|
@sd_file.extend(TestStatEventHelperWrapper)
|
154
171
|
|
@@ -0,0 +1,230 @@
|
|
1
|
+
require_relative '../helper'
|
2
|
+
require 'fluent/plugin/sd_srv'
|
3
|
+
require 'fileutils'
|
4
|
+
require 'flexmock/test_unit'
|
5
|
+
require 'json'
|
6
|
+
|
7
|
+
class SrvServiceDiscoveryTest < ::Test::Unit::TestCase
|
8
|
+
SRV_RECORD1 = Resolv::DNS::Resource::IN::SRV.new(1, 10, 8081, 'service1.example.com')
|
9
|
+
SRV_RECORD2 = Resolv::DNS::Resource::IN::SRV.new(2, 20, 8082, 'service2.example.com')
|
10
|
+
|
11
|
+
sub_test_case 'configure' do
|
12
|
+
test 'set services ordered by priority' do
|
13
|
+
sdf = Fluent::Plugin::SrvServiceDiscovery.new
|
14
|
+
mock(Resolv::DNS).new { flexmock('dns_resolver', getresources: [SRV_RECORD2, SRV_RECORD1], getaddress: '127.0.0.1') }
|
15
|
+
|
16
|
+
sdf.configure(config_element('service_discovery', '', { 'service' => 'service1', 'hostname' => 'example.com' }))
|
17
|
+
assert_equal Fluent::Plugin::ServiceDiscovery::Service.new(:srv, '127.0.0.1', 8081, 'service1.example.com', 10, false, '', '', nil), sdf.services[0]
|
18
|
+
assert_equal Fluent::Plugin::ServiceDiscovery::Service.new(:srv, '127.0.0.1', 8082, 'service2.example.com', 20, false, '', '', nil), sdf.services[1]
|
19
|
+
end
|
20
|
+
|
21
|
+
test 'reuturn host name without revolving name when dns_lookup is flase' do
|
22
|
+
sdf = Fluent::Plugin::SrvServiceDiscovery.new
|
23
|
+
mock(Resolv::DNS).new { flexmock('dns_resolver', getresources: [SRV_RECORD1, SRV_RECORD2], getaddress: '127.0.0.1') }
|
24
|
+
|
25
|
+
sdf.configure(config_element('service_discovery', '', { 'service' => 'service1', 'hostname' => 'example.com', 'dns_lookup' => false }))
|
26
|
+
assert_equal Fluent::Plugin::ServiceDiscovery::Service.new(:srv, 'service1.example.com', 8081, 'service1.example.com', 10, false, '', '', nil), sdf.services[0]
|
27
|
+
assert_equal Fluent::Plugin::ServiceDiscovery::Service.new(:srv, 'service2.example.com', 8082, 'service2.example.com', 20, false, '', '', nil), sdf.services[1]
|
28
|
+
end
|
29
|
+
|
30
|
+
test 'pass a value as :nameserver to Resolve::DNS when dns_server_host is given' do
|
31
|
+
sdf = Fluent::Plugin::SrvServiceDiscovery.new
|
32
|
+
mock(Resolv::DNS).new(nameserver: '8.8.8.8') { flexmock('dns_resolver', getresources: [SRV_RECORD1, SRV_RECORD2], getaddress: '127.0.0.1') }
|
33
|
+
|
34
|
+
sdf.configure(config_element('service_discovery', '', { 'service' => 'service1', 'hostname' => 'example.com', 'dns_server_host' => '8.8.8.8' }))
|
35
|
+
assert_equal Fluent::Plugin::ServiceDiscovery::Service.new(:srv, '127.0.0.1', 8081, 'service1.example.com', 10, false, '', '', nil), sdf.services[0]
|
36
|
+
assert_equal Fluent::Plugin::ServiceDiscovery::Service.new(:srv, '127.0.0.1', 8082, 'service2.example.com', 20, false, '', '', nil), sdf.services[1]
|
37
|
+
end
|
38
|
+
|
39
|
+
test 'pass a value as :nameserver_port to Resolve::DNS when dns_server_host has port' do
|
40
|
+
sdf = Fluent::Plugin::SrvServiceDiscovery.new
|
41
|
+
mock(Resolv::DNS).new(nameserver_port: [['8.8.8.8', 8080]]) { flexmock('dns_resolver', getresources: [SRV_RECORD1, SRV_RECORD2], getaddress: '127.0.0.1') }
|
42
|
+
|
43
|
+
sdf.configure(config_element('service_discovery', '', { 'service' => 'service1', 'hostname' => 'example.com', 'dns_server_host' => '8.8.8.8:8080' }))
|
44
|
+
assert_equal Fluent::Plugin::ServiceDiscovery::Service.new(:srv, '127.0.0.1', 8081, 'service1.example.com', 10, false, '', '', nil), sdf.services[0]
|
45
|
+
assert_equal Fluent::Plugin::ServiceDiscovery::Service.new(:srv, '127.0.0.1', 8082, 'service2.example.com', 20, false, '', '', nil), sdf.services[1]
|
46
|
+
end
|
47
|
+
|
48
|
+
test 'target follows RFC2782' do
|
49
|
+
sdf = Fluent::Plugin::SrvServiceDiscovery.new
|
50
|
+
mock = flexmock('dns_resolver', getaddress: '127.0.0.1')
|
51
|
+
.should_receive(:getresources).with("_service1._tcp.example.com", Resolv::DNS::Resource::IN::SRV)
|
52
|
+
.and_return([SRV_RECORD1, SRV_RECORD2])
|
53
|
+
.mock
|
54
|
+
|
55
|
+
mock(Resolv::DNS).new { mock }
|
56
|
+
sdf.configure(config_element('service_discovery', '', { 'service' => 'service1', 'hostname' => 'example.com' }))
|
57
|
+
assert_equal Fluent::Plugin::ServiceDiscovery::Service.new(:srv, '127.0.0.1', 8081, 'service1.example.com', 10, false, '', '', nil), sdf.services[0]
|
58
|
+
assert_equal Fluent::Plugin::ServiceDiscovery::Service.new(:srv, '127.0.0.1', 8082, 'service2.example.com', 20, false, '', '', nil), sdf.services[1]
|
59
|
+
end
|
60
|
+
|
61
|
+
test 'can change protocol' do
|
62
|
+
sdf = Fluent::Plugin::SrvServiceDiscovery.new
|
63
|
+
mock = flexmock('dns_resolver', getaddress: '127.0.0.1')
|
64
|
+
.should_receive(:getresources).with("_service1._udp.example.com", Resolv::DNS::Resource::IN::SRV)
|
65
|
+
.and_return([SRV_RECORD1, SRV_RECORD2])
|
66
|
+
.mock
|
67
|
+
|
68
|
+
mock(Resolv::DNS).new { mock }
|
69
|
+
sdf.configure(config_element('service_discovery', '', { 'service' => 'service1', 'hostname' => 'example.com', 'proto' => 'udp' }))
|
70
|
+
assert_equal Fluent::Plugin::ServiceDiscovery::Service.new(:srv, '127.0.0.1', 8081, 'service1.example.com', 10, false, '', '', nil), sdf.services[0]
|
71
|
+
assert_equal Fluent::Plugin::ServiceDiscovery::Service.new(:srv, '127.0.0.1', 8082, 'service2.example.com', 20, false, '', '', nil), sdf.services[1]
|
72
|
+
end
|
73
|
+
|
74
|
+
test 'can set password, username, password' do
|
75
|
+
sdf = Fluent::Plugin::SrvServiceDiscovery.new
|
76
|
+
mock(Resolv::DNS).new { flexmock('dns_resolver', getresources: [SRV_RECORD2, SRV_RECORD1], getaddress: '127.0.0.1') }
|
77
|
+
|
78
|
+
sdf.configure(config_element('service_discovery', '', { 'service' => 'service1', 'hostname' => 'example.com', 'shared_key' => 'key', 'username' => 'user', 'password' => 'pass' }))
|
79
|
+
assert_equal Fluent::Plugin::ServiceDiscovery::Service.new(:srv, '127.0.0.1', 8081, 'service1.example.com', 10, false, 'user', 'pass', 'key'), sdf.services[0]
|
80
|
+
assert_equal Fluent::Plugin::ServiceDiscovery::Service.new(:srv, '127.0.0.1', 8082, 'service2.example.com', 20, false, 'user', 'pass', 'key'), sdf.services[1]
|
81
|
+
end
|
82
|
+
end
|
83
|
+
|
84
|
+
sub_test_case '#start' do
|
85
|
+
module TestTimerEventHelperWrapper
|
86
|
+
# easy to control statsevent
|
87
|
+
def timer_execute(_name, _interval, &block)
|
88
|
+
@test_timer_event_helper_wrapper_context = Fiber.new do
|
89
|
+
loop do
|
90
|
+
block.call
|
91
|
+
|
92
|
+
if Fiber.yield == :finish
|
93
|
+
break
|
94
|
+
end
|
95
|
+
end
|
96
|
+
end
|
97
|
+
|
98
|
+
resume
|
99
|
+
end
|
100
|
+
|
101
|
+
def resume
|
102
|
+
@test_timer_event_helper_wrapper_context.resume(:resume)
|
103
|
+
end
|
104
|
+
|
105
|
+
def shutdown
|
106
|
+
super
|
107
|
+
|
108
|
+
if @test_timer_event_helper_wrapper_context
|
109
|
+
@test_timer_event_helper_wrapper_context.resume(:finish)
|
110
|
+
end
|
111
|
+
|
112
|
+
end
|
113
|
+
end
|
114
|
+
|
115
|
+
setup do
|
116
|
+
sds = Fluent::Plugin::SrvServiceDiscovery.new
|
117
|
+
@sd_srv = sds
|
118
|
+
end
|
119
|
+
|
120
|
+
teardown do
|
121
|
+
if @sd_srv
|
122
|
+
@sd_srv.stop unless @sd_srv.stopped?
|
123
|
+
@sd_srv.before_shutdown unless @sd_srv.before_shutdown?
|
124
|
+
@sd_srv.shutdown unless @sd_srv.shutdown?
|
125
|
+
@sd_srv.after_shutdown unless @sd_srv.after_shutdown?
|
126
|
+
@sd_srv.close unless @sd_srv.closed?
|
127
|
+
@sd_srv.terminate unless @sd_srv.terminated?
|
128
|
+
end
|
129
|
+
end
|
130
|
+
|
131
|
+
test 'Skip if srv record is not updated' do
|
132
|
+
@sd_srv.extend(TestTimerEventHelperWrapper)
|
133
|
+
mock(Resolv::DNS).new { flexmock('dns_resolver', getresources: [SRV_RECORD2, SRV_RECORD1], getaddress: '127.0.0.1') }
|
134
|
+
@sd_srv.configure(config_element('service_discovery', '', { 'service' => 'service1', 'hostname' => 'example.com' }))
|
135
|
+
queue = []
|
136
|
+
|
137
|
+
@sd_srv.start(queue)
|
138
|
+
assert_empty queue
|
139
|
+
|
140
|
+
@sd_srv.resume
|
141
|
+
assert_empty queue
|
142
|
+
end
|
143
|
+
|
144
|
+
test 'Skip if DNS resolver raise an error' do
|
145
|
+
@sd_srv.extend(TestTimerEventHelperWrapper)
|
146
|
+
mock = flexmock('dns_resolver', getaddress: '127.0.0.1')
|
147
|
+
.should_receive(:getresources)
|
148
|
+
.and_return([SRV_RECORD1, SRV_RECORD2])
|
149
|
+
.and_return { raise 'some error' } # for start
|
150
|
+
.and_return { raise 'some error' } # for resume
|
151
|
+
.mock
|
152
|
+
|
153
|
+
mock(Resolv::DNS).new { mock }
|
154
|
+
@sd_srv.configure(config_element('service_discovery', '', { 'service' => 'service1', 'hostname' => 'example.com' }))
|
155
|
+
queue = []
|
156
|
+
|
157
|
+
@sd_srv.start(queue)
|
158
|
+
assert_empty queue
|
159
|
+
|
160
|
+
@sd_srv.resume
|
161
|
+
assert_empty queue
|
162
|
+
end
|
163
|
+
|
164
|
+
test 'if service is updated, service_in and service_out event happen' do
|
165
|
+
@sd_srv.extend(TestTimerEventHelperWrapper)
|
166
|
+
mock = flexmock('dns_resolver', getaddress: '127.0.0.1')
|
167
|
+
.should_receive(:getresources)
|
168
|
+
.and_return([SRV_RECORD1])
|
169
|
+
.and_return([SRV_RECORD2])
|
170
|
+
.mock
|
171
|
+
|
172
|
+
mock(Resolv::DNS).new { mock }
|
173
|
+
@sd_srv.configure(config_element('service_discovery', '', { 'service' => 'service1', 'hostname' => 'example.com', 'dns_lookup' => false }))
|
174
|
+
queue = []
|
175
|
+
|
176
|
+
@sd_srv.start(queue)
|
177
|
+
join = queue.shift
|
178
|
+
drain = queue.shift
|
179
|
+
assert_equal Fluent::Plugin::ServiceDiscovery::SERVICE_IN, join.type
|
180
|
+
assert_equal 8082, join.service.port
|
181
|
+
assert_equal 'service2.example.com', join.service.host
|
182
|
+
|
183
|
+
assert_equal Fluent::Plugin::ServiceDiscovery::SERVICE_OUT, drain.type
|
184
|
+
assert_equal 8081, drain.service.port
|
185
|
+
assert_equal 'service1.example.com', drain.service.host
|
186
|
+
end
|
187
|
+
|
188
|
+
test 'if service is deleted, service_out event happens' do
|
189
|
+
@sd_srv.extend(TestTimerEventHelperWrapper)
|
190
|
+
mock = flexmock('dns_resolver', getaddress: '127.0.0.1')
|
191
|
+
.should_receive(:getresources)
|
192
|
+
.and_return([SRV_RECORD1, SRV_RECORD2])
|
193
|
+
.and_return([SRV_RECORD2])
|
194
|
+
.mock
|
195
|
+
|
196
|
+
mock(Resolv::DNS).new { mock }
|
197
|
+
@sd_srv.configure(config_element('service_discovery', '', { 'service' => 'service1', 'hostname' => 'example.com', 'dns_lookup' => false }))
|
198
|
+
queue = []
|
199
|
+
|
200
|
+
@sd_srv.start(queue)
|
201
|
+
|
202
|
+
assert_equal 1, queue.size
|
203
|
+
drain = queue.shift
|
204
|
+
assert_equal Fluent::Plugin::ServiceDiscovery::SERVICE_OUT, drain.type
|
205
|
+
assert_equal 8081, drain.service.port
|
206
|
+
assert_equal 'service1.example.com', drain.service.host
|
207
|
+
end
|
208
|
+
|
209
|
+
test 'if new service is added, service_in event happens' do
|
210
|
+
@sd_srv.extend(TestTimerEventHelperWrapper)
|
211
|
+
mock = flexmock('dns_resolver', getaddress: '127.0.0.1')
|
212
|
+
.should_receive(:getresources)
|
213
|
+
.and_return([SRV_RECORD2])
|
214
|
+
.and_return([SRV_RECORD1, SRV_RECORD2])
|
215
|
+
.mock
|
216
|
+
|
217
|
+
mock(Resolv::DNS).new { mock }
|
218
|
+
@sd_srv.configure(config_element('service_discovery', '', { 'service' => 'service1', 'hostname' => 'example.com', 'dns_lookup' => false }))
|
219
|
+
queue = []
|
220
|
+
|
221
|
+
@sd_srv.start(queue)
|
222
|
+
|
223
|
+
assert_equal 1, queue.size
|
224
|
+
join = queue.shift
|
225
|
+
assert_equal Fluent::Plugin::ServiceDiscovery::SERVICE_IN, join.type
|
226
|
+
assert_equal 8081, join.service.port
|
227
|
+
assert_equal 'service1.example.com', join.service.host
|
228
|
+
end
|
229
|
+
end
|
230
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
-----BEGIN CERTIFICATE-----
|
2
|
+
MIIDLDCCAhSgAwIBAgIIEJHFsHrKBGYwDQYJKoZIhvcNAQELBQAwJjEQMA4GA1UE
|
3
|
+
ChMHRmx1ZW50ZDESMBAGA1UEAxMJbG9jYWxob3N0MB4XDTE5MDYxOTA1MTM0NVoX
|
4
|
+
DTE5MDkxODExMTg0NVowJjEQMA4GA1UEChMHRmx1ZW50ZDESMBAGA1UEAxMJbG9j
|
5
|
+
YWxob3N0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArbUTk5n5RruI
|
6
|
+
QGhK1T8g/emKonlfWNMSj/J/f/U9NJ14ugIxyHBMqx4WaTyA4zjT2VJO5tRBe385
|
7
|
+
zlIUf8i+x7Ovt/MgsjiwXyKv7qdsE5KHLq+VXJfA+s5vAAyzBHY/BA7xxh/QqCI8
|
8
|
+
a/a1OyHyaQ9pFRFXtQBlTH7Fc1qSw5Yg0EXofa6YIBQuDjfqa7FRPj+bEWDO5PUq
|
9
|
+
OMzH5XKBUPS9GLHOqia0CnzF2a51TArC0Dl1oNFa7myVmjBuNtkG88Fkd7YNzGa+
|
10
|
+
sNBJPmuGvFXuU3XPEnrtARO/SG4g9/MQUvfMI3jFFOJAMmEKd8QXxO5FgIuEnaNO
|
11
|
+
hVRVH/e9wwIDAQABo14wXDAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYIKwYB
|
12
|
+
BQUHAwEGCCsGAQUFBwMCMAwGA1UdEwEB/wQCMAAwHQYDVR0OBBYEFPLdOVnVWuuB
|
13
|
+
7Pnvpgte4BHitzFYMA0GCSqGSIb3DQEBCwUAA4IBAQBp8LAzjWIJapwTBnnivwZk
|
14
|
+
D6Lr028mZIacbBZKsmmPi0VvDFqCvUAbHN8ytPlRBWnvvkihDkZs1TwcDCXGsWYs
|
15
|
+
dNNwsYGpk3mQxsHQ9atvy0mQGLDlfaSs/329bfVCw1cPFo9n+MeivSBoE6asdIbH
|
16
|
+
tOW3kk1XtJZ2qQJJRvexFImZc0z8c2cG0+eR5hQxQd9bLnAczi/8mZ8VzaU/O3UU
|
17
|
+
OJoVuyp0AA8f2f0f1QDaeH9stWZtJQj3ZX1DWHRE3OmVkoBdlt8EHYGggtvQaLIF
|
18
|
+
XbHigLHzYztMjmDt4fmRczu/Fu6M4xNro8jLgjiIjqlLBjDZiKrSbOwgyebwFDlv
|
19
|
+
-----END CERTIFICATE-----
|
@@ -12,5 +12,7 @@ class CertOptionPluginHelperTest < Test::Unit::TestCase
|
|
12
12
|
assert_equal(1, certs.length)
|
13
13
|
certs = d.cert_option_certificates_from_file("test/plugin_helper/data/cert/cert-with-no-newline.pem")
|
14
14
|
assert_equal(1, certs.length)
|
15
|
+
certs = d.cert_option_certificates_from_file("test/plugin_helper/data/cert/cert-with-CRLF.pem")
|
16
|
+
assert_equal(1, certs.length)
|
15
17
|
end
|
16
18
|
end
|
@@ -286,9 +286,11 @@ class ChildProcessTest < Test::Unit::TestCase
|
|
286
286
|
assert_equal [], @d.log.out.logs
|
287
287
|
|
288
288
|
@d.stop # nothing occurs
|
289
|
-
|
290
|
-
|
291
|
-
|
289
|
+
lines1 = nil
|
290
|
+
waiting(TEST_WAIT_INTERVAL_FOR_LOOP * 3) do
|
291
|
+
lines1 = ary.size
|
292
|
+
lines1 > 1
|
293
|
+
end
|
292
294
|
|
293
295
|
pid = @d._child_process_processes.keys.first
|
294
296
|
# default value 10 is too long for test
|
@@ -0,0 +1,18 @@
|
|
1
|
+
require_relative 'helper'
|
2
|
+
require 'fluent/msgpack_factory'
|
3
|
+
|
4
|
+
class MessagePackFactoryTest < Test::Unit::TestCase
|
5
|
+
test 'call log.warn only once' do
|
6
|
+
klass = Class.new do
|
7
|
+
include Fluent::MessagePackFactory::Mixin
|
8
|
+
end
|
9
|
+
|
10
|
+
mp = klass.new
|
11
|
+
|
12
|
+
mock.proxy($log).warn(anything).once
|
13
|
+
|
14
|
+
assert mp.msgpack_factory
|
15
|
+
assert mp.msgpack_factory
|
16
|
+
assert mp.msgpack_factory
|
17
|
+
end
|
18
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fluentd
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.10.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sadayuki Furuhashi
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-03-
|
11
|
+
date: 2020-03-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: msgpack
|
@@ -359,6 +359,7 @@ files:
|
|
359
359
|
- ".github/ISSUE_TEMPLATE/bug_report.md"
|
360
360
|
- ".github/ISSUE_TEMPLATE/feature_request.md"
|
361
361
|
- ".github/PULL_REQUEST_TEMPLATE.md"
|
362
|
+
- ".github/workflows/issue-auto-closer.yml"
|
362
363
|
- ".gitignore"
|
363
364
|
- ".gitlab-ci.yml"
|
364
365
|
- ".travis.yml"
|
@@ -576,6 +577,7 @@ files:
|
|
576
577
|
- lib/fluent/plugin/parser_syslog.rb
|
577
578
|
- lib/fluent/plugin/parser_tsv.rb
|
578
579
|
- lib/fluent/plugin/sd_file.rb
|
580
|
+
- lib/fluent/plugin/sd_srv.rb
|
579
581
|
- lib/fluent/plugin/sd_static.rb
|
580
582
|
- lib/fluent/plugin/service_discovery.rb
|
581
583
|
- lib/fluent/plugin/socket_util.rb
|
@@ -707,6 +709,8 @@ files:
|
|
707
709
|
- test/plugin/data/sd_file/config.yaml
|
708
710
|
- test/plugin/data/sd_file/config.yml
|
709
711
|
- test/plugin/data/sd_file/invalid_config.yml
|
712
|
+
- test/plugin/in_tail/test_fifo.rb
|
713
|
+
- test/plugin/in_tail/test_io_handler.rb
|
710
714
|
- test/plugin/in_tail/test_position_file.rb
|
711
715
|
- test/plugin/out_forward/test_ack_handler.rb
|
712
716
|
- test/plugin/out_forward/test_connection_manager.rb
|
@@ -789,10 +793,12 @@ files:
|
|
789
793
|
- test/plugin/test_parser_syslog.rb
|
790
794
|
- test/plugin/test_parser_tsv.rb
|
791
795
|
- test/plugin/test_sd_file.rb
|
796
|
+
- test/plugin/test_sd_srv.rb
|
792
797
|
- test/plugin/test_storage.rb
|
793
798
|
- test/plugin/test_storage_local.rb
|
794
799
|
- test/plugin/test_string_util.rb
|
795
800
|
- test/plugin_helper/data/cert/cert-key.pem
|
801
|
+
- test/plugin_helper/data/cert/cert-with-CRLF.pem
|
796
802
|
- test/plugin_helper/data/cert/cert-with-no-newline.pem
|
797
803
|
- test/plugin_helper/data/cert/cert.pem
|
798
804
|
- test/plugin_helper/data/cert/generate_cert.rb
|
@@ -851,6 +857,7 @@ files:
|
|
851
857
|
- test/test_logger_initializer.rb
|
852
858
|
- test/test_match.rb
|
853
859
|
- test/test_mixin.rb
|
860
|
+
- test/test_msgpack_factory.rb
|
854
861
|
- test/test_output.rb
|
855
862
|
- test/test_plugin.rb
|
856
863
|
- test/test_plugin_classes.rb
|
@@ -929,6 +936,8 @@ test_files:
|
|
929
936
|
- test/plugin/data/sd_file/config.yaml
|
930
937
|
- test/plugin/data/sd_file/config.yml
|
931
938
|
- test/plugin/data/sd_file/invalid_config.yml
|
939
|
+
- test/plugin/in_tail/test_fifo.rb
|
940
|
+
- test/plugin/in_tail/test_io_handler.rb
|
932
941
|
- test/plugin/in_tail/test_position_file.rb
|
933
942
|
- test/plugin/out_forward/test_ack_handler.rb
|
934
943
|
- test/plugin/out_forward/test_connection_manager.rb
|
@@ -1011,10 +1020,12 @@ test_files:
|
|
1011
1020
|
- test/plugin/test_parser_syslog.rb
|
1012
1021
|
- test/plugin/test_parser_tsv.rb
|
1013
1022
|
- test/plugin/test_sd_file.rb
|
1023
|
+
- test/plugin/test_sd_srv.rb
|
1014
1024
|
- test/plugin/test_storage.rb
|
1015
1025
|
- test/plugin/test_storage_local.rb
|
1016
1026
|
- test/plugin/test_string_util.rb
|
1017
1027
|
- test/plugin_helper/data/cert/cert-key.pem
|
1028
|
+
- test/plugin_helper/data/cert/cert-with-CRLF.pem
|
1018
1029
|
- test/plugin_helper/data/cert/cert-with-no-newline.pem
|
1019
1030
|
- test/plugin_helper/data/cert/cert.pem
|
1020
1031
|
- test/plugin_helper/data/cert/generate_cert.rb
|
@@ -1073,6 +1084,7 @@ test_files:
|
|
1073
1084
|
- test/test_logger_initializer.rb
|
1074
1085
|
- test/test_match.rb
|
1075
1086
|
- test/test_mixin.rb
|
1087
|
+
- test/test_msgpack_factory.rb
|
1076
1088
|
- test/test_output.rb
|
1077
1089
|
- test/test_plugin.rb
|
1078
1090
|
- test/test_plugin_classes.rb
|