fluent-plugin-elb-access-log 0.2.5 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: dbe80e7b426fdabfc37fff094b23badaf9736b24
4
- data.tar.gz: 8b1be5996da48ef160dfe7c189dd26de9d3e02b1
3
+ metadata.gz: 95d58c50d53bc1439025b341a16b9074e0c6f58f
4
+ data.tar.gz: 54795fa12a9d1cf36bb74b1900f978e864201a4c
5
5
  SHA512:
6
- metadata.gz: f50fb32263a9d0e464d5242f2cfc2b22e3f7becf3d88afb8fb7d6bcd019fdf77a08ada3be19e69351ab2680997743282398c982b81e0c77c0c46c0c159a69b3c
7
- data.tar.gz: 7423856a64b1bc5e651f2b4f6754a2e308f4a1f2d78570d1ab723f5059c8066c5569f814eabd76b2f06629dcc6dd158ba889837a9586c24a9c744cd8b4494874
6
+ metadata.gz: 01be0d13bf848cee3166281aba86466b4c694c72d8134642a3af5792fd759aeb6a94a95ae1f9c00c00c9b42db66f5406a46bda5e273fd2b61d43dd6f62bbab60
7
+ data.tar.gz: f286515bbee08eef05c9f796b00c678a05d820722e395273ed36f8d104e57ce19d3d0007c92ac85142f9a00a5ce8edb096f38d814ce13da32e5d91c39a436b3f
data/.gitignore CHANGED
@@ -12,3 +12,4 @@
12
12
  *.o
13
13
  *.a
14
14
  mkmf.log
15
+ test.rb
data/README.md CHANGED
@@ -66,6 +66,9 @@ Or install it yourself as:
66
66
  "received_bytes":0,
67
67
  "sent_bytes":3,
68
68
  "request":"GET http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/ HTTP/1.1",
69
+ "user_agent":"curl/7.30.0",
70
+ "ssl_cipher":"-",
71
+ "ssl_protocol":"-",
69
72
  "request.method":"GET",
70
73
  "request.uri":"http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/",
71
74
  "request.http_version":"HTTP/1.1",
@@ -19,7 +19,7 @@ Gem::Specification.new do |spec|
19
19
  spec.require_paths = ['lib']
20
20
 
21
21
  spec.add_dependency 'fluentd'
22
- spec.add_dependency 'aws-sdk', '~> 2', '< 2.1'
22
+ spec.add_dependency 'aws-sdk', '~> 2.1.2'
23
23
  spec.add_dependency 'addressable'
24
24
  spec.add_development_dependency 'bundler'
25
25
  spec.add_development_dependency 'rake'
@@ -19,6 +19,9 @@ class Fluent::ElbAccessLogInput < Fluent::Input
19
19
  'received_bytes' => :to_i,
20
20
  'sent_bytes' => :to_i,
21
21
  'request' => nil,
22
+ 'user_agent' => nil,
23
+ 'ssl_cipher' => nil,
24
+ 'ssl_protocol' => nil,
22
25
  }
23
26
 
24
27
  unless method_defined?(:log)
@@ -63,11 +66,16 @@ class Fluent::ElbAccessLogInput < Fluent::Input
63
66
 
64
67
  FileUtils.touch(@tsfile_path)
65
68
  FileUtils.touch(@histfile_path)
69
+ tsfile_start_datetime = parse_tsfile
66
70
 
67
- if @start_datetime
71
+ if @start_datetime and not tsfile_start_datetime
68
72
  @start_datetime = Time.parse(@start_datetime).utc
69
73
  else
70
- @start_datetime = Time.parse(File.read(@tsfile_path)).utc rescue Time.now.utc
74
+ if @start_datetime
75
+ log.warn("start_datetime(#{@start_datetime}) is set. but tsfile datetime(#{tsfile_start_datetime}) is used")
76
+ end
77
+
78
+ @start_datetime = tsfile_start_datetime || Time.now.utc
71
79
  end
72
80
 
73
81
  @history = load_history
@@ -129,7 +137,7 @@ class Fluent::ElbAccessLogInput < Fluent::Input
129
137
  end
130
138
 
131
139
  unless @history.include?(obj.key)
132
- access_log = client.get_object(bucket: @s3_bucket, key: obj.key).first.body.string
140
+ access_log = client.get_object(bucket: @s3_bucket, key: obj.key).body.string
133
141
  emit_access_log(access_log)
134
142
  last_timestamp = logfile_datetime
135
143
  @history.push(obj.key)
@@ -190,8 +198,14 @@ class Fluent::ElbAccessLogInput < Fluent::Input
190
198
 
191
199
  # request
192
200
  parsed[11] ||= ''
193
- parsed[11].gsub!(/\A"/, '')
194
- parsed[11].gsub!(/".*\z/, '')
201
+ parsed[11].sub!(/\A"/, '')
202
+ parsed[11].sub!(/"(.*)\z/, '')
203
+
204
+ user_agent, ssl_cipher, ssl_protocol = $1.strip.split(' ', 3)
205
+ user_agent.sub!(/\A"/, '').sub!(/"\z/, '') if user_agent
206
+ parsed[12] = user_agent
207
+ parsed[13] = ssl_cipher
208
+ parsed[14] = ssl_protocol
195
209
  rescue => e2
196
210
  @log.warn("#{e.message}: #{line}")
197
211
  end
@@ -205,6 +219,8 @@ class Fluent::ElbAccessLogInput < Fluent::Input
205
219
  end
206
220
 
207
221
  def split_address_port!(record, prefix)
222
+ address_port = record["#{prefix}_port"]
223
+ return unless address_port
208
224
  address, port = record["#{prefix}_port"].split(':', 2)
209
225
  record[prefix] = address
210
226
  record["#{prefix}_port"] = port.to_i
@@ -245,6 +261,12 @@ class Fluent::ElbAccessLogInput < Fluent::Input
245
261
  end
246
262
  end
247
263
 
264
+ def parse_tsfile
265
+ Time.parse(File.read(@tsfile_path)).utc
266
+ rescue
267
+ nil
268
+ end
269
+
248
270
  def client
249
271
  return @client if @client
250
272
 
@@ -1,3 +1,3 @@
1
1
  module FluentPluginElbAccessLog
2
- VERSION = '0.2.5'
2
+ VERSION = '0.3.0'
3
3
  end
@@ -12,6 +12,7 @@ describe 'Fluent::ElbAccessLogInput#configure' do
12
12
  allow(FileUtils).to receive(:touch)
13
13
  allow(File).to receive(:read) { nil }
14
14
  allow_any_instance_of(Fluent::ElbAccessLogInput).to receive(:load_history) { [] }
15
+ allow_any_instance_of(Fluent::ElbAccessLogInput).to receive(:parse_tsfile) { nil }
15
16
  end
16
17
 
17
18
  context 'when default' do
@@ -104,4 +105,65 @@ describe 'Fluent::ElbAccessLogInput#configure' do
104
105
  expect(driver.instance.debug).to be_truthy
105
106
  end
106
107
  end
108
+
109
+ context 'when start_datetime is set' do
110
+ let(:start_datetime) { '2015-01-01 01:02:03 UTC' }
111
+
112
+ let(:fluentd_conf) do
113
+ {
114
+ account_id: account_id,
115
+ s3_bucket: s3_bucket,
116
+ region: region,
117
+ start_datetime: start_datetime
118
+ }
119
+ end
120
+
121
+ it do
122
+ expect(driver.instance.start_datetime).to eq Time.parse(start_datetime)
123
+ end
124
+ end
125
+
126
+ context 'when tsfile datetime is set' do
127
+ let(:tsfile_datetime) { '2015-02-01 01:02:03 UTC' }
128
+
129
+ let(:fluentd_conf) do
130
+ {
131
+ account_id: account_id,
132
+ s3_bucket: s3_bucket,
133
+ region: region,
134
+ start_datetime: tsfile_datetime
135
+ }
136
+ end
137
+
138
+ before do
139
+ allow_any_instance_of(Fluent::ElbAccessLogInput).to receive(:parse_tsfile) { Time.parse(tsfile_datetime) }
140
+ end
141
+
142
+ it do
143
+ expect(driver.instance.start_datetime).to eq Time.parse(tsfile_datetime)
144
+ end
145
+ end
146
+
147
+ context 'when start_datetime and tsfile datetime are set' do
148
+ let(:start_datetime) { '2015-01-01 01:02:03 UTC' }
149
+ let(:tsfile_datetime) { '2015-02-01 01:02:03 UTC' }
150
+
151
+ let(:fluentd_conf) do
152
+ {
153
+ account_id: account_id,
154
+ s3_bucket: s3_bucket,
155
+ region: region,
156
+ start_datetime: start_datetime
157
+ }
158
+ end
159
+
160
+ before do
161
+ allow_any_instance_of(Fluent::ElbAccessLogInput).to receive(:parse_tsfile) { Time.parse(tsfile_datetime) }
162
+ allow_any_instance_of(Fluent::Test::TestLogger).to receive(:warn).with("start_datetime(#{start_datetime}) is set. but tsfile datetime(#{tsfile_datetime}) is used")
163
+ end
164
+
165
+ it do
166
+ expect(driver.instance.start_datetime).to eq Time.parse(tsfile_datetime)
167
+ end
168
+ end
107
169
  end
@@ -30,6 +30,7 @@ describe Fluent::ElbAccessLogInput do
30
30
  Timecop.freeze(today)
31
31
  allow_any_instance_of(Fluent::ElbAccessLogInput).to receive(:client) { client }
32
32
  allow_any_instance_of(Fluent::ElbAccessLogInput).to receive(:load_history) { [] }
33
+ allow_any_instance_of(Fluent::ElbAccessLogInput).to receive(:parse_tsfile) { nil }
33
34
  allow(FileUtils).to receive(:touch)
34
35
  end
35
36
 
@@ -56,15 +57,15 @@ describe Fluent::ElbAccessLogInput do
56
57
  context 'when access log exists' do
57
58
  let(:today_access_log) do
58
59
  <<-EOS
59
- 2015-05-24T19:55:36.000000Z hoge 14.14.124.20:57673 10.0.199.184:80 0.000053 0.000913 0.000036 200 200 0 3 "GET http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/ HTTP/1.1" "curl/7.30.0" - -
60
- 2015-05-24T19:55:36.000000Z hoge 14.14.124.20:57673 10.0.199.184:80 0.000053 0.000913 0.000036 200 200 0 3 "GET http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/ HTTP/1.1" "curl/7.30.0" - -
60
+ 2015-05-24T19:55:36.000000Z hoge 14.14.124.20:57673 10.0.199.184:80 0.000053 0.000913 0.000036 200 200 0 3 "GET http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/ HTTP/1.1" "curl/7.30.0" ssl_cipher ssl_protocol
61
+ 2015-05-24T19:55:36.000000Z hoge 14.14.124.20:57673 10.0.199.184:80 0.000053 0.000913 0.000036 200 200 0 3 "GET http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/ HTTP/1.1" "curl/7.30.0" ssl_cipher ssl_protocol
61
62
  EOS
62
63
  end
63
64
 
64
65
  let(:tomorrow_access_log) do
65
66
  <<-EOS
66
- 2015-05-25T19:55:36.000000Z hoge 14.14.124.20:57673 10.0.199.184:80 0.000053 0.000913 0.000036 200 200 0 3 "GET http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/ HTTP/1.1" "curl/7.30.0" - -
67
- 2015-05-25T19:55:36.000000Z hoge 14.14.124.20:57673 10.0.199.184:80 0.000053 0.000913 0.000036 200 200 0 3 "GET http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/ HTTP/1.1" "curl/7.30.0" - -
67
+ 2015-05-25T19:55:36.000000Z hoge 14.14.124.20:57673 10.0.199.184:80 0.000053 0.000913 0.000036 200 200 0 3 "GET http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/ HTTP/1.1" "curl/7.30.0" ssl_cipher ssl_protocol
68
+ 2015-05-25T19:55:36.000000Z hoge 14.14.124.20:57673 10.0.199.184:80 0.000053 0.000913 0.000036 200 200 0 3 "GET http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/ HTTP/1.1" "curl/7.30.0" ssl_cipher ssl_protocol
68
69
  EOS
69
70
  end
70
71
 
@@ -82,11 +83,11 @@ describe Fluent::ElbAccessLogInput do
82
83
  end
83
84
 
84
85
  expect(client).to receive(:get_object).with(bucket: s3_bucket, key: today_object_key) do
85
- [double('today_s3_object', body: StringIO.new(today_access_log))]
86
+ double('today_s3_object', body: StringIO.new(today_access_log))
86
87
  end
87
88
 
88
89
  expect(client).to receive(:get_object).with(bucket: s3_bucket, key: tomorrow_object_key) do
89
- [double('tomorrow_s3_object', body: StringIO.new(tomorrow_access_log))]
90
+ double('tomorrow_s3_object', body: StringIO.new(tomorrow_access_log))
90
91
  end
91
92
 
92
93
  expect(driver.instance).to receive(:save_timestamp).with(tomorrow)
@@ -113,6 +114,9 @@ describe Fluent::ElbAccessLogInput do
113
114
  "sent_bytes"=>3,
114
115
  "request"=>
115
116
  "GET http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/ HTTP/1.1",
117
+ "user_agent"=>"curl/7.30.0",
118
+ "ssl_cipher"=>"ssl_cipher",
119
+ "ssl_protocol"=>"ssl_protocol",
116
120
  "request.method"=>"GET",
117
121
  "request.uri"=>
118
122
  "http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/",
@@ -141,6 +145,9 @@ describe Fluent::ElbAccessLogInput do
141
145
  "sent_bytes"=>3,
142
146
  "request"=>
143
147
  "GET http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/ HTTP/1.1",
148
+ "user_agent"=>"curl/7.30.0",
149
+ "ssl_cipher"=>"ssl_cipher",
150
+ "ssl_protocol"=>"ssl_protocol",
144
151
  "request.method"=>"GET",
145
152
  "request.uri"=>
146
153
  "http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/",
@@ -169,6 +176,9 @@ describe Fluent::ElbAccessLogInput do
169
176
  "sent_bytes"=>3,
170
177
  "request"=>
171
178
  "GET http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/ HTTP/1.1",
179
+ "user_agent"=>"curl/7.30.0",
180
+ "ssl_cipher"=>"ssl_cipher",
181
+ "ssl_protocol"=>"ssl_protocol",
172
182
  "request.method"=>"GET",
173
183
  "request.uri"=>
174
184
  "http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/",
@@ -197,6 +207,9 @@ describe Fluent::ElbAccessLogInput do
197
207
  "sent_bytes"=>3,
198
208
  "request"=>
199
209
  "GET http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/ HTTP/1.1",
210
+ "user_agent"=>"curl/7.30.0",
211
+ "ssl_cipher"=>"ssl_cipher",
212
+ "ssl_protocol"=>"ssl_protocol",
200
213
  "request.method"=>"GET",
201
214
  "request.uri"=>
202
215
  "http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/",
@@ -234,7 +247,7 @@ describe Fluent::ElbAccessLogInput do
234
247
  context 'when include bad URI' do
235
248
  let(:today_access_log) do
236
249
  <<-EOS
237
- 2015-05-24T19:55:36.000000Z hoge 14.14.124.20:57673 10.0.199.184:80 0.000053 0.000913 0.000036 200 200 0 3 "GET http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/ HTTP/1.1" "curl/7.30.0" - -
250
+ 2015-05-24T19:55:36.000000Z hoge 14.14.124.20:57673 10.0.199.184:80 0.000053 0.000913 0.000036 200 200 0 3 "GET http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/ HTTP/1.1" "curl/7.30.0" ssl_cipher ssl_protocol
238
251
  EOS
239
252
  end
240
253
 
@@ -247,7 +260,7 @@ describe Fluent::ElbAccessLogInput do
247
260
  end
248
261
 
249
262
  expect(client).to receive(:get_object).with(bucket: s3_bucket, key: today_object_key) do
250
- [double('today_s3_object', body: StringIO.new(today_access_log))]
263
+ double('today_s3_object', body: StringIO.new(today_access_log))
251
264
  end
252
265
 
253
266
  expect(driver.instance).to receive(:save_timestamp).with(today)
@@ -276,6 +289,9 @@ describe Fluent::ElbAccessLogInput do
276
289
  "sent_bytes"=>3,
277
290
  "request"=>
278
291
  "GET http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/ HTTP/1.1",
292
+ "user_agent"=>"curl/7.30.0",
293
+ "ssl_cipher"=>"ssl_cipher",
294
+ "ssl_protocol"=>"ssl_protocol",
279
295
  "request.method"=>"GET",
280
296
  "request.uri"=>
281
297
  "http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/",
@@ -288,7 +304,7 @@ describe Fluent::ElbAccessLogInput do
288
304
  context 'when access log exists (with tag option)' do
289
305
  let(:today_access_log) do
290
306
  <<-EOS
291
- 2015-05-24T19:55:36.000000Z hoge 14.14.124.20:57673 10.0.199.184:80 0.000053 0.000913 0.000036 200 200 0 3 "GET http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/ HTTP/1.1" "curl/7.30.0" - -
307
+ 2015-05-24T19:55:36.000000Z hoge 14.14.124.20:57673 10.0.199.184:80 0.000053 0.000913 0.000036 200 200 0 3 "GET http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/ HTTP/1.1" "curl/7.30.0" ssl_cipher ssl_protocol
292
308
  EOS
293
309
  end
294
310
 
@@ -311,7 +327,7 @@ describe Fluent::ElbAccessLogInput do
311
327
  end
312
328
 
313
329
  expect(client).to receive(:get_object).with(bucket: s3_bucket, key: today_object_key) do
314
- [double('today_s3_object', body: StringIO.new(today_access_log))]
330
+ double('today_s3_object', body: StringIO.new(today_access_log))
315
331
  end
316
332
 
317
333
  expect(driver.instance).to receive(:save_timestamp).with(today)
@@ -338,6 +354,9 @@ describe Fluent::ElbAccessLogInput do
338
354
  "sent_bytes"=>3,
339
355
  "request"=>
340
356
  "GET http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/ HTTP/1.1",
357
+ "user_agent"=>"curl/7.30.0",
358
+ "ssl_cipher"=>"ssl_cipher",
359
+ "ssl_protocol"=>"ssl_protocol",
341
360
  "request.method"=>"GET",
342
361
  "request.uri"=>
343
362
  "http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/",
@@ -357,7 +376,7 @@ describe Fluent::ElbAccessLogInput do
357
376
  context 'when access old log exists' do
358
377
  let(:today_access_log) do
359
378
  <<-EOS
360
- 2015-05-24T19:55:36.000000Z hoge 14.14.124.20:57673 10.0.199.184:80 0.000053 0.000913 0.000036 200 200 0 3 "GET http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/ HTTP/1.1" "curl/7.30.0" - -
379
+ 2015-05-24T19:55:36.000000Z hoge 14.14.124.20:57673 10.0.199.184:80 0.000053 0.000913 0.000036 200 200 0 3 "GET http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/ HTTP/1.1" "curl/7.30.0" ssl_cipher ssl_protocol
361
380
  EOS
362
381
  end
363
382
 
@@ -372,7 +391,7 @@ describe Fluent::ElbAccessLogInput do
372
391
  end
373
392
 
374
393
  expect(client).to receive(:get_object).with(bucket: s3_bucket, key: today_object_key) do
375
- [double('today_s3_object', body: StringIO.new(today_access_log))]
394
+ double('today_s3_object', body: StringIO.new(today_access_log))
376
395
  end
377
396
 
378
397
  expect(driver.instance).to_not receive(:save_timestamp)
@@ -399,6 +418,9 @@ describe Fluent::ElbAccessLogInput do
399
418
  "sent_bytes"=>3,
400
419
  "request"=>
401
420
  "GET http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/ HTTP/1.1",
421
+ "user_agent"=>"curl/7.30.0",
422
+ "ssl_cipher"=>"ssl_cipher",
423
+ "ssl_protocol"=>"ssl_protocol",
402
424
  "request.method"=>"GET",
403
425
  "request.uri"=>
404
426
  "http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/",
@@ -418,7 +440,7 @@ describe Fluent::ElbAccessLogInput do
418
440
  context 'when parse error' do
419
441
  let(:today_access_log) do
420
442
  <<-EOS
421
- 2015-05-24T19:55:36.000000Z hoge 14.14.124.20:57673 10.0.199.184:80 0.000053 0.000913 0.000036 200 200 0 3 "GET http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/ HTTP/1.1" "curl/7.30.0" - -
443
+ 2015-05-24T19:55:36.000000Z hoge 14.14.124.20:57673 10.0.199.184:80 0.000053 0.000913 0.000036 200 200 0 3 "GET http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/ HTTP/1.1" "curl/7.30.0" ssl_cipher ssl_protocol
422
444
  EOS
423
445
  end
424
446
 
@@ -431,7 +453,7 @@ describe Fluent::ElbAccessLogInput do
431
453
  end
432
454
 
433
455
  expect(client).to receive(:get_object).with(bucket: s3_bucket, key: today_object_key) do
434
- [double('today_s3_object', body: StringIO.new(today_access_log))]
456
+ double('today_s3_object', body: StringIO.new(today_access_log))
435
457
  end
436
458
 
437
459
  expect(driver.instance).to receive(:save_timestamp).with(today)
@@ -460,6 +482,9 @@ describe Fluent::ElbAccessLogInput do
460
482
  "sent_bytes"=>3,
461
483
  "request"=>
462
484
  "GET http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/ HTTP/1.1",
485
+ "user_agent"=>"curl/7.30.0",
486
+ "ssl_cipher"=>"ssl_cipher",
487
+ "ssl_protocol"=>"ssl_protocol",
463
488
  "request.method"=>"GET",
464
489
  "request.uri"=>
465
490
  "http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/",
@@ -479,7 +504,7 @@ describe Fluent::ElbAccessLogInput do
479
504
  context 'when access old log exists (timeout)' do
480
505
  let(:today_access_log) do
481
506
  <<-EOS
482
- 2015-05-24T19:55:36.000000Z hoge 14.14.124.20:57673 10.0.199.184:80 0.000053 0.000913 0.000036 200 200 0 3 "GET http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/ HTTP/1.1" "curl/7.30.0" - -
507
+ 2015-05-24T19:55:36.000000Z hoge 14.14.124.20:57673 10.0.199.184:80 0.000053 0.000913 0.000036 200 200 0 3 "GET http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/ HTTP/1.1" "curl/7.30.0" ssl_cipher ssl_protocol
483
508
  EOS
484
509
  end
485
510
 
@@ -506,7 +531,7 @@ describe Fluent::ElbAccessLogInput do
506
531
  context 'when emitted log exists' do
507
532
  let(:today_access_log) do
508
533
  <<-EOS
509
- 2015-05-24T19:55:36.000000Z hoge 14.14.124.20:57673 10.0.199.184:80 0.000053 0.000913 0.000036 200 200 0 3 "GET http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/ HTTP/1.1" "curl/7.30.0" - -
534
+ 2015-05-24T19:55:36.000000Z hoge 14.14.124.20:57673 10.0.199.184:80 0.000053 0.000913 0.000036 200 200 0 3 "GET http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/ HTTP/1.1" "curl/7.30.0" ssl_cipher ssl_protocol
510
535
  EOS
511
536
  end
512
537
 
@@ -534,7 +559,7 @@ describe Fluent::ElbAccessLogInput do
534
559
  describe 'history#length' do
535
560
  let(:today_access_log) do
536
561
  <<-EOS
537
- 2015-05-24T19:55:36.000000Z hoge 14.14.124.20:57673 10.0.199.184:80 0.000053 0.000913 0.000036 200 200 0 3 "GET http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/ HTTP/1.1" "curl/7.30.0" - -
562
+ 2015-05-24T19:55:36.000000Z hoge 14.14.124.20:57673 10.0.199.184:80 0.000053 0.000913 0.000036 200 200 0 3 "GET http://hoge-1876938939.ap-northeast-1.elb.amazonaws.com:80/ HTTP/1.1" "curl/7.30.0" ssl_cipher ssl_protocol
538
563
  EOS
539
564
  end
540
565
 
@@ -549,7 +574,7 @@ describe Fluent::ElbAccessLogInput do
549
574
  end
550
575
 
551
576
  expect(client).to receive(:get_object).with(bucket: s3_bucket, key: today_object_key) do
552
- [double('today_s3_object', body: StringIO.new(today_access_log))]
577
+ double('today_s3_object', body: StringIO.new(today_access_log))
553
578
  end
554
579
 
555
580
  expect(driver.instance).to receive(:save_timestamp).with(today)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fluent-plugin-elb-access-log
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.5
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Genki Sugawara
@@ -30,20 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - ~>
32
32
  - !ruby/object:Gem::Version
33
- version: '2'
34
- - - <
35
- - !ruby/object:Gem::Version
36
- version: '2.1'
33
+ version: 2.1.2
37
34
  type: :runtime
38
35
  prerelease: false
39
36
  version_requirements: !ruby/object:Gem::Requirement
40
37
  requirements:
41
38
  - - ~>
42
39
  - !ruby/object:Gem::Version
43
- version: '2'
44
- - - <
45
- - !ruby/object:Gem::Version
46
- version: '2.1'
40
+ version: 2.1.2
47
41
  - !ruby/object:Gem::Dependency
48
42
  name: addressable
49
43
  requirement: !ruby/object:Gem::Requirement