fluent-plugin-kubernetes_metadata_filter 2.13.0 → 3.8.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.
Files changed (59) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +13 -55
  3. data/Rakefile +3 -4
  4. data/doc/benchmark/5m-1-2500lps-256b-baseline-01/cpu.png +0 -0
  5. data/doc/benchmark/5m-1-2500lps-256b-baseline-01/latency.png +0 -0
  6. data/doc/benchmark/5m-1-2500lps-256b-baseline-01/loss.png +0 -0
  7. data/doc/benchmark/5m-1-2500lps-256b-baseline-01/mem.png +0 -0
  8. data/doc/benchmark/5m-1-2500lps-256b-baseline-01/readme.md +88 -0
  9. data/doc/benchmark/5m-1-2500lps-256b-baseline-01/results.html +127 -0
  10. data/doc/benchmark/5m-1-2500lps-256b-kube-01-01/cpu.png +0 -0
  11. data/doc/benchmark/5m-1-2500lps-256b-kube-01-01/latency.png +0 -0
  12. data/doc/benchmark/5m-1-2500lps-256b-kube-01-01/loss.png +0 -0
  13. data/doc/benchmark/5m-1-2500lps-256b-kube-01-01/mem.png +0 -0
  14. data/doc/benchmark/5m-1-2500lps-256b-kube-01-01/readme.md +97 -0
  15. data/doc/benchmark/5m-1-2500lps-256b-kube-01-01/results.html +136 -0
  16. data/doc/benchmark/5m-1-2500lps-256b-kube-01-marshal-02/cpu.png +0 -0
  17. data/doc/benchmark/5m-1-2500lps-256b-kube-01-marshal-02/latency.png +0 -0
  18. data/doc/benchmark/5m-1-2500lps-256b-kube-01-marshal-02/loss.png +0 -0
  19. data/doc/benchmark/5m-1-2500lps-256b-kube-01-marshal-02/mem.png +0 -0
  20. data/doc/benchmark/5m-1-2500lps-256b-kube-01-marshal-02/readme.md +97 -0
  21. data/doc/benchmark/5m-1-2500lps-256b-kube-01-marshal-02/results.html +136 -0
  22. data/lib/fluent/plugin/filter_kubernetes_metadata.rb +308 -330
  23. data/lib/fluent/plugin/kubernetes_metadata_cache_strategy.rb +15 -11
  24. data/lib/fluent/plugin/kubernetes_metadata_common.rb +45 -49
  25. data/lib/fluent/plugin/kubernetes_metadata_stats.rb +18 -4
  26. data/lib/fluent/plugin/kubernetes_metadata_test_api_adapter.rb +39 -36
  27. data/lib/fluent/plugin/kubernetes_metadata_watch_namespaces.rb +15 -12
  28. data/lib/fluent/plugin/kubernetes_metadata_watch_pods.rb +19 -18
  29. metadata +29 -182
  30. data/.circleci/config.yml +0 -53
  31. data/.gitignore +0 -19
  32. data/.rubocop.yml +0 -57
  33. data/Gemfile +0 -9
  34. data/Gemfile.lock +0 -158
  35. data/fluent-plugin-kubernetes_metadata_filter.gemspec +0 -34
  36. data/lib/fluent/plugin/kubernetes_metadata_util.rb +0 -53
  37. data/test/cassettes/invalid_api_server_config.yml +0 -53
  38. data/test/cassettes/kubernetes_docker_metadata_annotations.yml +0 -205
  39. data/test/cassettes/kubernetes_docker_metadata_dotted_slashed_labels.yml +0 -197
  40. data/test/cassettes/kubernetes_get_api_v1.yml +0 -193
  41. data/test/cassettes/kubernetes_get_api_v1_using_token.yml +0 -195
  42. data/test/cassettes/kubernetes_get_namespace_default.yml +0 -69
  43. data/test/cassettes/kubernetes_get_namespace_default_using_token.yml +0 -71
  44. data/test/cassettes/kubernetes_get_pod.yml +0 -146
  45. data/test/cassettes/kubernetes_get_pod_container_init.yml +0 -145
  46. data/test/cassettes/kubernetes_get_pod_using_token.yml +0 -148
  47. data/test/cassettes/metadata_from_tag_and_journald_fields.yml +0 -153
  48. data/test/cassettes/metadata_from_tag_journald_and_kubernetes_fields.yml +0 -285
  49. data/test/cassettes/valid_kubernetes_api_server.yml +0 -55
  50. data/test/cassettes/valid_kubernetes_api_server_using_token.yml +0 -57
  51. data/test/helper.rb +0 -82
  52. data/test/plugin/test.token +0 -1
  53. data/test/plugin/test_cache_stats.rb +0 -33
  54. data/test/plugin/test_cache_strategy.rb +0 -194
  55. data/test/plugin/test_filter_kubernetes_metadata.rb +0 -1093
  56. data/test/plugin/test_utils.rb +0 -56
  57. data/test/plugin/test_watch_namespaces.rb +0 -245
  58. data/test/plugin/test_watch_pods.rb +0 -344
  59. data/test/plugin/watch_test.rb +0 -76
metadata CHANGED
@@ -1,15 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fluent-plugin-kubernetes_metadata_filter
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.13.0
4
+ version: 3.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - OpenShift Cluster Logging
8
8
  - Jimmi Dyson
9
- autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2022-07-06 00:00:00.000000000 Z
11
+ date: 1980-01-02 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: fluentd
@@ -20,7 +19,7 @@ dependencies:
20
19
  version: 0.14.0
21
20
  - - "<"
22
21
  - !ruby/object:Gem::Version
23
- version: '1.16'
22
+ version: '1.20'
24
23
  type: :runtime
25
24
  prerelease: false
26
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -30,7 +29,7 @@ dependencies:
30
29
  version: 0.14.0
31
30
  - - "<"
32
31
  - !ruby/object:Gem::Version
33
- version: '1.16'
32
+ version: '1.20'
34
33
  - !ruby/object:Gem::Dependency
35
34
  name: kubeclient
36
35
  requirement: !ruby/object:Gem::Requirement
@@ -52,7 +51,7 @@ dependencies:
52
51
  - !ruby/object:Gem::Version
53
52
  version: 5.0.0
54
53
  - !ruby/object:Gem::Dependency
55
- name: lru_redux
54
+ name: sin_lru_redux
56
55
  requirement: !ruby/object:Gem::Requirement
57
56
  requirements:
58
57
  - - ">="
@@ -65,146 +64,6 @@ dependencies:
65
64
  - - ">="
66
65
  - !ruby/object:Gem::Version
67
66
  version: '0'
68
- - !ruby/object:Gem::Dependency
69
- name: bump
70
- requirement: !ruby/object:Gem::Requirement
71
- requirements:
72
- - - ">="
73
- - !ruby/object:Gem::Version
74
- version: '0'
75
- type: :development
76
- prerelease: false
77
- version_requirements: !ruby/object:Gem::Requirement
78
- requirements:
79
- - - ">="
80
- - !ruby/object:Gem::Version
81
- version: '0'
82
- - !ruby/object:Gem::Dependency
83
- name: bundler
84
- requirement: !ruby/object:Gem::Requirement
85
- requirements:
86
- - - "~>"
87
- - !ruby/object:Gem::Version
88
- version: '2.0'
89
- type: :development
90
- prerelease: false
91
- version_requirements: !ruby/object:Gem::Requirement
92
- requirements:
93
- - - "~>"
94
- - !ruby/object:Gem::Version
95
- version: '2.0'
96
- - !ruby/object:Gem::Dependency
97
- name: copyright-header
98
- requirement: !ruby/object:Gem::Requirement
99
- requirements:
100
- - - ">="
101
- - !ruby/object:Gem::Version
102
- version: '0'
103
- type: :development
104
- prerelease: false
105
- version_requirements: !ruby/object:Gem::Requirement
106
- requirements:
107
- - - ">="
108
- - !ruby/object:Gem::Version
109
- version: '0'
110
- - !ruby/object:Gem::Dependency
111
- name: minitest
112
- requirement: !ruby/object:Gem::Requirement
113
- requirements:
114
- - - "~>"
115
- - !ruby/object:Gem::Version
116
- version: '4.0'
117
- type: :development
118
- prerelease: false
119
- version_requirements: !ruby/object:Gem::Requirement
120
- requirements:
121
- - - "~>"
122
- - !ruby/object:Gem::Version
123
- version: '4.0'
124
- - !ruby/object:Gem::Dependency
125
- name: rake
126
- requirement: !ruby/object:Gem::Requirement
127
- requirements:
128
- - - ">="
129
- - !ruby/object:Gem::Version
130
- version: '0'
131
- type: :development
132
- prerelease: false
133
- version_requirements: !ruby/object:Gem::Requirement
134
- requirements:
135
- - - ">="
136
- - !ruby/object:Gem::Version
137
- version: '0'
138
- - !ruby/object:Gem::Dependency
139
- name: test-unit
140
- requirement: !ruby/object:Gem::Requirement
141
- requirements:
142
- - - "~>"
143
- - !ruby/object:Gem::Version
144
- version: 3.0.2
145
- type: :development
146
- prerelease: false
147
- version_requirements: !ruby/object:Gem::Requirement
148
- requirements:
149
- - - "~>"
150
- - !ruby/object:Gem::Version
151
- version: 3.0.2
152
- - !ruby/object:Gem::Dependency
153
- name: test-unit-rr
154
- requirement: !ruby/object:Gem::Requirement
155
- requirements:
156
- - - "~>"
157
- - !ruby/object:Gem::Version
158
- version: 1.0.3
159
- type: :development
160
- prerelease: false
161
- version_requirements: !ruby/object:Gem::Requirement
162
- requirements:
163
- - - "~>"
164
- - !ruby/object:Gem::Version
165
- version: 1.0.3
166
- - !ruby/object:Gem::Dependency
167
- name: vcr
168
- requirement: !ruby/object:Gem::Requirement
169
- requirements:
170
- - - ">="
171
- - !ruby/object:Gem::Version
172
- version: '0'
173
- type: :development
174
- prerelease: false
175
- version_requirements: !ruby/object:Gem::Requirement
176
- requirements:
177
- - - ">="
178
- - !ruby/object:Gem::Version
179
- version: '0'
180
- - !ruby/object:Gem::Dependency
181
- name: webmock
182
- requirement: !ruby/object:Gem::Requirement
183
- requirements:
184
- - - ">="
185
- - !ruby/object:Gem::Version
186
- version: '0'
187
- type: :development
188
- prerelease: false
189
- version_requirements: !ruby/object:Gem::Requirement
190
- requirements:
191
- - - ">="
192
- - !ruby/object:Gem::Version
193
- version: '0'
194
- - !ruby/object:Gem::Dependency
195
- name: yajl-ruby
196
- requirement: !ruby/object:Gem::Requirement
197
- requirements:
198
- - - ">="
199
- - !ruby/object:Gem::Version
200
- version: '0'
201
- type: :development
202
- prerelease: false
203
- version_requirements: !ruby/object:Gem::Requirement
204
- requirements:
205
- - - ">="
206
- - !ruby/object:Gem::Version
207
- version: '0'
208
67
  description: Filter plugin to add Kubernetes metadata
209
68
  email:
210
69
  - team-logging@redhat.com
@@ -213,52 +72,41 @@ executables: []
213
72
  extensions: []
214
73
  extra_rdoc_files: []
215
74
  files:
216
- - ".circleci/config.yml"
217
- - ".gitignore"
218
- - ".rubocop.yml"
219
- - Gemfile
220
- - Gemfile.lock
221
75
  - LICENSE.txt
222
76
  - README.md
223
77
  - Rakefile
224
- - fluent-plugin-kubernetes_metadata_filter.gemspec
78
+ - doc/benchmark/5m-1-2500lps-256b-baseline-01/cpu.png
79
+ - doc/benchmark/5m-1-2500lps-256b-baseline-01/latency.png
80
+ - doc/benchmark/5m-1-2500lps-256b-baseline-01/loss.png
81
+ - doc/benchmark/5m-1-2500lps-256b-baseline-01/mem.png
82
+ - doc/benchmark/5m-1-2500lps-256b-baseline-01/readme.md
83
+ - doc/benchmark/5m-1-2500lps-256b-baseline-01/results.html
84
+ - doc/benchmark/5m-1-2500lps-256b-kube-01-01/cpu.png
85
+ - doc/benchmark/5m-1-2500lps-256b-kube-01-01/latency.png
86
+ - doc/benchmark/5m-1-2500lps-256b-kube-01-01/loss.png
87
+ - doc/benchmark/5m-1-2500lps-256b-kube-01-01/mem.png
88
+ - doc/benchmark/5m-1-2500lps-256b-kube-01-01/readme.md
89
+ - doc/benchmark/5m-1-2500lps-256b-kube-01-01/results.html
90
+ - doc/benchmark/5m-1-2500lps-256b-kube-01-marshal-02/cpu.png
91
+ - doc/benchmark/5m-1-2500lps-256b-kube-01-marshal-02/latency.png
92
+ - doc/benchmark/5m-1-2500lps-256b-kube-01-marshal-02/loss.png
93
+ - doc/benchmark/5m-1-2500lps-256b-kube-01-marshal-02/mem.png
94
+ - doc/benchmark/5m-1-2500lps-256b-kube-01-marshal-02/readme.md
95
+ - doc/benchmark/5m-1-2500lps-256b-kube-01-marshal-02/results.html
225
96
  - lib/fluent/plugin/filter_kubernetes_metadata.rb
226
97
  - lib/fluent/plugin/kubernetes_metadata_cache_strategy.rb
227
98
  - lib/fluent/plugin/kubernetes_metadata_common.rb
228
99
  - lib/fluent/plugin/kubernetes_metadata_stats.rb
229
100
  - lib/fluent/plugin/kubernetes_metadata_test_api_adapter.rb
230
- - lib/fluent/plugin/kubernetes_metadata_util.rb
231
101
  - lib/fluent/plugin/kubernetes_metadata_watch_namespaces.rb
232
102
  - lib/fluent/plugin/kubernetes_metadata_watch_pods.rb
233
103
  - release_notes.md
234
- - test/cassettes/invalid_api_server_config.yml
235
- - test/cassettes/kubernetes_docker_metadata_annotations.yml
236
- - test/cassettes/kubernetes_docker_metadata_dotted_slashed_labels.yml
237
- - test/cassettes/kubernetes_get_api_v1.yml
238
- - test/cassettes/kubernetes_get_api_v1_using_token.yml
239
- - test/cassettes/kubernetes_get_namespace_default.yml
240
- - test/cassettes/kubernetes_get_namespace_default_using_token.yml
241
- - test/cassettes/kubernetes_get_pod.yml
242
- - test/cassettes/kubernetes_get_pod_container_init.yml
243
- - test/cassettes/kubernetes_get_pod_using_token.yml
244
- - test/cassettes/metadata_from_tag_and_journald_fields.yml
245
- - test/cassettes/metadata_from_tag_journald_and_kubernetes_fields.yml
246
- - test/cassettes/valid_kubernetes_api_server.yml
247
- - test/cassettes/valid_kubernetes_api_server_using_token.yml
248
- - test/helper.rb
249
- - test/plugin/test.token
250
- - test/plugin/test_cache_stats.rb
251
- - test/plugin/test_cache_strategy.rb
252
- - test/plugin/test_filter_kubernetes_metadata.rb
253
- - test/plugin/test_utils.rb
254
- - test/plugin/test_watch_namespaces.rb
255
- - test/plugin/test_watch_pods.rb
256
- - test/plugin/watch_test.rb
257
- homepage: https://github.com/fabric8io/fluent-plugin-kubernetes_metadata_filter
104
+ homepage: https://github.com/fluent-plugins-nursery/fluent-plugin-kubernetes_metadata_filter
258
105
  licenses:
259
106
  - Apache-2.0
260
- metadata: {}
261
- post_install_message:
107
+ metadata:
108
+ bug_tracker_uri: https://github.com/fluent-plugins-nursery/fluent-plugin-kubernetes_metadata_filter/issues
109
+ source_code_uri: https://github.com/fluent-plugins-nursery/fluent-plugin-kubernetes_metadata_filter
262
110
  rdoc_options: []
263
111
  require_paths:
264
112
  - lib
@@ -266,15 +114,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
266
114
  requirements:
267
115
  - - ">="
268
116
  - !ruby/object:Gem::Version
269
- version: 2.6.0
117
+ version: 2.7.0
270
118
  required_rubygems_version: !ruby/object:Gem::Requirement
271
119
  requirements:
272
120
  - - ">="
273
121
  - !ruby/object:Gem::Version
274
122
  version: '0'
275
123
  requirements: []
276
- rubygems_version: 3.1.4
277
- signing_key:
124
+ rubygems_version: 3.6.9
278
125
  specification_version: 4
279
126
  summary: Fluentd filter plugin to add Kubernetes metadata
280
127
  test_files: []
data/.circleci/config.yml DELETED
@@ -1,53 +0,0 @@
1
- version: 2.1
2
-
3
- install: &install
4
- name: Install bundle
5
- command: |
6
- gem install bundler
7
- bundle config set --local path vendor/bundle
8
- bundle install
9
-
10
- missingdeps: &missingdeps
11
- name: Install missing dependecies
12
- command: |
13
- cat /etc/os-release
14
- printf "deb http://deb.debian.org/debian buster main\ndeb http://security.debian.org buster/updates main\ndeb-src http://security.debian.org buster/updates main" > /tmp/sources.list
15
- sudo cp /tmp/sources.list /etc/apt/sources.list
16
- sudo apt-get --allow-releaseinfo-change update
17
- sudo apt-get install cmake libicu-dev libssl-dev
18
-
19
- test: &test
20
- name: Test bundle
21
- command: bundle exec rake test --trace
22
-
23
- executors:
24
- ruby-2-6:
25
- docker:
26
- - image: circleci/ruby:2.6.3
27
- ruby-2-7:
28
- docker:
29
- - image: circleci/ruby:2.7.1
30
- jobs:
31
- "ruby-test":
32
- parameters:
33
- ruby-version:
34
- type: executor
35
- executor: << parameters.ruby-version >>
36
- working_directory: ~/fluent-plugin-kubernetes_metadata_filter
37
- steps:
38
- - run: *missingdeps
39
- - checkout
40
- - run: *install
41
- - run: *test
42
- - store_test_results:
43
- path: coverage
44
- - store_artifacts:
45
- path: coverage
46
-
47
- workflows:
48
- "test_multiple_ruby_versions":
49
- jobs:
50
- - ruby-test:
51
- ruby-version: ruby-2-6
52
- - ruby-test:
53
- ruby-version: ruby-2-7
data/.gitignore DELETED
@@ -1,19 +0,0 @@
1
- *.gem
2
- *.rbc
3
- .bundle
4
- .config
5
- .yardoc
6
- vendor/
7
- InstalledFiles
8
- _yardoc
9
- coverage
10
- doc/
11
- lib/bundler/man
12
- pkg
13
- rdoc
14
- spec/reports
15
- test/tmp
16
- test/version_tmp
17
- tmp
18
- .idea/
19
- *.iml
data/.rubocop.yml DELETED
@@ -1,57 +0,0 @@
1
- AllCops:
2
- TargetRubyVersion: 2.5 # keep in sync with .circleci/config.yml and gemspec
3
- NewCops: enable
4
-
5
- Style/EmptyMethod:
6
- Enabled: false
7
-
8
- Metrics:
9
- Enabled: false
10
-
11
- # not safe ... needs require 'English'
12
- Style/SpecialGlobalVars:
13
- Enabled: false
14
-
15
- Layout/LineLength:
16
- Max: 205 # TODO: lower
17
-
18
- Style/Documentation:
19
- Enabled: false
20
-
21
- Naming/AccessorMethodName:
22
- Enabled: false
23
-
24
- Naming/MethodParameterName:
25
- Enabled: false
26
-
27
- Style/IfInsideElse:
28
- Enabled: false
29
-
30
- Style/GuardClause:
31
- Enabled: false
32
-
33
- Lint/NestedMethodDefinition:
34
- Enabled: false
35
-
36
- # TODO: fix
37
- Style/StringConcatenation:
38
- Enabled: false
39
-
40
- Style/NumericPredicate:
41
- EnforcedStyle: comparison
42
-
43
- Style/IfUnlessModifier:
44
- Enabled: false
45
-
46
- Style/ClassAndModuleChildren:
47
- Enabled: false
48
-
49
- # TODO: enable ... somehow breaks tests
50
- Style/HashEachMethods:
51
- Enabled: false
52
-
53
- Style/WordArray:
54
- EnforcedStyle: brackets
55
-
56
- Style/SymbolArray:
57
- EnforcedStyle: brackets
data/Gemfile DELETED
@@ -1,9 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- source 'https://rubygems.org'
4
-
5
- gem 'codeclimate-test-reporter', '<1.0.0', group: :test, require: nil
6
- gem 'rubocop'
7
-
8
- # Specify your gem's dependencies in fluent-plugin-add.gemspec
9
- gemspec
data/Gemfile.lock DELETED
@@ -1,158 +0,0 @@
1
- PATH
2
- remote: .
3
- specs:
4
- fluent-plugin-kubernetes_metadata_filter (2.13.0)
5
- fluentd (>= 0.14.0, < 1.16)
6
- kubeclient (>= 4.0.0, < 5.0.0)
7
- lru_redux
8
-
9
- GEM
10
- remote: https://rubygems.org/
11
- specs:
12
- addressable (2.8.0)
13
- public_suffix (>= 2.0.2, < 5.0)
14
- ast (2.4.2)
15
- bump (0.10.0)
16
- charlock_holmes (0.7.7)
17
- codeclimate-test-reporter (0.6.0)
18
- simplecov (>= 0.7.1, < 1.0.0)
19
- concurrent-ruby (1.1.10)
20
- cool.io (1.7.1)
21
- copyright-header (1.0.22)
22
- github-linguist
23
- crack (0.4.5)
24
- rexml
25
- docile (1.4.0)
26
- domain_name (0.5.20190701)
27
- unf (>= 0.0.5, < 1.0.0)
28
- escape_utils (1.2.2)
29
- ffi (1.15.5)
30
- ffi-compiler (1.0.1)
31
- ffi (>= 1.0.0)
32
- rake
33
- fluentd (1.15.0)
34
- bundler
35
- cool.io (>= 1.4.5, < 2.0.0)
36
- http_parser.rb (>= 0.5.1, < 0.9.0)
37
- msgpack (>= 1.3.1, < 2.0.0)
38
- serverengine (>= 2.3.0, < 3.0.0)
39
- sigdump (~> 0.2.2)
40
- strptime (>= 0.2.4, < 1.0.0)
41
- tzinfo (>= 1.0, < 3.0)
42
- tzinfo-data (~> 1.0)
43
- webrick (>= 1.4.2, < 1.8.0)
44
- yajl-ruby (~> 1.0)
45
- github-linguist (7.21.0)
46
- charlock_holmes (~> 0.7.7)
47
- escape_utils (~> 1.2.0)
48
- mini_mime (~> 1.0)
49
- rugged (~> 1.0)
50
- hashdiff (1.0.1)
51
- http (4.4.1)
52
- addressable (~> 2.3)
53
- http-cookie (~> 1.0)
54
- http-form_data (~> 2.2)
55
- http-parser (~> 1.2.0)
56
- http-accept (1.7.0)
57
- http-cookie (1.0.5)
58
- domain_name (~> 0.5)
59
- http-form_data (2.3.0)
60
- http-parser (1.2.3)
61
- ffi-compiler (>= 1.0, < 2.0)
62
- http_parser.rb (0.8.0)
63
- jsonpath (1.1.2)
64
- multi_json
65
- kubeclient (4.9.3)
66
- http (>= 3.0, < 5.0)
67
- jsonpath (~> 1.0)
68
- recursive-open-struct (~> 1.1, >= 1.1.1)
69
- rest-client (~> 2.0)
70
- lru_redux (1.1.0)
71
- mime-types (3.4.1)
72
- mime-types-data (~> 3.2015)
73
- mime-types-data (3.2022.0105)
74
- mini_mime (1.1.2)
75
- minitest (4.7.5)
76
- msgpack (1.5.3)
77
- multi_json (1.15.0)
78
- netrc (0.11.0)
79
- parallel (1.22.1)
80
- parser (3.1.2.0)
81
- ast (~> 2.4.1)
82
- power_assert (2.0.1)
83
- public_suffix (4.0.7)
84
- rainbow (3.1.1)
85
- rake (13.0.6)
86
- recursive-open-struct (1.1.3)
87
- regexp_parser (2.5.0)
88
- rest-client (2.1.0)
89
- http-accept (>= 1.7.0, < 2.0)
90
- http-cookie (>= 1.0.2, < 2.0)
91
- mime-types (>= 1.16, < 4.0)
92
- netrc (~> 0.8)
93
- rexml (3.2.5)
94
- rr (3.0.9)
95
- rubocop (1.28.2)
96
- parallel (~> 1.10)
97
- parser (>= 3.1.0.0)
98
- rainbow (>= 2.2.2, < 4.0)
99
- regexp_parser (>= 1.8, < 3.0)
100
- rexml
101
- rubocop-ast (>= 1.17.0, < 2.0)
102
- ruby-progressbar (~> 1.7)
103
- unicode-display_width (>= 1.4.0, < 3.0)
104
- rubocop-ast (1.17.0)
105
- parser (>= 3.1.1.0)
106
- ruby-progressbar (1.11.0)
107
- rugged (1.4.3)
108
- serverengine (2.3.0)
109
- sigdump (~> 0.2.2)
110
- sigdump (0.2.4)
111
- simplecov (0.21.2)
112
- docile (~> 1.1)
113
- simplecov-html (~> 0.11)
114
- simplecov_json_formatter (~> 0.1)
115
- simplecov-html (0.12.3)
116
- simplecov_json_formatter (0.1.4)
117
- strptime (0.2.5)
118
- test-unit (3.0.9)
119
- power_assert
120
- test-unit-rr (1.0.5)
121
- rr (>= 1.1.1)
122
- test-unit (>= 2.5.2)
123
- tzinfo (2.0.4)
124
- concurrent-ruby (~> 1.0)
125
- tzinfo-data (1.2022.1)
126
- tzinfo (>= 1.0.0)
127
- unf (0.1.4)
128
- unf_ext
129
- unf_ext (0.0.8.2)
130
- unicode-display_width (2.2.0)
131
- vcr (6.0.0)
132
- webmock (3.14.0)
133
- addressable (>= 2.8.0)
134
- crack (>= 0.3.2)
135
- hashdiff (>= 0.4.0, < 2.0.0)
136
- webrick (1.7.0)
137
- yajl-ruby (1.4.3)
138
-
139
- PLATFORMS
140
- ruby
141
-
142
- DEPENDENCIES
143
- bump
144
- bundler (~> 2.0)
145
- codeclimate-test-reporter (< 1.0.0)
146
- copyright-header
147
- fluent-plugin-kubernetes_metadata_filter!
148
- minitest (~> 4.0)
149
- rake
150
- rubocop
151
- test-unit (~> 3.0.2)
152
- test-unit-rr (~> 1.0.3)
153
- vcr
154
- webmock
155
- yajl-ruby
156
-
157
- BUNDLED WITH
158
- 2.3.16
@@ -1,34 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- lib = File.expand_path('lib', __dir__)
4
- $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
5
-
6
- Gem::Specification.new do |gem|
7
- gem.name = 'fluent-plugin-kubernetes_metadata_filter'
8
- gem.version = '2.13.0'
9
- gem.authors = ['OpenShift Cluster Logging','Jimmi Dyson']
10
- gem.email = ['team-logging@redhat.com','jimmidyson@gmail.com']
11
- gem.description = 'Filter plugin to add Kubernetes metadata'
12
- gem.summary = 'Fluentd filter plugin to add Kubernetes metadata'
13
- gem.homepage = 'https://github.com/fabric8io/fluent-plugin-kubernetes_metadata_filter'
14
- gem.license = 'Apache-2.0'
15
-
16
- gem.files = `git ls-files`.split($/)
17
-
18
- gem.required_ruby_version = '>= 2.6.0'
19
-
20
- gem.add_runtime_dependency 'fluentd', ['>= 0.14.0', '< 1.16']
21
- gem.add_runtime_dependency 'kubeclient', ['>= 4.0.0', '< 5.0.0']
22
- gem.add_runtime_dependency 'lru_redux'
23
-
24
- gem.add_development_dependency 'bump'
25
- gem.add_development_dependency 'bundler', '~> 2.0'
26
- gem.add_development_dependency 'copyright-header'
27
- gem.add_development_dependency 'minitest', '~> 4.0'
28
- gem.add_development_dependency 'rake'
29
- gem.add_development_dependency 'test-unit', '~> 3.0.2'
30
- gem.add_development_dependency 'test-unit-rr', '~> 1.0.3'
31
- gem.add_development_dependency 'vcr'
32
- gem.add_development_dependency 'webmock'
33
- gem.add_development_dependency 'yajl-ruby'
34
- end
@@ -1,53 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- #
4
- # Fluentd Kubernetes Metadata Filter Plugin - Enrich Fluentd events with
5
- # Kubernetes metadata
6
- #
7
- # Copyright 2021 Red Hat, Inc.
8
- #
9
- # Licensed under the Apache License, Version 2.0 (the "License");
10
- # you may not use this file except in compliance with the License.
11
- # You may obtain a copy of the License at
12
- #
13
- # http://www.apache.org/licenses/LICENSE-2.0
14
- #
15
- # Unless required by applicable law or agreed to in writing, software
16
- # distributed under the License is distributed on an "AS IS" BASIS,
17
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18
- # See the License for the specific language governing permissions and
19
- # limitations under the License.
20
- #
21
- module KubernetesMetadata
22
- module Util
23
- def create_time_from_record(record, internal_time)
24
- time_key = @time_fields.detect { |ii| record.key?(ii) }
25
- time = record[time_key]
26
- if time.nil? || time.is_a?(String) && time.chop.empty?
27
- # `internal_time` is a Fluent::EventTime, it can't compare with Time.
28
- return Time.at(internal_time.to_f)
29
- end
30
-
31
- if ['_SOURCE_REALTIME_TIMESTAMP', '__REALTIME_TIMESTAMP'].include?(time_key)
32
- timei = time.to_i
33
- return Time.at(timei / 1_000_000, timei % 1_000_000)
34
- end
35
- return Time.at(time) if time.is_a?(Numeric)
36
-
37
- Time.parse(time)
38
- end
39
- end
40
- end
41
-
42
- #https://stackoverflow.com/questions/5622435/how-do-i-convert-a-ruby-class-name-to-a-underscore-delimited-symbol
43
- class String
44
- def underscore
45
- word = self.dup
46
- word.gsub!(/::/, '_')
47
- word.gsub!(/([A-Z]+)([A-Z][a-z])/,'\1_\2')
48
- word.gsub!(/([a-z\d])([A-Z])/,'\1_\2')
49
- word.tr!("-", "_")
50
- word.downcase!
51
- word
52
- end
53
- end