fluent-plugin-elb-access-log 0.2.5 → 0.3.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.
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