fluent-plugin-http-cwm 0.1.0 → 0.2.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
  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