fluent-plugin-http-cwm 0.1.0 → 0.2.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
  SHA256:
3
- metadata.gz: 39a2ea2e53676d645f793e2f29bf10b9f75760f1ecd389b32ea2e35908e42648
4
- data.tar.gz: 8c62dbb68b8ecec4bd104ed17112b9be9b0fe91db95ce5ddc0fdfa7e40a1429b
3
+ metadata.gz: 0fd32dfa032f161178f7cdbced98e810a58150161c8549505225951197c8b335
4
+ data.tar.gz: 18a3d8dcde2bd06e01bcefbc405ed7457f6dffae68c84d43e0e69b67b3e0708e
5
5
  SHA512:
6
- metadata.gz: 23c97e8a1b2866ad5a0a69fed90b87683996d3f1bc3a8bb49abbff15f67ee126970bbe914606ef73e7d074e16c6256d8b4f931a393b8f36d179d02cf03c92e98
7
- data.tar.gz: c36fb79794ed69510cedc83b485f02b41007471d5aa69264196c0cf0ae1446819750f801d1d5471ef893f4445939875095e0df3de5b7f687e809ed18bf2af76e
6
+ metadata.gz: 69211562baa2f6e837823bd92bf58b6aa3be9d55657cc0b2a44aef1e718bbe248c44097df3cc91ef510fa851e9b109122e732e57cfa2743cc83f46a60613c5b0
7
+ data.tar.gz: bc0b0cee0e7b24b254f6d432804530399bdcfffb86e1b98bafc52d3f25f74a3ee8c0dcff004b322ea1ce791db356ebf8ae66d2ba43d65618127b37e05f870888
@@ -0,0 +1,41 @@
1
+ name: ci
2
+
3
+ on:
4
+ push:
5
+ paths-ignore:
6
+ - '**.md'
7
+ - '.rubocop.yml'
8
+ pull_request:
9
+ paths-ignore:
10
+ - '**.md'
11
+ - '.rubocop.yml'
12
+
13
+ jobs:
14
+ run-tests:
15
+ name: Run tests
16
+ strategy:
17
+ matrix:
18
+ os: [ubuntu-18.04]
19
+ ruby-version: ['2.5', '2.6', '2.7']
20
+
21
+ runs-on: ${{ matrix.os }}
22
+
23
+ steps:
24
+ - uses: actions/checkout@v2
25
+
26
+ - name: Set up Ruby
27
+ uses: ruby/setup-ruby@v1
28
+ with:
29
+ ruby-version: ${{ matrix.ruby-version }}
30
+ bundler-cache: true
31
+
32
+ - name: Bundle install
33
+ run: |
34
+ gem install bundler && \
35
+ bundle install --jobs 4 --retry 3
36
+
37
+ - name: Install Redis
38
+ run: sudo apt install redis-server
39
+
40
+ - name: Tests
41
+ run: bundle exec rake test
@@ -0,0 +1,58 @@
1
+ name: publish
2
+
3
+ on:
4
+ workflow_run:
5
+ workflows:
6
+ - ci
7
+ branches:
8
+ - main
9
+ types:
10
+ - completed
11
+
12
+ jobs:
13
+ publish:
14
+ if: github.event.workflow_run.conclusion == 'success' #&& startsWith(github.ref, 'refs/tags/v')
15
+
16
+ name: Publish Gem
17
+ runs-on: ubuntu-18.04
18
+
19
+ steps:
20
+ - uses: actions/checkout@v2
21
+ - name: Set up Ruby 2.6
22
+ uses: ruby/setup-ruby@v1
23
+ with:
24
+ ruby-version: 2.6
25
+ - run: bundle install
26
+
27
+ - name: Build and publish RubyGem
28
+ env:
29
+ GEM_HOST_API_KEY: ${{ secrets.RUBYGEMS_AUTH_TOKEN }}
30
+ run: |
31
+ mkdir -p $HOME/.gem && \
32
+ touch $HOME/.gem/credentials && \
33
+ chmod 0600 $HOME/.gem/credentials && \
34
+ printf -- "---\n:rubygems_api_key: ${GEM_HOST_API_KEY}\n" > $HOME/.gem/credentials && \
35
+ gem build *.gemspec && \
36
+ gem push *.gem && \
37
+ echo "Gem published successfully!"
38
+
39
+ - name: Update version file on CloudWebManage/cwm-worker-logger
40
+ env:
41
+ DEPLOY_KEY: ${{ secrets.CWM_WORKER_LOGGER_DEPLOY_KEY }}
42
+ DEPLOY_KEY_FILE: cwm_worker_logger_deploy_key
43
+ GEM_NAME: fluent-plugin-http-cwm
44
+ run: |
45
+ version=$(ruby -e 'puts Gem::Specification::load("fluent-plugin-http-cwm.gemspec").version') && \
46
+ echo "Version: " $version && \
47
+ echo "$DEPLOY_KEY" > $DEPLOY_KEY_FILE && \
48
+ chmod 400 $DEPLOY_KEY_FILE && \
49
+ export GIT_SSH_COMMAND="ssh -i $(pwd)/$DEPLOY_KEY_FILE -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no" && \
50
+ git clone git@github.com:CloudWebManage/cwm-worker-logger.git && \
51
+ cd cwm-worker-logger && \
52
+ git config user.name "$GEM_NAME CI" && \
53
+ git config user.email "$GEM_NAME-ci@localhost" && \
54
+ echo $version > $GEM_NAME.version && \
55
+ git add $GEM_NAME.version && \
56
+ git commit -m "Automatic version update for $GEM_NAME gem." && \
57
+ git push origin main && \
58
+ echo "Version updated successfully!"
data/.rubocop.yml ADDED
@@ -0,0 +1,17 @@
1
+ AllCops:
2
+ NewCops: disable
3
+
4
+ Gemspec/RequiredRubyVersion:
5
+ Enabled: false
6
+
7
+ Metrics/ClassLength:
8
+ Enabled: false
9
+
10
+ Metrics/MethodLength:
11
+ Enabled: false
12
+
13
+ Metrics/AbcSize:
14
+ Enabled: false
15
+
16
+ Layout/LineLength:
17
+ Enabled: false
data/Gemfile CHANGED
@@ -1,3 +1,7 @@
1
+ # frozen-string-literal: true
2
+
1
3
  source 'https://rubygems.org'
2
4
 
3
5
  gemspec
6
+
7
+ gem 'simplecov', require: false, group: :test
data/Gemfile.lock ADDED
@@ -0,0 +1,63 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ fluent-plugin-http-cwm (0.2.0)
5
+ fluentd (>= 0.14.10, < 2)
6
+ json (~> 2.3, >= 2.3.0)
7
+ redis (~> 4.2, >= 4.2.5)
8
+
9
+ GEM
10
+ remote: https://rubygems.org/
11
+ specs:
12
+ concurrent-ruby (1.1.8)
13
+ cool.io (1.7.1)
14
+ docile (1.3.5)
15
+ fluentd (1.12.2)
16
+ bundler
17
+ cool.io (>= 1.4.5, < 2.0.0)
18
+ http_parser.rb (>= 0.5.1, < 0.7.0)
19
+ msgpack (>= 1.3.1, < 2.0.0)
20
+ serverengine (>= 2.2.2, < 3.0.0)
21
+ sigdump (~> 0.2.2)
22
+ strptime (>= 0.2.2, < 1.0.0)
23
+ tzinfo (>= 1.0, < 3.0)
24
+ tzinfo-data (~> 1.0)
25
+ webrick (>= 1.4.2, < 1.8.0)
26
+ yajl-ruby (~> 1.0)
27
+ http_parser.rb (0.6.0)
28
+ json (2.5.1)
29
+ msgpack (1.4.2)
30
+ power_assert (2.0.0)
31
+ rake (12.3.3)
32
+ redis (4.2.5)
33
+ serverengine (2.2.3)
34
+ sigdump (~> 0.2.2)
35
+ sigdump (0.2.4)
36
+ simplecov (0.21.2)
37
+ docile (~> 1.1)
38
+ simplecov-html (~> 0.11)
39
+ simplecov_json_formatter (~> 0.1)
40
+ simplecov-html (0.12.3)
41
+ simplecov_json_formatter (0.1.2)
42
+ strptime (0.2.5)
43
+ test-unit (3.4.0)
44
+ power_assert
45
+ tzinfo (2.0.4)
46
+ concurrent-ruby (~> 1.0)
47
+ tzinfo-data (1.2021.1)
48
+ tzinfo (>= 1.0.0)
49
+ webrick (1.7.0)
50
+ yajl-ruby (1.4.1)
51
+
52
+ PLATFORMS
53
+ ruby
54
+
55
+ DEPENDENCIES
56
+ bundler (>= 1.14, < 3)
57
+ fluent-plugin-http-cwm!
58
+ rake (~> 12.3, >= 12.3.3)
59
+ simplecov
60
+ test-unit (~> 3.0)
61
+
62
+ BUNDLED WITH
63
+ 2.1.4
data/README.md CHANGED
@@ -1,13 +1,20 @@
1
1
  # fluent-plugin-http-cwm
2
2
 
3
- [![License: Apache-2.0](https://img.shields.io/badge/License-Apache-blue.svg?style=flat-square)](https://github.com/iamAzeem/fluent-plugin-http-cwm/blob/master/LICENSE)
4
- [![RubyGems Downloads](https://img.shields.io/gem/dt/fluent-plugin-http-cwm?color=blue&style=flat-square&label=Downloads)](https://rubygems.org/gems/fluent-plugin-http-cwm)
3
+ ![GitHub Workflow Status (branch)](https://img.shields.io/github/workflow/status/iamAzeem/fluent-plugin-http-cwm/ci/main?label=build&style=flat-square)
4
+ ![GitHub Workflow Status (branch)](https://img.shields.io/github/workflow/status/iamAzeem/fluent-plugin-http-cwm/publish/main?label=publish&style=flat-square)
5
+ ![GitHub release (latest by date)](https://img.shields.io/github/v/release/iamAzeem/fluent-plugin-http-cwm?style=flat-square)
6
+ [![License: Apache-2.0](https://img.shields.io/badge/license-Apache-blue.svg?style=flat-square)](https://github.com/iamAzeem/fluent-plugin-http-cwm/blob/master/LICENSE)
5
7
 
6
- [Fluentd](https://fluentd.org/) HTTP input plugin for
7
- [CloudWebManage](https://github.com/CloudWebManage) Logging Component.
8
+ [![RubyGems Downloads](https://img.shields.io/gem/dt/fluent-plugin-http-cwm?color=blue&style=flat-square)](https://rubygems.org/gems/fluent-plugin-http-cwm)
9
+ ![Lines of code](https://img.shields.io/tokei/lines/github/iamAzeem/fluent-plugin-http-cwm?label=LOC&style=flat-square)
10
+ ![GitHub code size in bytes](https://img.shields.io/github/languages/code-size/iamAzeem/fluent-plugin-http-cwm?style=flat-square)
11
+ ![GitHub repo size](https://img.shields.io/github/repo-size/iamAzeem/fluent-plugin-http-cwm?style=flat-square)
8
12
 
9
13
  ## Overview
10
14
 
15
+ [Fluentd](https://fluentd.org/) HTTP input plugin for
16
+ [CloudWebManage](https://github.com/CloudWebManage) Logging Component.
17
+
11
18
  This plugin:
12
19
 
13
20
  1. receives the incoming JSON logs from MinIO using an HTTP endpoint,
@@ -23,7 +30,6 @@ This plugin:
23
30
  |
24
31
  | JSON
25
32
  | logs
26
- |
27
33
  v
28
34
  +------------------+
29
35
  | fluentd |
@@ -48,13 +54,13 @@ This plugin:
48
54
 
49
55
  The following metrics are aggregated:
50
56
 
51
- | metric | description |
52
- |:--------------------|:----------------------------------------------------|
53
- | `bytes_in` | size of Request header and its Content-Length |
54
- | `bytes_out` | size of Response header and its Content-Length |
55
- | `num_requests_in` | count of APIs [WebUpload, PutObject, DeleteObject] |
56
- | `num_requests_out` | count of APIs [WebDownload, GetObject] |
57
- | `num_requests_misc` | count of APIs other than `in` and `out` |
57
+ | metric | description |
58
+ | :------------------ | :------------------------------------------------- |
59
+ | `bytes_in` | size of Request header and its Content-Length |
60
+ | `bytes_out` | size of Response header and its Content-Length |
61
+ | `num_requests_in` | count of APIs [WebUpload, PutObject, DeleteObject] |
62
+ | `num_requests_out` | count of APIs [WebDownload, GetObject] |
63
+ | `num_requests_misc` | count of APIs other than `in` and `out` |
58
64
 
59
65
  ## Installation
60
66
 
@@ -69,7 +75,7 @@ gem install fluent-plugin-http-cwm
69
75
  Add the following line to your Gemfile:
70
76
 
71
77
  ```ruby
72
- gem "fluent-plugin-http-cwm"
78
+ gem 'fluent-plugin-http-cwm'
73
79
  ```
74
80
 
75
81
  And then execute:
@@ -80,26 +86,28 @@ bundle
80
86
 
81
87
  ## Configuration
82
88
 
83
- * `host` (string) (optional): The address to bind to.
84
- * Default value: `localhost`.
85
- * `port` (integer) (optional): The port to listen to.
86
- * Default value: `8080`.
87
- * `tag` (string) (required): The tag for the event.
89
+ - `host` (string) (optional): The address to bind to.
90
+ - Default value: `localhost`.
91
+ - `port` (integer) (optional): The port to listen to.
92
+ - Default value: `8080`.
93
+ - `tag` (string) (required): The tag for the event.
88
94
 
89
95
  ### `<redis>` section (optional) (single)
90
96
 
91
- * `host` (string) (optional): The address of Redis server.
92
- * Default value: `localhost`.
93
- * `port` (integer) (optional): The port of Redis server.
94
- * Default value: `6379`.
95
- * `grace_period` (time) (optional): The grace period for last update.
96
- * Default value: `300s`.
97
- * `flush_interval` (time) (optional): The flush interval to send metrics.
98
- * Default value: `300s`.
99
- * `last_update_prefix` (string) (optional): The prefix for last update key.
100
- * Default value: `deploymentid:last_action`.
101
- * `metrics_prefix` (string) (optional): The prefix for metrics key.
102
- * Default value: `deploymentid:minio-metrics`.
97
+ - `host` (string) (optional): The address of Redis server.
98
+ - Default value: `localhost`.
99
+ - `port` (integer) (optional): The port of Redis server.
100
+ - Default value: `6379`.
101
+ - `db` (integer) (optional): The db to use.
102
+ - Default value: `0`.
103
+ - `grace_period` (time) (optional): The grace period for last update.
104
+ - Default value: `300s`.
105
+ - `flush_interval` (time) (optional): The flush interval to send metrics.
106
+ - Default value: `300s`.
107
+ - `last_update_prefix` (string) (optional): The prefix for last update key.
108
+ - Default value: `deploymentid:last_action`.
109
+ - `metrics_prefix` (string) (optional): The prefix for metrics key.
110
+ - Default value: `deploymentid:minio-metrics`.
103
111
 
104
112
  ### Sample Configuration
105
113
 
@@ -119,6 +127,7 @@ bundle
119
127
  <redis>
120
128
  host localhost
121
129
  port 6379
130
+ db 0
122
131
  grace_period 10s
123
132
  flush_interval 10s
124
133
  last_update_prefix deploymentid:last_action
@@ -147,10 +156,18 @@ Example:
147
156
 
148
157
  # ...
149
158
  </source>
150
- ```
159
+ ```
160
+
161
+ ## Contribute
162
+
163
+ - Fork the project.
164
+ - Check out the latest `main` branch.
165
+ - Create a feature or bugfix branch from `main`.
166
+ - Commit and push your changes.
167
+ - Make sure to add tests.
168
+ - Run Rubocop locally and fix all the lint warnings.
169
+ - Submit the PR.
151
170
 
152
- ## Copyright
171
+ ## License
153
172
 
154
- * Copyright &copy; 2020 Azeem Sajid
155
- * License
156
- * Apache License, Version 2.0
173
+ [Apache 2.0](./LICENSE)
data/Rakefile CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen-string-literal: true
2
+
1
3
  require 'bundler'
2
4
  Bundler::GemHelper.install_tasks
3
5
 
@@ -5,7 +5,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
5
5
 
6
6
  Gem::Specification.new do |spec|
7
7
  spec.name = 'fluent-plugin-http-cwm'
8
- spec.version = '0.1.0'
8
+ spec.version = '0.2.0'
9
9
  spec.authors = ['Azeem Sajid']
10
10
  spec.email = ['azeem.sajid@gmail.com']
11
11
 
@@ -20,10 +20,11 @@ Gem::Specification.new do |spec|
20
20
  spec.test_files = test_files
21
21
  spec.require_paths = ['lib']
22
22
 
23
- spec.add_development_dependency 'bundler', '~> 1.14'
24
- spec.add_development_dependency 'rake', '~> 12.0'
23
+ spec.add_development_dependency 'bundler', '>= 1.14', '< 3'
24
+ spec.add_development_dependency 'rake', '~> 12.3', '>= 12.3.3'
25
+ spec.add_development_dependency 'simplecov', '~> 0.12', '<= 0.12.2'
25
26
  spec.add_development_dependency 'test-unit', '~> 3.0'
26
- spec.add_runtime_dependency 'fluentd', ['>= 0.14.10', '< 2']
27
- spec.add_runtime_dependency 'json', '~> 1.8', '>= 1.8.3'
27
+ spec.add_runtime_dependency 'fluentd', '>= 0.14.10', '< 2'
28
+ spec.add_runtime_dependency 'json', '~> 2.3', '>= 2.3.0'
28
29
  spec.add_runtime_dependency 'redis', '~> 4.2', '>= 4.2.5'
29
30
  end
@@ -50,6 +50,9 @@ module Fluent
50
50
  desc 'The port of Redis server.'
51
51
  config_param :port, :integer, default: 6379
52
52
 
53
+ desc 'The db to use.'
54
+ config_param :db, :integer, default: 0
55
+
53
56
  desc 'The grace period for last update.'
54
57
  config_param :grace_period, :time, default: '300s'
55
58
 
@@ -63,15 +66,6 @@ module Fluent
63
66
  config_param :metrics_prefix, :string, default: 'deploymentid:minio-metrics'
64
67
  end
65
68
 
66
- def default_api_metrics_hash
67
- Hash.new do |h, k|
68
- h[k] = {
69
- 'bytes_in' => 0, 'bytes_out' => 0,
70
- 'num_requests_in' => 0, 'num_requests_out' => 0, 'num_requests_misc' => 0
71
- }
72
- end
73
- end
74
-
75
69
  def initialize
76
70
  super
77
71
 
@@ -79,21 +73,6 @@ module Fluent
79
73
  @deployment_api_metrics = default_api_metrics_hash
80
74
  end
81
75
 
82
- def set_up_redis
83
- log.info("Connecting with Redis [#{@redis_config.host}:#{@redis_config.port}]")
84
- @redis = Redis.new(host: @redis_config.host, port: @redis_config.port)
85
- ready = false
86
- until ready
87
- sleep(1)
88
- begin
89
- @redis.ping
90
- ready = true
91
- rescue StandardError => e
92
- log.error("Unable to connect to Redis server! ERROR: '#{e}'. Retrying...")
93
- end
94
- end
95
- end
96
-
97
76
  def configure(conf)
98
77
  super
99
78
 
@@ -112,9 +91,7 @@ module Fluent
112
91
  http_server_create_http_server(:http_server, addr: @host, port: @port, logger: log) do |server|
113
92
  server.post("/#{tag}") do |req|
114
93
  data = parse_data(req.body)
115
- if data
116
- route(data) if update_deployment_metrics(data)
117
- end
94
+ route(data) if update_deployment_metrics(data)
118
95
 
119
96
  # return HTTP 200 OK response to MinIO
120
97
  [200, { 'Content-Type' => 'text/plain' }, nil]
@@ -122,6 +99,35 @@ module Fluent
122
99
  end
123
100
  end
124
101
 
102
+ private
103
+
104
+ def default_api_metrics_hash
105
+ Hash.new do |h, k|
106
+ h[k] = {
107
+ 'bytes_in' => 0, 'bytes_out' => 0,
108
+ 'num_requests_in' => 0, 'num_requests_out' => 0, 'num_requests_misc' => 0
109
+ }
110
+ end
111
+ end
112
+
113
+ def set_up_redis
114
+ host = @redis_config.host
115
+ port = @redis_config.port
116
+ db = @redis_config.db
117
+ log.info("Connecting with Redis [address: #{host}:#{port}, db: #{db}]")
118
+ @redis = Redis.new(host: host, port: port, db: db)
119
+ ready = false
120
+ until ready
121
+ sleep(1)
122
+ begin
123
+ @redis.ping
124
+ ready = true
125
+ rescue StandardError => e
126
+ log.error("Unable to connect to Redis server! ERROR: '#{e}'. Retrying...")
127
+ end
128
+ end
129
+ end
130
+
125
131
  def parse_data(data)
126
132
  JSON.parse(data)
127
133
  rescue StandardError => e
@@ -146,11 +152,25 @@ module Fluent
146
152
  curdt = DateTime.now
147
153
 
148
154
  begin
155
+ log.debug("checking existing last action entry [key: #{key}]")
149
156
  lastval = @redis.get(key)
150
- lastdt = DateTime.parse(lastval, FMT_DATETIME) if lastval
151
- if lastdt.nil? || days_to_seconds((curdt - lastdt).to_i) >= @redis_config.grace_period
152
- log.debug('Setting last action')
153
- @redis.set(key, curdt.strftime(FMT_DATETIME))
157
+
158
+ is_grace_period_expired = false
159
+ if lastval
160
+ lastdt = DateTime.parse(lastval, FMT_DATETIME)
161
+ dt_diff_secs = days_to_seconds((curdt - lastdt).to_f)
162
+ if dt_diff_secs > @redis_config.grace_period
163
+ is_grace_period_expired = true
164
+ log.debug("grace period [#{@redis_config.grace_period}] expired [#{lastdt} => #{curdt}]")
165
+ end
166
+ else
167
+ log.debug('last action entry not found. going to be set for the first time.')
168
+ end
169
+
170
+ if lastdt.nil? || is_grace_period_expired
171
+ last_action = curdt.strftime(FMT_DATETIME)
172
+ @redis.set(key, last_action)
173
+ log.debug("Updated last action entry [#{key} => #{last_action}]")
154
174
  end
155
175
  rescue StandardError => e
156
176
  log.error("Unable to update last action! ERROR: '#{e}'.")
@@ -164,6 +184,8 @@ module Fluent
164
184
  end
165
185
 
166
186
  def update_deployment_metrics(data)
187
+ return false unless data
188
+
167
189
  log.debug('Updating deployment metrics')
168
190
 
169
191
  deploymentid = validate_and_get_value(data, 'deploymentid')
data/test/helper.rb CHANGED
@@ -1,5 +1,8 @@
1
1
  # frozen-string-literal: true
2
2
 
3
+ require 'simplecov'
4
+ SimpleCov.start
5
+
3
6
  $LOAD_PATH.unshift(File.expand_path('..', __dir__))
4
7
  require 'test-unit'
5
8
  require 'fluent/test'
data/test/logs.txt ADDED
@@ -0,0 +1,29 @@
1
+
2
+ {}
3
+ {"version":"1","deploymentid":"docker-compose-https","time":"2020-12-13T09:59:53.452955009Z","api":{"name":"WebUpload","bucket":"test","object":"test2/pray.svg","status":"OK","statusCode":200,"timeToResponse":"2245254ns"},"remotehost":"172.20.0.1","requestID":"16503E531076BE1D","userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36","requestClaims":{"accessKey":"12345678","exp":1607939949,"sub":"12345678"},"requestHeader":{"Accept":"*/*","Accept-Encoding":"gzip, deflate, br","Accept-Language":"en-US,en;q=0.9,he;q=0.8,lb;q=0.7,de;q=0.6","Authorization":"Bearer eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJhY2Nlc3NLZXkiOiIxMjM0NTY3OCIsImV4cCI6MTYwNzkzOTk0OSwic3ViIjoiMTIzNDU2NzgifQ.zXmWWBSu6PCh1UP-aPALSo4BrVFaHtuH6Gk33927fdc-VvDxIa6TYc6gKVdB6UOlmPMYAOenapyJ_36W5iXIsw","Content-Length":"5982","Content-Type":"image/svg+xml","Origin":"https://local.cwm-worker-minio:8443","Referer":"https://local.cwm-worker-minio:8443/minio/test/test2/","Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"same-origin","User-Agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36","X-Amz-Date":"20201213T095953Z"},"responseHeader":{"Access-Control-Allow-Credentials":"true","Access-Control-Allow-Origin":"https://local.cwm-worker-minio:8443","Access-Control-Expose-Headers":"Date, Etag, Server, Connection, Accept-Ranges, Content-Range, Content-Encoding, Content-Length, Content-Type, Content-Disposition, Last-Modified, Content-Language, Cache-Control, Retry-After, X-Amz-Bucket-Region, Expires, X-Amz*, X-Amz*, *","Content-Security-Policy":"block-all-mixed-content","ETag":"","Vary":"Origin","X-Amz-Request-Id":"16503E531076BE1D","X-Xss-Protection":"1; mode=block"}}
4
+ {"version":"1","deploymentid":"docker-compose-https","time":"2020-12-13T10:00:11.162262185Z","api":{"name":"WebUpload","bucket":"test2","object":"Misc.csv","status":"OK","statusCode":200,"timeToResponse":"2414404ns"},"remotehost":"172.20.0.1","requestID":"16503E573002726A","userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36","requestClaims":{"accessKey":"12345678","exp":1607939949,"sub":"12345678"},"requestHeader":{"Accept":"*/*","Accept-Encoding":"gzip, deflate, br","Accept-Language":"en-US,en;q=0.9,he;q=0.8,lb;q=0.7,de;q=0.6","Authorization":"Bearer eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJhY2Nlc3NLZXkiOiIxMjM0NTY3OCIsImV4cCI6MTYwNzkzOTk0OSwic3ViIjoiMTIzNDU2NzgifQ.zXmWWBSu6PCh1UP-aPALSo4BrVFaHtuH6Gk33927fdc-VvDxIa6TYc6gKVdB6UOlmPMYAOenapyJ_36W5iXIsw","Content-Length":"867","Content-Type":"text/csv","Origin":"https://local.cwm-worker-minio:8443","Referer":"https://local.cwm-worker-minio:8443/minio/test2/","Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"same-origin","User-Agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36","X-Amz-Date":"20201213T100011Z"},"responseHeader":{"Access-Control-Allow-Credentials":"true","Access-Control-Allow-Origin":"https://local.cwm-worker-minio:8443","Access-Control-Expose-Headers":"Date, Etag, Server, Connection, Accept-Ranges, Content-Range, Content-Encoding, Content-Length, Content-Type, Content-Disposition, Last-Modified, Content-Language, Cache-Control, Retry-After, X-Amz-Bucket-Region, Expires, X-Amz*, X-Amz*, *","Content-Security-Policy":"block-all-mixed-content","ETag":"","Vary":"Origin","X-Amz-Request-Id":"16503E573002726A","X-Xss-Protection":"1; mode=block"}}
5
+ {"version":"1","deploymentid":"docker-compose-https","time":"2020-12-13T10:00:11.163519081Z","api":{"name":"WebUpload","bucket":"test2","object":"Constru.csv","status":"OK","statusCode":200,"timeToResponse":"2857463ns"},"remotehost":"172.20.0.1","requestID":"16503E57300F4542","userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36","requestClaims":{"accessKey":"12345678","exp":1607939949,"sub":"12345678"},"requestHeader":{"Accept":"*/*","Accept-Encoding":"gzip, deflate, br","Accept-Language":"en-US,en;q=0.9,he;q=0.8,lb;q=0.7,de;q=0.6","Authorization":"Bearer eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJhY2Nlc3NLZXkiOiIxMjM0NTY3OCIsImV4cCI6MTYwNzkzOTk0OSwic3ViIjoiMTIzNDU2NzgifQ.zXmWWBSu6PCh1UP-aPALSo4BrVFaHtuH6Gk33927fdc-VvDxIa6TYc6gKVdB6UOlmPMYAOenapyJ_36W5iXIsw","Content-Length":"844","Content-Type":"text/csv","Origin":"https://local.cwm-worker-minio:8443","Referer":"https://local.cwm-worker-minio:8443/minio/test2/","Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"same-origin","User-Agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36","X-Amz-Date":"20201213T100011Z"},"responseHeader":{"Access-Control-Allow-Credentials":"true","Access-Control-Allow-Origin":"https://local.cwm-worker-minio:8443","Access-Control-Expose-Headers":"Date, Etag, Server, Connection, Accept-Ranges, Content-Range, Content-Encoding, Content-Length, Content-Type, Content-Disposition, Last-Modified, Content-Language, Cache-Control, Retry-After, X-Amz-Bucket-Region, Expires, X-Amz*, X-Amz*, *","Content-Security-Policy":"block-all-mixed-content","ETag":"","Vary":"Origin","X-Amz-Request-Id":"16503E57300F4542","X-Xss-Protection":"1; mode=block"}}
6
+ {"version":"1","deploymentid":"docker-compose-https","time":"2020-12-13T10:00:11.164228465Z","api":{"name":"WebUpload","bucket":"test2","object":"Hasadna.csv","status":"OK","statusCode":200,"timeToResponse":"3569188ns"},"remotehost":"172.20.0.1","requestID":"16503E57300F3E83","userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36","requestClaims":{"accessKey":"12345678","exp":1607939949,"sub":"12345678"},"requestHeader":{"Accept":"*/*","Accept-Encoding":"gzip, deflate, br","Accept-Language":"en-US,en;q=0.9,he;q=0.8,lb;q=0.7,de;q=0.6","Authorization":"Bearer eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJhY2Nlc3NLZXkiOiIxMjM0NTY3OCIsImV4cCI6MTYwNzkzOTk0OSwic3ViIjoiMTIzNDU2NzgifQ.zXmWWBSu6PCh1UP-aPALSo4BrVFaHtuH6Gk33927fdc-VvDxIa6TYc6gKVdB6UOlmPMYAOenapyJ_36W5iXIsw","Content-Length":"2074","Content-Type":"text/csv","Origin":"https://local.cwm-worker-minio:8443","Referer":"https://local.cwm-worker-minio:8443/minio/test2/","Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"same-origin","User-Agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36","X-Amz-Date":"20201213T100011Z"},"responseHeader":{"Access-Control-Allow-Credentials":"true","Access-Control-Allow-Origin":"https://local.cwm-worker-minio:8443","Access-Control-Expose-Headers":"Date, Etag, Server, Connection, Accept-Ranges, Content-Range, Content-Encoding, Content-Length, Content-Type, Content-Disposition, Last-Modified, Content-Language, Cache-Control, Retry-After, X-Amz-Bucket-Region, Expires, X-Amz*, X-Amz*, *","Content-Security-Policy":"block-all-mixed-content","ETag":"","Vary":"Origin","X-Amz-Request-Id":"16503E57300F3E83","X-Xss-Protection":"1; mode=block"}}
7
+ {"version":"1","deploymentid":"docker-compose-https","time":"2020-12-13T10:00:11.166982552Z","api":{"name":"WebUpload","bucket":"test2","object":"personal.csv","status":"OK","statusCode":200,"timeToResponse":"3350434ns"},"remotehost":"172.20.0.1","requestID":"16503E57303C9CA9","userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36","requestClaims":{"accessKey":"12345678","exp":1607939949,"sub":"12345678"},"requestHeader":{"Accept":"*/*","Accept-Encoding":"gzip, deflate, br","Accept-Language":"en-US,en;q=0.9,he;q=0.8,lb;q=0.7,de;q=0.6","Authorization":"Bearer eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJhY2Nlc3NLZXkiOiIxMjM0NTY3OCIsImV4cCI6MTYwNzkzOTk0OSwic3ViIjoiMTIzNDU2NzgifQ.zXmWWBSu6PCh1UP-aPALSo4BrVFaHtuH6Gk33927fdc-VvDxIa6TYc6gKVdB6UOlmPMYAOenapyJ_36W5iXIsw","Content-Length":"1300","Content-Type":"text/csv","Origin":"https://local.cwm-worker-minio:8443","Referer":"https://local.cwm-worker-minio:8443/minio/test2/","Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"same-origin","User-Agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36","X-Amz-Date":"20201213T100011Z"},"responseHeader":{"Access-Control-Allow-Credentials":"true","Access-Control-Allow-Origin":"https://local.cwm-worker-minio:8443","Access-Control-Expose-Headers":"Date, Etag, Server, Connection, Accept-Ranges, Content-Range, Content-Encoding, Content-Length, Content-Type, Content-Disposition, Last-Modified, Content-Language, Cache-Control, Retry-After, X-Amz-Bucket-Region, Expires, X-Amz*, X-Amz*, *","Content-Security-Policy":"block-all-mixed-content","ETag":"","Vary":"Origin","X-Amz-Request-Id":"16503E57303C9CA9","X-Xss-Protection":"1; mode=block"}}
8
+ {"version":"1","deploymentid":"docker-compose-http","time":"2020-12-13T10:02:28.146379165Z","api":{"name":"PutObject","bucket":"warp-benchmark-bucket","object":"XTSAfFmC/wmAgfs(Y5gfvrUvH.rnd","status":"OK","statusCode":200,"timeToResponse":"5600028ns"},"remotehost":"172.20.0.1","requestID":"16503E7714B596E7","userAgent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","requestHeader":{"Authorization":"AWS4-HMAC-SHA256 Credential=12345678/20201213/us-east-1/s3/aws4_request,SignedHeaders=host;x-amz-content-sha256;x-amz-date;x-amz-decoded-content-length,Signature=f9617e6380d377f96574e8789b369de3e3c1873a5142ab43a94da2df845195db","Content-Length":"10415","Content-Type":"application/octet-stream","User-Agent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","X-Amz-Content-Sha256":"STREAMING-AWS4-HMAC-SHA256-PAYLOAD","X-Amz-Date":"20201213T100228Z","X-Amz-Decoded-Content-Length":"10240"},"responseHeader":{"Accept-Ranges":"bytes","Content-Length":"0","Content-Security-Policy":"block-all-mixed-content","ETag":"7567b673c6b45518b054f71053745bbb","Server":"MinIO","Vary":"Origin","X-Amz-Request-Id":"16503E7714B596E7","X-Xss-Protection":"1; mode=block"}}
9
+ {"version":"1","deploymentid":"docker-compose-http","time":"2020-12-13T10:02:28.148376209Z","api":{"name":"PutObject","bucket":"warp-benchmark-bucket","object":"MpIBxAbZ/19VPLXm3I2ucVYIa.rnd","status":"OK","statusCode":200,"timeToResponse":"4019987ns"},"remotehost":"172.20.0.1","requestID":"16503E7714EC5781","userAgent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","requestHeader":{"Authorization":"AWS4-HMAC-SHA256 Credential=12345678/20201213/us-east-1/s3/aws4_request,SignedHeaders=host;x-amz-content-sha256;x-amz-date;x-amz-decoded-content-length,Signature=6b9fe765f9d66be6e4f31ef045919d95084d6eed5c3b4100689599d8eacba174","Content-Length":"10415","Content-Type":"application/octet-stream","User-Agent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","X-Amz-Content-Sha256":"STREAMING-AWS4-HMAC-SHA256-PAYLOAD","X-Amz-Date":"20201213T100228Z","X-Amz-Decoded-Content-Length":"10240"},"responseHeader":{"Accept-Ranges":"bytes","Content-Length":"0","Content-Security-Policy":"block-all-mixed-content","ETag":"1e36a820bbd64d49a99805bb704ce524","Server":"MinIO","Vary":"Origin","X-Amz-Request-Id":"16503E7714EC5781","X-Xss-Protection":"1; mode=block"}}
10
+ {"version":"1","deploymentid":"docker-compose-http","time":"2020-12-13T10:02:28.150866606Z","api":{"name":"PutObject","bucket":"warp-benchmark-bucket","object":"uPe9zwVp/TEV(fS)CtKQj9)Kk.rnd","status":"OK","statusCode":200,"timeToResponse":"6407612ns"},"remotehost":"172.20.0.1","requestID":"16503E7714EDEC3C","userAgent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","requestHeader":{"Authorization":"AWS4-HMAC-SHA256 Credential=12345678/20201213/us-east-1/s3/aws4_request,SignedHeaders=host;x-amz-content-sha256;x-amz-date;x-amz-decoded-content-length,Signature=4905027a735dbff6cee19490fe93a560bad6589255f18d347ee876229ab19331","Content-Length":"10415","Content-Type":"application/octet-stream","User-Agent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","X-Amz-Content-Sha256":"STREAMING-AWS4-HMAC-SHA256-PAYLOAD","X-Amz-Date":"20201213T100228Z","X-Amz-Decoded-Content-Length":"10240"},"responseHeader":{"Accept-Ranges":"bytes","Content-Length":"0","Content-Security-Policy":"block-all-mixed-content","ETag":"103806e3c82de16ed70fc943573c4248","Server":"MinIO","Vary":"Origin","X-Amz-Request-Id":"16503E7714EDEC3C","X-Xss-Protection":"1; mode=block"}}
11
+ {"version":"1","deploymentid":"docker-compose-http","time":"2020-12-13T10:02:28.150997904Z","api":{"name":"PutObject","bucket":"warp-benchmark-bucket","object":"SACTQyFh/6Khq9rqx5iR9S313.rnd","status":"OK","statusCode":200,"timeToResponse":"6598556ns"},"remotehost":"172.20.0.1","requestID":"16503E7714ED097A","userAgent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","requestHeader":{"Authorization":"AWS4-HMAC-SHA256 Credential=12345678/20201213/us-east-1/s3/aws4_request,SignedHeaders=host;x-amz-content-sha256;x-amz-date;x-amz-decoded-content-length,Signature=888587f0d7a475dbc31654d9bbfb5090973057601bc4981ebe9bb3d458cb819d","Content-Length":"10415","Content-Type":"application/octet-stream","User-Agent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","X-Amz-Content-Sha256":"STREAMING-AWS4-HMAC-SHA256-PAYLOAD","X-Amz-Date":"20201213T100228Z","X-Amz-Decoded-Content-Length":"10240"},"responseHeader":{"Accept-Ranges":"bytes","Content-Length":"0","Content-Security-Policy":"block-all-mixed-content","ETag":"3c226393e1fda01fba77eeee8cdfba94","Server":"MinIO","Vary":"Origin","X-Amz-Request-Id":"16503E7714ED097A","X-Xss-Protection":"1; mode=block"}}
12
+ {"version":"1","deploymentid":"docker-compose-http","time":"2020-12-13T10:02:28.152358033Z","api":{"name":"PutObject","bucket":"warp-benchmark-bucket","object":"U9dAIeMw/xFlwgtYWHmWDU92i.rnd","status":"OK","statusCode":200,"timeToResponse":"6643027ns"},"remotehost":"172.20.0.1","requestID":"16503E7715012723","userAgent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","requestHeader":{"Authorization":"AWS4-HMAC-SHA256 Credential=12345678/20201213/us-east-1/s3/aws4_request,SignedHeaders=host;x-amz-content-sha256;x-amz-date;x-amz-decoded-content-length,Signature=ecca35dd261dae1875de09ce62b2ffc9aa98d1734fcd1f3d3e0ca9020937d895","Content-Length":"10415","Content-Type":"application/octet-stream","User-Agent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","X-Amz-Content-Sha256":"STREAMING-AWS4-HMAC-SHA256-PAYLOAD","X-Amz-Date":"20201213T100228Z","X-Amz-Decoded-Content-Length":"10240"},"responseHeader":{"Accept-Ranges":"bytes","Content-Length":"0","Content-Security-Policy":"block-all-mixed-content","ETag":"122d13e787596645b9310a6e56a51a17","Server":"MinIO","Vary":"Origin","X-Amz-Request-Id":"16503E7715012723","X-Xss-Protection":"1; mode=block"}}
13
+ {"version":"1","deploymentid":"docker-compose-http","time":"2020-12-13T10:02:31.307623369Z","api":{"name":"DeleteObject","bucket":"warp-benchmark-bucket","object":"DsrjeNDy/oeGegUiJWIDTWOOq.rnd","status":"No Content","statusCode":204,"timeToResponse":"1819254ns"},"remotehost":"172.20.0.1","requestID":"16503E77D15C32DB","userAgent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","requestHeader":{"Authorization":"AWS4-HMAC-SHA256 Credential=12345678/20201213/us-east-1/s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=25804b0b3ed5ba119fd6504f8492e2ba47a0fc2ca4f22d865592022c5728b332","User-Agent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","X-Amz-Content-Sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","X-Amz-Date":"20201213T100231Z"},"responseHeader":{"Accept-Ranges":"bytes","Content-Length":"0","Content-Security-Policy":"block-all-mixed-content","ETag":"","Server":"MinIO","Vary":"Origin","X-Amz-Request-Id":"16503E77D15C32DB","X-Xss-Protection":"1; mode=block"}}
14
+ {"version":"1","deploymentid":"docker-compose-http","time":"2020-12-13T10:02:31.311626518Z","api":{"name":"DeleteObject","bucket":"warp-benchmark-bucket","object":"DsrjeNDy/(60XuwNT(uVnBWFc.rnd","status":"No Content","statusCode":204,"timeToResponse":"1070737ns"},"remotehost":"172.20.0.1","requestID":"16503E77D1A4F9F1","userAgent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","requestHeader":{"Authorization":"AWS4-HMAC-SHA256 Credential=12345678/20201213/us-east-1/s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=a3a705dbe6a5b8d74ec26b1961b19553571753d745c8687e08d362490dca40de","User-Agent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","X-Amz-Content-Sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","X-Amz-Date":"20201213T100231Z"},"responseHeader":{"Accept-Ranges":"bytes","Content-Length":"0","Content-Security-Policy":"block-all-mixed-content","ETag":"","Server":"MinIO","Vary":"Origin","X-Amz-Request-Id":"16503E77D1A4F9F1","X-Xss-Protection":"1; mode=block"}}
15
+ {"version":"1","deploymentid":"docker-compose-http","time":"2020-12-13T10:02:31.312482136Z","api":{"name":"DeleteObject","bucket":"warp-benchmark-bucket","object":"uPe9zwVp/kSu7mJneCaD)Fuit.rnd","status":"No Content","statusCode":204,"timeToResponse":"296524ns"},"remotehost":"172.20.0.1","requestID":"16503E77D1BDD9DE","userAgent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","requestHeader":{"Authorization":"AWS4-HMAC-SHA256 Credential=12345678/20201213/us-east-1/s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=817281c9cb6ecc0d6f6f46949b71f7d62cf8d845c51b38c2e3a25b375ed248fd","User-Agent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","X-Amz-Content-Sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","X-Amz-Date":"20201213T100231Z"},"responseHeader":{"Accept-Ranges":"bytes","Content-Length":"0","Content-Security-Policy":"block-all-mixed-content","ETag":"","Server":"MinIO","Vary":"Origin","X-Amz-Request-Id":"16503E77D1BDD9DE","X-Xss-Protection":"1; mode=block"}}
16
+ {"version":"1","deploymentid":"docker-compose-http","time":"2020-12-13T10:02:31.31500656Z","api":{"name":"DeleteObject","bucket":"warp-benchmark-bucket","object":"uPe9zwVp/CG2EVQTBBoZS(A2Q.rnd","status":"No Content","statusCode":204,"timeToResponse":"1104650ns"},"remotehost":"172.20.0.1","requestID":"16503E77D1D80933","userAgent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","requestHeader":{"Authorization":"AWS4-HMAC-SHA256 Credential=12345678/20201213/us-east-1/s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=50b12d8a0ea7b9aa1a6616ecbf49c49b5e96a17c39fc14b81564fc6f147f332a","User-Agent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","X-Amz-Content-Sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","X-Amz-Date":"20201213T100231Z"},"responseHeader":{"Accept-Ranges":"bytes","Content-Length":"0","Content-Security-Policy":"block-all-mixed-content","ETag":"","Server":"MinIO","Vary":"Origin","X-Amz-Request-Id":"16503E77D1D80933","X-Xss-Protection":"1; mode=block"}}
17
+ {"version":"1","deploymentid":"docker-compose-http","time":"2020-12-13T10:02:31.315527682Z","api":{"name":"DeleteObject","bucket":"warp-benchmark-bucket","object":"MpIBxAbZ/BsNwtds2hjH06r2T.rnd","status":"No Content","statusCode":204,"timeToResponse":"322966ns"},"remotehost":"172.20.0.1","requestID":"16503E77D1EBE9B1","userAgent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","requestHeader":{"Authorization":"AWS4-HMAC-SHA256 Credential=12345678/20201213/us-east-1/s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=1fac2438b2611e1efe51cc70891a62a23534f6559dfcbf5084200c400a57cc65","User-Agent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","X-Amz-Content-Sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","X-Amz-Date":"20201213T100231Z"},"responseHeader":{"Accept-Ranges":"bytes","Content-Length":"0","Content-Security-Policy":"block-all-mixed-content","ETag":"","Server":"MinIO","Vary":"Origin","X-Amz-Request-Id":"16503E77D1EBE9B1","X-Xss-Protection":"1; mode=block"}}
18
+ {"version":"1","deploymentid":"docker-compose-http","time":"2020-12-13T10:02:31.315755898Z","api":{"name":"GetObject","bucket":"warp-benchmark-bucket","object":"uPe9zwVp/xaS)33LTUGT1SqAk.rnd","status":"OK","statusCode":200,"timeToFirstByte":"547107ns","timeToResponse":"560938ns"},"remotehost":"172.20.0.1","requestID":"16503E77D1EBBD86","userAgent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","requestHeader":{"Authorization":"AWS4-HMAC-SHA256 Credential=12345678/20201213/us-east-1/s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=f9acf5cad5bbde784b8f15680ed50e3987a5b63231a84246ff871e7a9856b613","User-Agent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","X-Amz-Content-Sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","X-Amz-Date":"20201213T100231Z"},"responseHeader":{"Accept-Ranges":"bytes","Content-Length":"10240","Content-Security-Policy":"block-all-mixed-content","Content-Type":"application/octet-stream","ETag":"28f85d9558fa9c2f2eca1b70dae20832","Last-Modified":"Sun, 13 Dec 2020 10:02:28 GMT","Server":"MinIO","Vary":"Origin","X-Amz-Request-Id":"16503E77D1EBBD86","X-Cache":"MISS","X-Cache-Lookup":"MISS","X-Xss-Protection":"1; mode=block"}}
19
+ {"version":"1","deploymentid":"docker-compose-http","time":"2020-12-13T10:02:31.316316176Z","api":{"name":"GetObject","bucket":"warp-benchmark-bucket","object":"SACTQyFh/r3VI4ADkZo2KA8MT.rnd","status":"OK","statusCode":200,"timeToFirstByte":"734869ns","timeToResponse":"750395ns"},"remotehost":"172.20.0.1","requestID":"16503E77D1F15E91","userAgent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","requestHeader":{"Authorization":"AWS4-HMAC-SHA256 Credential=12345678/20201213/us-east-1/s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=bba0dd4a5b46361a146631bee00a77a5c2a541979dc4ab7d0d8e3156bb2be69b","User-Agent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","X-Amz-Content-Sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","X-Amz-Date":"20201213T100231Z"},"responseHeader":{"Accept-Ranges":"bytes","Content-Length":"10240","Content-Security-Policy":"block-all-mixed-content","Content-Type":"application/octet-stream","ETag":"adab22732f9746f00ff7c3cbe93d5a75","Last-Modified":"Sun, 13 Dec 2020 10:02:28 GMT","Server":"MinIO","Vary":"Origin","X-Amz-Request-Id":"16503E77D1F15E91","X-Cache":"MISS","X-Cache-Lookup":"MISS","X-Xss-Protection":"1; mode=block"}}
20
+ {"version":"1","deploymentid":"docker-compose-http","time":"2020-12-13T10:02:31.316583584Z","api":{"name":"GetObject","bucket":"warp-benchmark-bucket","object":"SACTQyFh/33lecLH841eGQqij.rnd","status":"OK","statusCode":200,"timeToFirstByte":"552973ns","timeToResponse":"1377348ns"},"remotehost":"172.20.0.1","requestID":"16503E77D1EBEB39","userAgent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","requestHeader":{"Authorization":"AWS4-HMAC-SHA256 Credential=12345678/20201213/us-east-1/s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=6b616c836152a0d3e342bc0c0ddcdb037185066d942e87cdac0f03de9110f2e4","User-Agent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","X-Amz-Content-Sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","X-Amz-Date":"20201213T100231Z"},"responseHeader":{"Accept-Ranges":"bytes","Content-Length":"10240","Content-Security-Policy":"block-all-mixed-content","Content-Type":"application/octet-stream","ETag":"a074a4c7facee1c0dbb440545f7d6579","Last-Modified":"Sun, 13 Dec 2020 10:02:28 GMT","Server":"MinIO","Vary":"Origin","X-Amz-Request-Id":"16503E77D1EBEB39","X-Cache":"MISS","X-Cache-Lookup":"MISS","X-Xss-Protection":"1; mode=block"}}
21
+ {"version":"1","deploymentid":"docker-compose-http","time":"2020-12-13T10:02:31.317006173Z","api":{"name":"GetObject","bucket":"warp-benchmark-bucket","object":"U9dAIeMw/ZdueXA8roNczk4pp.rnd","status":"OK","statusCode":200,"timeToFirstByte":"625551ns","timeToResponse":"641906ns"},"remotehost":"172.20.0.1","requestID":"16503E77D1FD94CA","userAgent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","requestHeader":{"Authorization":"AWS4-HMAC-SHA256 Credential=12345678/20201213/us-east-1/s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=6695dd830a24e33807d442ea0d3dccf7b326fcb4e2fda06ee043f448743e7430","User-Agent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","X-Amz-Content-Sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","X-Amz-Date":"20201213T100231Z"},"responseHeader":{"Accept-Ranges":"bytes","Content-Length":"10240","Content-Security-Policy":"block-all-mixed-content","Content-Type":"application/octet-stream","ETag":"8e331b8121dba9e2b449c6d2732b49f6","Last-Modified":"Sun, 13 Dec 2020 10:02:28 GMT","Server":"MinIO","Vary":"Origin","X-Amz-Request-Id":"16503E77D1FD94CA","X-Cache":"MISS","X-Cache-Lookup":"MISS","X-Xss-Protection":"1; mode=block"}}
22
+ {"version":"1","deploymentid":"docker-compose-http","time":"2020-12-13T10:02:31.318899032Z","api":{"name":"GetObject","bucket":"warp-benchmark-bucket","object":"U9dAIeMw/bOi8mDhPI7xkpLc(.rnd","status":"OK","statusCode":200,"timeToFirstByte":"659834ns","timeToResponse":"675772ns"},"remotehost":"172.20.0.1","requestID":"16503E77D219E810","userAgent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","requestHeader":{"Authorization":"AWS4-HMAC-SHA256 Credential=12345678/20201213/us-east-1/s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=70d55e185056eeb8bda0aa99a0d019c8af35d9d23cdaa1e4efb382e57f43b247","User-Agent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","X-Amz-Content-Sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","X-Amz-Date":"20201213T100231Z"},"responseHeader":{"Accept-Ranges":"bytes","Content-Length":"10240","Content-Security-Policy":"block-all-mixed-content","Content-Type":"application/octet-stream","ETag":"12a5cae0b22eb8ddede896d51706509c","Last-Modified":"Sun, 13 Dec 2020 10:02:28 GMT","Server":"MinIO","Vary":"Origin","X-Amz-Request-Id":"16503E77D219E810","X-Cache":"MISS","X-Cache-Lookup":"MISS","X-Xss-Protection":"1; mode=block"}}
23
+ {"version":"1","deploymentid":"docker-compose-http","time":"2020-12-13T10:02:31.319875016Z","api":{"name":"HeadObject","bucket":"warp-benchmark-bucket","object":"uPe9zwVp/I55Vvgsvz6(s5dx(.rnd","status":"OK","statusCode":200,"timeToResponse":"375661ns"},"remotehost":"172.20.0.1","requestID":"16503E77D22D666F","userAgent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","requestHeader":{"Authorization":"AWS4-HMAC-SHA256 Credential=12345678/20201213/us-east-1/s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=6d01aa21d6791f12da408b9fedbe3b222b95e0b874b7899400f920e157cf371e","User-Agent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","X-Amz-Content-Sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","X-Amz-Date":"20201213T100231Z"},"responseHeader":{"Accept-Ranges":"bytes","Content-Length":"10240","Content-Security-Policy":"block-all-mixed-content","Content-Type":"application/octet-stream","ETag":"4d851e2d1b56eda8c047c498e557b568","Last-Modified":"Sun, 13 Dec 2020 10:02:28 GMT","Server":"MinIO","Vary":"Origin","X-Amz-Request-Id":"16503E77D22D666F","X-Cache":"MISS","X-Cache-Lookup":"MISS","X-Xss-Protection":"1; mode=block"}}
24
+ {"version":"1","deploymentid":"docker-compose-http","time":"2020-12-13T10:02:31.322382865Z","api":{"name":"HeadObject","bucket":"warp-benchmark-bucket","object":"MpIBxAbZ/Xomp81ekJZPqDI0Y.rnd","status":"OK","statusCode":200,"timeToResponse":"298541ns"},"remotehost":"172.20.0.1","requestID":"16503E77D254DF29","userAgent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","requestHeader":{"Authorization":"AWS4-HMAC-SHA256 Credential=12345678/20201213/us-east-1/s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=0264ac1e81f4ae83419ea62a0c3bb238c6fffecf853d65fce16c8a43794ba60a","User-Agent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","X-Amz-Content-Sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","X-Amz-Date":"20201213T100231Z"},"responseHeader":{"Accept-Ranges":"bytes","Content-Length":"10240","Content-Security-Policy":"block-all-mixed-content","Content-Type":"application/octet-stream","ETag":"07817607c15b8d6a52e184cc0a693680","Last-Modified":"Sun, 13 Dec 2020 10:02:28 GMT","Server":"MinIO","Vary":"Origin","X-Amz-Request-Id":"16503E77D254DF29","X-Cache":"MISS","X-Cache-Lookup":"MISS","X-Xss-Protection":"1; mode=block"}}
25
+ {"version":"1","deploymentid":"docker-compose-http","time":"2020-12-13T10:02:31.325077259Z","api":{"name":"HeadObject","bucket":"warp-benchmark-bucket","object":"SACTQyFh/7x7JgnxP9x3JpdAN.rnd","status":"OK","statusCode":200,"timeToResponse":"304259ns"},"remotehost":"172.20.0.1","requestID":"16503E77D27DE12B","userAgent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","requestHeader":{"Authorization":"AWS4-HMAC-SHA256 Credential=12345678/20201213/us-east-1/s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=3b53df8afe888f9d786c4847d6c2186e77c70ff8cb4e222dcacb65cb11ae7c88","User-Agent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","X-Amz-Content-Sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","X-Amz-Date":"20201213T100231Z"},"responseHeader":{"Accept-Ranges":"bytes","Content-Length":"10240","Content-Security-Policy":"block-all-mixed-content","Content-Type":"application/octet-stream","ETag":"fc1d79a40d198f25c4a5448cfa82071d","Last-Modified":"Sun, 13 Dec 2020 10:02:28 GMT","Server":"MinIO","Vary":"Origin","X-Amz-Request-Id":"16503E77D27DE12B","X-Cache":"MISS","X-Cache-Lookup":"MISS","X-Xss-Protection":"1; mode=block"}}
26
+ {"version":"1","deploymentid":"docker-compose-http","time":"2020-12-13T10:02:31.330091282Z","api":{"name":"HeadObject","bucket":"warp-benchmark-bucket","object":"SACTQyFh/33lecLH841eGQqij.rnd","status":"OK","statusCode":200,"timeToResponse":"417243ns"},"remotehost":"172.20.0.1","requestID":"16503E77D2C8A79D","userAgent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","requestHeader":{"Authorization":"AWS4-HMAC-SHA256 Credential=12345678/20201213/us-east-1/s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=7a99e1b7d3eaa3f466fb5c4352f84657ab22422c2be62cc8694eccf6fbd833fc","User-Agent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","X-Amz-Content-Sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","X-Amz-Date":"20201213T100231Z"},"responseHeader":{"Accept-Ranges":"bytes","Content-Length":"10240","Content-Security-Policy":"block-all-mixed-content","Content-Type":"application/octet-stream","ETag":"a074a4c7facee1c0dbb440545f7d6579","Last-Modified":"Sun, 13 Dec 2020 10:02:28 GMT","Server":"MinIO","Vary":"Origin","X-Amz-Request-Id":"16503E77D2C8A79D","X-Cache":"MISS","X-Cache-Lookup":"MISS","X-Xss-Protection":"1; mode=block"}}
27
+ {"version":"1","deploymentid":"docker-compose-http","time":"2020-12-13T10:02:31.330171641Z","api":{"name":"HeadObject","bucket":"warp-benchmark-bucket","object":"XTSAfFmC/6jVNqbTHjY)TMUsf.rnd","status":"OK","statusCode":200,"timeToResponse":"417005ns"},"remotehost":"172.20.0.1","requestID":"16503E77D2C9E103","userAgent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","requestHeader":{"Authorization":"AWS4-HMAC-SHA256 Credential=12345678/20201213/us-east-1/s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=686a542242d464fd2787765209b2ea1d6bf711ee9d12fc9bcf6cabb4b3c936b0","User-Agent":"MinIO (linux; amd64) minio-go/v7.0.5 warp/0.3.17","X-Amz-Content-Sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","X-Amz-Date":"20201213T100231Z"},"responseHeader":{"Accept-Ranges":"bytes","Content-Length":"10240","Content-Security-Policy":"block-all-mixed-content","Content-Type":"application/octet-stream","ETag":"68a0d2b0c2733dfca0b6f5d37ea01b99","Last-Modified":"Sun, 13 Dec 2020 10:02:28 GMT","Server":"MinIO","Vary":"Origin","X-Amz-Request-Id":"16503E77D2C9E103","X-Cache":"MISS","X-Cache-Lookup":"MISS","X-Xss-Protection":"1; mode=block"}}
28
+ {"version":"1","deploymentid":"docker-compose-http","time":"2020-12-13T10:27:55.410575308Z","api":{"name":"WebDownload","bucket":"test2","object":"personal.csv","status":"OK","statusCode":200,"timeToFirstByte":"539568ns","timeToResponse":"554854ns"},"remotehost":"172.20.0.1","requestID":"16503FDAAD0D3460","userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36","requestClaims":{"accessKey":"12345678","exp":1607855335,"sub":"12345678"},"requestQuery":{"token":"eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJhY2Nlc3NLZXkiOiIxMjM0NTY3OCIsImV4cCI6MTYwNzg1NTMzNSwic3ViIjoiMTIzNDU2NzgifQ.Lr6b1NB4cydukrBF-_1StDLwR6UGsRJZlVlfRIeVlWJZVp2AAS9DMXpVueUzSOmqiNvlyCPfjsIzHC5nIjiyzw"},"requestHeader":{"Accept":"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9","Accept-Encoding":"gzip, deflate","Accept-Language":"en-US,en;q=0.9,he;q=0.8,lb;q=0.7,de;q=0.6","Connection":"keep-alive","Referer":"http://local.cwm-worker-minio:8080/minio/test2/","Upgrade-Insecure-Requests":"1","User-Agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36"},"responseHeader":{"Accept-Ranges":"bytes","Cache-Control":"no-store","Content-Disposition":"attachment; filename=\"personal.csv\"","Content-Length":"1300","Content-Security-Policy":"block-all-mixed-content","Content-Type":"text/csv","ETag":"0ea1fa5fd9afe7f0f9519c5825f57310","Last-Modified":"Sun, 13 Dec 2020 10:00:11 GMT","Server":"MinIO","Vary":"Origin","X-Amz-Request-Id":"16503FDAAD0D3460","X-Cache":"MISS","X-Cache-Lookup":"MISS","X-Xss-Protection":"1; mode=block"}}
29
+ {"version":"1","deploymentid":"docker-compose-http","time":"2020-12-13T10:27:57.202896957Z","api":{"name":"WebDownload","bucket":"test2","object":"Misc.csv","status":"OK","statusCode":200,"timeToFirstByte":"647394ns","timeToResponse":"667159ns"},"remotehost":"172.20.0.1","requestID":"16503FDB17E01EDE","userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36","requestClaims":{"accessKey":"12345678","exp":1607855337,"sub":"12345678"},"requestQuery":{"token":"eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJhY2Nlc3NLZXkiOiIxMjM0NTY3OCIsImV4cCI6MTYwNzg1NTMzNywic3ViIjoiMTIzNDU2NzgifQ.8jzmcdPBPKjwCuKJLES2qtfhf7iYN-LXZz_zXU0rlCjMzbFHJI0hFF0naMtFQEA1R9Ad1WhZY8mYErqdioMonw"},"requestHeader":{"Accept":"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9","Accept-Encoding":"gzip, deflate","Accept-Language":"en-US,en;q=0.9,he;q=0.8,lb;q=0.7,de;q=0.6","Connection":"keep-alive","Referer":"http://local.cwm-worker-minio:8080/minio/test2/","Upgrade-Insecure-Requests":"1","User-Agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36"},"responseHeader":{"Accept-Ranges":"bytes","Cache-Control":"no-store","Content-Disposition":"attachment; filename=\"Misc.csv\"","Content-Length":"867","Content-Security-Policy":"block-all-mixed-content","Content-Type":"text/csv","ETag":"b58887295950f4a7edceccab141d8c92","Last-Modified":"Sun, 13 Dec 2020 10:00:11 GMT","Server":"MinIO","Vary":"Origin","X-Amz-Request-Id":"16503FDB17E01EDE","X-Cache":"MISS","X-Cache-Lookup":"MISS","X-Xss-Protection":"1; mode=block"}}
@@ -1,20 +1,78 @@
1
1
  # frozen-string-literal: true
2
2
 
3
3
  require 'helper'
4
- require 'fluent/plugin/in_http_cwm.rb'
4
+ require 'fluent/plugin/in_http_cwm'
5
+ require 'net/http'
5
6
 
6
7
  class CwmHttpInputTest < Test::Unit::TestCase
7
8
  setup do
8
9
  Fluent::Test.setup
10
+
11
+ @default_conf = %(
12
+ tag test
13
+ )
14
+ end
15
+
16
+ def create_driver(conf)
17
+ Fluent::Test::Driver::Input.new(Fluent::Plugin::CwmHttpInput).configure(conf)
18
+ end
19
+
20
+ sub_test_case 'configuration' do
21
+ test 'default configuration test' do
22
+ driver = create_driver(@default_conf)
23
+ plugin = driver.instance
24
+ assert_equal Fluent::Plugin::CwmHttpInput, plugin.class
25
+ assert_equal 'localhost', plugin.host
26
+ assert_equal 8080, plugin.port
27
+ end
28
+
29
+ test 'redis default configuration test' do
30
+ conf = %(
31
+ tag test
32
+ <redis>
33
+ </redis>
34
+ )
35
+
36
+ driver = create_driver(conf)
37
+ plugin = driver.instance
38
+ redis = plugin.redis_config
39
+ assert_equal 'localhost', redis.host
40
+ assert_equal 6379, redis.port
41
+ assert_equal '300s', redis.grace_period
42
+ assert_equal '300s', redis.flush_interval
43
+ assert_equal 'deploymentid:last_action', redis.last_update_prefix
44
+ assert_equal 'deploymentid:minio-metrics', redis.metrics_prefix
45
+ end
9
46
  end
10
47
 
11
- test 'failure' do
12
- flunk
48
+ sub_test_case 'route#emit' do
49
+ test 'emit test' do
50
+ driver = create_driver(@default_conf)
51
+
52
+ res_codes = []
53
+ lines = 0
54
+
55
+ driver.run do
56
+ File.readlines('./test/logs.txt').each do |line|
57
+ res = post('/test', line.chomp)
58
+ res_codes << res.code
59
+ lines += 1
60
+ end
61
+ end
62
+
63
+ assert_equal lines, res_codes.size
64
+ assert_equal '200', res_codes[0]
65
+ assert_equal 1, res_codes.uniq.size
66
+ end
13
67
  end
14
68
 
15
69
  private
16
70
 
17
- def create_driver(conf)
18
- Fluent::Test::Driver::Input.new(Fluent::Plugin::CwmHttpInput).configure(conf)
71
+ def post(path, body)
72
+ http = Net::HTTP.new('127.0.0.1', 8080)
73
+ header = { 'Content-Type' => 'application/json' }
74
+ req = Net::HTTP::Post.new(path, header)
75
+ req.body = body
76
+ http.request(req)
19
77
  end
20
78
  end
metadata CHANGED
@@ -1,43 +1,75 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fluent-plugin-http-cwm
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Azeem Sajid
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-12-28 00:00:00.000000000 Z
11
+ date: 2021-04-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
19
  version: '1.14'
20
+ - - "<"
21
+ - !ruby/object:Gem::Version
22
+ version: '3'
20
23
  type: :development
21
24
  prerelease: false
22
25
  version_requirements: !ruby/object:Gem::Requirement
23
26
  requirements:
24
- - - "~>"
27
+ - - ">="
25
28
  - !ruby/object:Gem::Version
26
29
  version: '1.14'
30
+ - - "<"
31
+ - !ruby/object:Gem::Version
32
+ version: '3'
27
33
  - !ruby/object:Gem::Dependency
28
34
  name: rake
29
35
  requirement: !ruby/object:Gem::Requirement
30
36
  requirements:
31
37
  - - "~>"
32
38
  - !ruby/object:Gem::Version
33
- version: '12.0'
39
+ version: '12.3'
40
+ - - ">="
41
+ - !ruby/object:Gem::Version
42
+ version: 12.3.3
34
43
  type: :development
35
44
  prerelease: false
36
45
  version_requirements: !ruby/object:Gem::Requirement
37
46
  requirements:
38
47
  - - "~>"
39
48
  - !ruby/object:Gem::Version
40
- version: '12.0'
49
+ version: '12.3'
50
+ - - ">="
51
+ - !ruby/object:Gem::Version
52
+ version: 12.3.3
53
+ - !ruby/object:Gem::Dependency
54
+ name: simplecov
55
+ requirement: !ruby/object:Gem::Requirement
56
+ requirements:
57
+ - - "~>"
58
+ - !ruby/object:Gem::Version
59
+ version: '0.12'
60
+ - - "<="
61
+ - !ruby/object:Gem::Version
62
+ version: 0.12.2
63
+ type: :development
64
+ prerelease: false
65
+ version_requirements: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - "~>"
68
+ - !ruby/object:Gem::Version
69
+ version: '0.12'
70
+ - - "<="
71
+ - !ruby/object:Gem::Version
72
+ version: 0.12.2
41
73
  - !ruby/object:Gem::Dependency
42
74
  name: test-unit
43
75
  requirement: !ruby/object:Gem::Requirement
@@ -76,22 +108,22 @@ dependencies:
76
108
  name: json
77
109
  requirement: !ruby/object:Gem::Requirement
78
110
  requirements:
79
- - - "~>"
80
- - !ruby/object:Gem::Version
81
- version: '1.8'
82
111
  - - ">="
83
112
  - !ruby/object:Gem::Version
84
- version: 1.8.3
113
+ version: 2.3.0
114
+ - - "~>"
115
+ - !ruby/object:Gem::Version
116
+ version: '2.3'
85
117
  type: :runtime
86
118
  prerelease: false
87
119
  version_requirements: !ruby/object:Gem::Requirement
88
120
  requirements:
89
- - - "~>"
90
- - !ruby/object:Gem::Version
91
- version: '1.8'
92
121
  - - ">="
93
122
  - !ruby/object:Gem::Version
94
- version: 1.8.3
123
+ version: 2.3.0
124
+ - - "~>"
125
+ - !ruby/object:Gem::Version
126
+ version: '2.3'
95
127
  - !ruby/object:Gem::Dependency
96
128
  name: redis
97
129
  requirement: !ruby/object:Gem::Requirement
@@ -120,14 +152,19 @@ executables: []
120
152
  extensions: []
121
153
  extra_rdoc_files: []
122
154
  files:
155
+ - ".github/workflows/ci.yml"
156
+ - ".github/workflows/publish.yml"
123
157
  - ".gitignore"
158
+ - ".rubocop.yml"
124
159
  - Gemfile
160
+ - Gemfile.lock
125
161
  - LICENSE
126
162
  - README.md
127
163
  - Rakefile
128
164
  - fluent-plugin-http-cwm.gemspec
129
165
  - lib/fluent/plugin/in_http_cwm.rb
130
166
  - test/helper.rb
167
+ - test/logs.txt
131
168
  - test/plugin/test_in_http_cwm.rb
132
169
  homepage: https://github.com/iamAzeem/fluent-plugin-http-cwm
133
170
  licenses:
@@ -148,11 +185,11 @@ required_rubygems_version: !ruby/object:Gem::Requirement
148
185
  - !ruby/object:Gem::Version
149
186
  version: '0'
150
187
  requirements: []
151
- rubyforge_project:
152
- rubygems_version: 2.7.6
188
+ rubygems_version: 3.0.3.1
153
189
  signing_key:
154
190
  specification_version: 4
155
191
  summary: fluentd HTTP Input Plugin for CloudWebManage Logging Component
156
192
  test_files:
157
193
  - test/helper.rb
194
+ - test/logs.txt
158
195
  - test/plugin/test_in_http_cwm.rb