fluent-plugin-elb-log 0.6.0 → 0.7.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: d27df0130d6510caf02deafc2c329480ec516f77
4
- data.tar.gz: d3c48121cfa1252092e04db635115b9bba080d6d
3
+ metadata.gz: '098789aaeb055a519eb134eacc836b136871a0ff'
4
+ data.tar.gz: 19c18c2c0b1e40b9910d96b82f775e411456224b
5
5
  SHA512:
6
- metadata.gz: a5927766cae842616a2bcf037617a3b63fc1bad7169c3a116d5b966e7f4b85beb174d47cbe64409f57b71e0ca2240d3cd10cb0879dbc603079b5c937aae40798
7
- data.tar.gz: 5d5b7f8c60d2cd5e0f029c7ce9cb80f41e1880a10f01c75a04d37fad2f341d79785da49ff6d396ec5157c0d68f0438bcc295a5cd3cd38abba1a13531d66470ef
6
+ metadata.gz: bc08af197a894d4029acad72fc8130ec420978b2dee02d394b81de5392368c043d3c7caf7b24339bf305aa302a586b538158cbc82eddf99e29961246e6e8c2d9
7
+ data.tar.gz: b449eaa8f96fa886db6de387d365de1d6896e88d60ccf721c67b93f096a7da6a8e60c06ed43e0e4cc1955c30d457196d4a3bd6fafc8f62084be5e7164956ff81
@@ -4,7 +4,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
4
 
5
5
  Gem::Specification.new do |spec|
6
6
  spec.name = "fluent-plugin-elb-log"
7
- spec.version = "0.6.0"
7
+ spec.version = "0.7.0"
8
8
  spec.authors = ["shinsaka"]
9
9
  spec.email = ["shinx1265@gmail.com"]
10
10
  spec.summary = "Amazon ELB log input plugin"
@@ -11,7 +11,7 @@ class Fluent::Plugin::Elb_LogInput < Fluent::Plugin::Input
11
11
  helpers :timer
12
12
 
13
13
  LOGFILE_REGEXP = /^((?<prefix>.+?)\/|)AWSLogs\/(?<account_id>[0-9]{12})\/elasticloadbalancing\/(?<region>.+?)\/(?<logfile_date>[0-9]{4}\/[0-9]{2}\/[0-9]{2})\/[0-9]{12}_elasticloadbalancing_.+?_(?<logfile_elb_name>[^_]+)_(?<elb_timestamp>[0-9]{8}T[0-9]{4}Z)_(?<elb_ip_address>.+?)_(?<logfile_hash>.+)\.log(.gz)?$/
14
- ACCESSLOG_REGEXP = /^((?<type>[a-z0-9]+) )?(?<time>\d{4}-\d{2}-\d{2}T\d{2}\:\d{2}\:\d{2}\.\d{6}Z) (?<elb>.+?) (?<client>[^ ]+)\:(?<client_port>.+?) (?<backend>.+?)(\:(?<backend_port>.+?))? (?<request_processing_time>.+?) (?<backend_processing_time>.+?) (?<response_processing_time>.+?) (?<elb_status_code>.+?) (?<backend_status_code>.+?) (?<received_bytes>.+?) (?<sent_bytes>.+?) \"(?<request_method>.+?) (?<request_uri>.+?) (?<request_protocol>.+?)\"( \"(?<user_agent>.*?)\" (?<ssl_cipher>.+?) (?<ssl_protocol>[^\s]+)( (?<target_group_arn>arn:.+) (?<trace_id>[^\s]+))?(| (?<option3>.*)))?/
14
+ ACCESSLOG_REGEXP = /^((?<type>[a-z0-9]+) )?(?<time>\d{4}-\d{2}-\d{2}T\d{2}\:\d{2}\:\d{2}\.\d{6}Z) (?<elb>.+?) (?<client>[^ ]+)\:(?<client_port>.+?) (?<backend>.+?)(\:(?<backend_port>.+?))? (?<request_processing_time>.+?) (?<backend_processing_time>.+?) (?<response_processing_time>.+?) (?<elb_status_code>.+?) (?<backend_status_code>.+?) (?<received_bytes>.+?) (?<sent_bytes>.+?) \"(?<request_method>.+?) (?<request_uri>.+?) (?<request_protocol>.+?)\"( \"(?<user_agent>.*?)\" (?<ssl_cipher>.+?) (?<ssl_protocol>[^\s]+)( (?<target_group_arn>arn:\S+) (?<trace_id>[^\s]+))?(| (?<option3>.*)))?/
15
15
 
16
16
  config_param :access_key_id, :string, default: nil, secret: true
17
17
  config_param :secret_access_key, :string, default: nil, secret: true
@@ -225,4 +225,32 @@ class Elb_LogInputTest < Test::Unit::TestCase
225
225
  assert_equal('"Root=1-590c7929-4eb4cb393d46a01d22db8473"', m[:trace_id])
226
226
  assert_equal(nil, m[:option3])
227
227
  end
228
+
229
+ def test_grp_and_trace_fileld
230
+ log = 'http 2018-03-15T03:50:00.337397Z app/elbname/aabbccdd9988 10.248.9.92:54000 10.248.9.77:80 0.001 0.002 0.003 200 200 686 6476 "GET http://services-lb.nottherealsite.net:80/svc/example HTTP/1.1" "-" - - arn:aws:elasticloadbalancing:us-east-1:123456789123:targetgroup/example-service/1234abcd1234abcd "Root=1-xxxxxxxx-yyyyyyyyyyyyyyyyyyyzzzzz" "-" "-" 3'
231
+ m = Fluent::Plugin::Elb_LogInput::ACCESSLOG_REGEXP.match(log)
232
+ assert_equal('http', m[:type])
233
+ assert_equal('2018-03-15T03:50:00.337397Z', m[:time])
234
+ assert_equal('app/elbname/aabbccdd9988', m[:elb])
235
+ assert_equal('10.248.9.92', m[:client])
236
+ assert_equal('54000', m[:client_port])
237
+ assert_equal('10.248.9.77', m[:backend])
238
+ assert_equal('80', m[:backend_port])
239
+ assert_equal('0.001', m[:request_processing_time])
240
+ assert_equal('0.002', m[:backend_processing_time])
241
+ assert_equal('0.003', m[:response_processing_time])
242
+ assert_equal('200', m[:elb_status_code])
243
+ assert_equal('200', m[:backend_status_code])
244
+ assert_equal('686', m[:received_bytes])
245
+ assert_equal('6476', m[:sent_bytes])
246
+ assert_equal('GET', m[:request_method])
247
+ assert_equal('http://services-lb.nottherealsite.net:80/svc/example', m[:request_uri])
248
+ assert_equal('HTTP/1.1', m[:request_protocol])
249
+ assert_equal('-', m[:user_agent])
250
+ assert_equal('-', m[:ssl_cipher])
251
+ assert_equal('-', m[:ssl_protocol])
252
+ assert_equal('arn:aws:elasticloadbalancing:us-east-1:123456789123:targetgroup/example-service/1234abcd1234abcd', m[:target_group_arn])
253
+ assert_equal('"Root=1-xxxxxxxx-yyyyyyyyyyyyyyyyyyyzzzzz"', m[:trace_id])
254
+ assert_equal(nil, m[:option3])
255
+ end
228
256
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fluent-plugin-elb-log
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.0
4
+ version: 0.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - shinsaka
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-03-12 00:00:00.000000000 Z
11
+ date: 2018-04-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: fluentd